Ed Brady
2004-Aug-29 14:39 UTC
[Asterisk-Users] System freezes when using Festival with usecache
I am using Festival to synthesize some menu Interaction with a caller and am having a problem. What I am working on is a remote callback where I can remotely call in to an extension, and enter a callback number (or use the CALLERID info) and a second outbound dialing number to connect to. Things work O.K. until I set usecache=yes in festival.conf. After doing this, things run well for the first two or three Festival Commands, then the call to locks up. Here is a copy of my festival.conf file that causes this behavior. The dialplan logic works OK otherwise (ultimately I will probably convert this to AGI). Also I have included a copy of what I am doing in my extensions.conf to possibly give some insight. Any help is appreciated. festival.conf [general] host=localhost port=1314 usecache=yes cachedir=/var/lib/asterisk/festivalcache/ festivalcommand=(tts_textasterisk "%s" 'file)(quit)\n from extensions.conf exten => 4998,1,Answer exten => 4998,2,SetVar(YourNumber=1${CALLERIDNUM}) exten => 4998,3,Goto(6) exten => 4998,4,Festival(Caller please enter the callback number followed by the pound key) exten => 4998,5,Read(YourNumber) exten => 4998,6,Wait(1) exten => 4998,7,Festival(Caller please verify your callback number) exten => 4998,8,SayDigits(${YourNumber}) exten => 4998,9,Wait(1) exten => 4998,10,Festival(Caller press 1 to use this number press 2 to repeat the number press 3 to enter a new number) exten => 4998,11,Read(Result,,1) exten => 4998,12,GotoIf($[${Result} = 1]?15:13) exten => 4998,13,GotoIf($[${Result} = 2]?7:14) exten => 4998,14,GotoIf($[${Result} = 3]?4:10) exten => 4998,15,Festival(Caller please enter the outbound number followed by the pound key) exten => 4998,16,Read(TheirNumber) exten => 4998,17,Wait(1) exten => 4998,18,Festival(Caller you have entered) exten => 4998,19,SayDigits(${TheirNumber}) exten => 4998,20,Wait(1) exten => 4998,21,Festival(Caller if this is correct press 1 otherwise press 2) exten => 4998,22,Read(Result,,1) exten => 4998,23,GotoIf($[${Result} = 1]?25:24) exten => 4998,24,GotoIf($[${Result} = 2]?15:21) exten => 4998,25,Wait(1) ;place a call in asterisk/outgoing before hangingup exten => 4998,26,System(/bin/nohup /usr/local/bin/connect ${YourNumber} ${TheirNumber} 30&) exten => 4998,27,Wait(1) exten => 4998,28,Festival(Caller this session is completed please hanup now) exten => 4998,29,Wait(1) exten => 4998,30,Hangup