[Asterisk-Users] App_festival crashing
Borut Senicar
Borut.Senicar at WebAfna.Com
Tue Sep 23 15:46:16 MST 2003
Hi all,
I'm unable to put app_festival to work. I successfully patched,
installed and tested festival (interactive logon and telnet to server
port) which seems to work without problems.
But when I test it in asterisk I got the following trace in console:
-- Executing Answer("SIP/bsenicar-850b", "") in new stack
-- Executing SayDigits("SIP/bsenicar-850b", "123") in new stack
-- Playing 'digits/1'
-- Playing 'digits/2'
-- Playing 'digits/3'
-- Executing Festival("SIP/bsenicar-850b", "Connect to Festival") in
new stack
== Parsing '/etc/asterisk/festival.conf': Found
WARNING[147466]: File app_festival.c, Line 304 (festival_exec): Text
passed to festival server : Connect to Festival
WARNING[147466]: File app_festival.c, Line 353 (festival_exec): line
length : 19
WARNING[147466]: File app_festival.c, Line 357 (festival_exec): Seek
position : 23
WARNING[147466]: File app_festival.c, Line 381 (festival_exec): Passing
text to festival...
WARNING[147466]: File app_festival.c, Line 390 (festival_exec): Writing
result to cache...
WARNING[147466]: File app_festival.c, Line 400 (festival_exec): Passing
data to channel...
== Spawn extension (home-trusted, 1000, 3) exited non-zero on
'SIP/bsenicar-850b'
In festival.conf I enabled all 5 default options and my extensions.conf
looks like this:
[home-trusted]
exten => 1000,1,answer
exten => 1000,2,SayDigits(123)
exten => 1000,3,Festival(Connect to Festival)
exten => 1000,4,Wait(5)
exten => 1000,5,Festival(send the argument)
exten => 1000,6,Hangup
Cache file is created but playback to channel doesn't work correctly.
I'm running Asterisk CVS-09/23/03-23:16:24
I also noticed that parsing of festival.conf in app_festival.c is done
incorrectly for usecache.
On line 281 of app_festival.c
usecache = ast_true(temp);
value of usecache config entry is tested with ast_true function, which
returns -1 if value is (yes, y, t or 1). For that reason cache is never
used.
Correct line should be:
usecache = ast_true(temp)==-1;
Thanks in advance.
Borut
More information about the asterisk-users
mailing list