Everything seems to be working perfectly.But no sound is audible.Corresponding configuration files & CLI outputs are attached. In another machine with same configuration a new error coming SIOD ERROR in festival server. Attached file name is SIOD error. I'm attaching my configuration files with CLI output.
Festival server output
root@IKVPLIB0056:/home/ingreens# festival --server
server Mon Mar 9 16:48:57 2015 : Festival server started on port 1314
client(1) Mon Mar 9 16:49:48 2015 : accepted from localhost
client(1) Mon Mar 9 16:49:48 2015 : disconnected
SIP conf
[general]
transport=udp
[friends_internal](!)
type=friend
host=dynamic
context=from-internal
disallow=all
allow=ulaw
[demo-alice](friends_internal)
secret=1234 ; put a strong, unique password here instead
[demo-bob](friends_internal)
secret=123 ; put a strong, unique password here instead
[demo-sip](friends_internal)
secret=12345 ; put a strong, unique password here instead
SIOD Error
root@IKVPLIB0056:/home/ingreens# festival --server
server Mon Mar 9 16:48:57 2015 : Festival server started on port 1314
client(1) Mon Mar 9 16:49:48 2015 : accepted from localhost
SIOD ERROR:unbound variable : string
client(1) Mon Mar 9 16:49:48 2015 : disconnected
Festival.scm
(Parameter.set 'Audio_Required_Format 'aiff)
(Parameter.set 'Audio_Method 'Audio_Command)
(Parameter.set 'Audio_Command "paplay $FILE --client-name=Festival --stream-name=Speech")
;;Server access list(hosts)
;(set! server_access_lists '("[^.]+" "127.0.0.1" "IKVPLIB0056.192.168.0.141" "192.168.0.141"))
;; Enable access to localhost (needed by debian users)
;(set! server_access_list '("IKVPLIB0056\\.192.168.0.141" "IKVPLIB0056"))
(set! server_access_list '("localhost\\.localdomain" "localhost"))
;; set italian voice (comment the following 2 lines to use british_american)
;(language_italian)
;(set! voice_default 'voice_pc_diphone)
;;; Command for Asterisk begin
(define (tts_textasterisk string mode)
"(tts_textasterisk STRING MODE)
Apply tts to STRING. This function is specifically designed for
use in server mode so a single function call may synthesize the string.
This function name may be added to the server safe functions."
(let ((wholeutt (utt.synth (eval (list 'Utterance 'Text string)))))
(utt.wave.resample wholeutt 8000)
(utt.wave.rescale wholeutt 5)
(utt.send.wave.client wholeutt)))
;;; Command for Asterisk end
Asterisk CLI output
== Using SIP RTP CoS mark 5
-- Executing [1234@from-internal:1] NoOp("SIP/demo-bob-00000001", "") in new stack
-- Executing [1234@from-internal:2] Festival("SIP/demo-bob-00000001", "Hello world") in new stack
== Parsing '/etc/asterisk/festival.conf': == Found
-- Executing [1234@from-internal:3] Hangup("SIP/demo-bob-00000001", "") in new stack
== Spawn extension (from-internal, 1234, 3) exited non-zero on 'SIP/demo-bob-00000001'
Festival.conf
[general]
host=localhost
port=1314
usercache=no
cachedir=/var/cache/asterisk/festival/
festivalcommand=(tts_textasterisk "%s" 'file)(quit)\n
extensions.conf
[from-internal]
exten=>6001,1,Dial(SIP/demo-alice,20)
exten=>6002,1,Dial(SIP/demo-bob,20)
exten=>6003,1,Dial(SIP/demo-sip,20)
exten =>1234,1,NoOp()
exten=>1234,2,Festival(Hello world)
exten =>1234,3,Hangup()
You need ANSWER line before do festival call. Just add
exten =>1234,1,Answer