I'm guessing a bit, but my tests indicate that Asterisk finds out the longest extension within the context (including included contexts) and listens until you've entered as many digits as the longest one, or a DigitTimeout. So if you have a menu with a "1" and one "3000" as the longest one, entering 3000 makes Asterisk stop listening and start processing directly, but entering "1" makes Asterisk wait until a DigitTimeout. User's appreciate fast processing, so try to keep your menues consistent in input length.
The 'i' extension is used for invalid input, catch it. It has to be within the menu extension. The 't' extension is for timeouts. Catch that too.
Rich's example: > > exten => 620,1,Wait,1 > > exten => 620,2,Answer > > exten => 620,3,DigitTimeout,5 > > exten => 620,4,ResponseTimeout,10 > > exten => 620,5,Background(npi-greeting) ; "Thanks for calling press 1 for" > > > > exten => 1,1,Goto(npi-directory,s,1)
I would change this to something like
exten => 620,1,Goto(richsmenu,s,1)
[richsmenu] exten => s,1,wait(1) exten => s,2,Answer exten => s,3,DigitTimeout(5) exten => s,4,ResponseTimeout(10) exten => s,5,Background(npi-greeting)
;Possible choices exten => 1,1, blablabla exten => 2,1, blablabla
;Catch three character extensions
exten => _XXX,1,goto(myextensions,${exten},1;Invalid extensions exten => i, 1, Playback(invalid) exten => i, 2, goto(s,5) ;Timeouts, restart exten => t, 1, goto (s,5)
Also make sure there's an 'i' extension in [myextensions]
Of course one could include 'myextensions' but there might be other stuff in there that you won't want to be reachable from a menu.
http://www.voip-info.org/tiki-index.php?page=Asterisk+cmd+BackGround http://www.voip-info.org/wiki-Asterisk+tips+ivr+menu
Good luck building menues! It's fun. /Olle
_______________________________________________ Asterisk-Users mailing list [EMAIL PROTECTED] http://lists.digium.com/mailman/listinfo/asterisk-users
