I have been using the Asterisk IVR for ages but for some reason on a new server w/v1.2.4 (although I have it running elsewhere fine) the dialplan is not waiting for a response (even though I have the timeout set) and does an Auto fallthrough once the dialplan finishes the ‘s’ logic. Of course, it should wait, and if timeout it the ‘t’ extension.
What am I missing here?
[quote=“extensions.ael”]context process_inbound {
s => {
Set(TIMEOUT(digit)=2);
Set(TIMEOUT(response)=10);
Set(PRESSED_DIGITS=0);
Wait(2);
Answer();
Wait(1);
Set(tts_file=EMPTY);
Set(tts_lang=‘en’);
Set(tts_text=‘blah blah’);
AGI(cepstral.php);
Background(${tts_file});
System(‘rm ${tts_file}.*’);
};
1 => {
AGI(swift.agi|You selected one!);
Playback(goodbye);
Hangup();
};
2 => {
Set(tts_text='blah blah');
AGI(cepstral.php);
Playback(${tts_file});
System('rm ${tts_file}.*');
Dictate();
Playback(thanks-for-using);
Playback(goodbye);
Hangup();
};
t => {
goto process_inbound|s|9;
};
i => {
Playback(invalid);
goto process_inbound|s|9;
};
};[/quote]
Thanks. That did the trick.
I have a similar problem where no other action is taken after the dialplan is finished with Dictate(). Was this your problem and did the dialplan ever make it past Dictate()?
I should mention that I am using Asterisk@Home. It’s funny that I can’t find a [General] section nor a autofallthrough anywhere.
[quote=“jnennemann”]I have a similar problem where no other action is taken after the dialplan is finished with Dictate(). Was this your problem and did the dialplan ever make it past Dictate()?
I should mention that I am using Asterisk@Home. It’s funny that I can’t find a [General] section nor a autofallthrough anywhere.[/quote]
Once I had followed the details in this link it worked, it was not related to the Dictate issue. At leat the problem I was having.
forums.digium.com/viewtopic.php? … highlight=
So you don’t have the problem where the call hangs up once Dictate() is complete? I am SO frustrated. It would be different if ‘asterisk -r’ showed me what was happening, but I think that it is taking place in the execution of Dictate(). I have even looked at the source of Dictate() but I am not enough of a coder to see where it is dropping.
-- Executing Dictate("IAX2/100-1", "/var/spool/asterisk/dictate/radiology") in new stack
-- Playing 'dictate/enter_filename' (language 'en')
-- Playing 'dictate/forhelp' (language 'en')
-- Playing 'dictate/playback_mode' (language 'en')
-- Playing 'dictate/paused' (language 'en')
-- Playing 'dictate/playback' (language 'en')
-- Playing 'dictate/pause' (language 'en')
-- Playing 'dictate/enter_filename' (language 'en')<--- here I press pound a second time to exit
-- Hungup 'IAX2/100-1'
I have looked at app_dictate.c and there is this:
[code]
int unload_module(void)
{
int res;
res = ast_unregister_application(app);
STANDARD_HANGUP_LOCALUSERS;
return res;
}[/code]
I am assuming that STANDARD_HANGUP_LOCALUSERS is giving me the problem.