Call in from Misdn, before going somewhere i am verifyin some values in db, the determine if comapny is working or not ;)
[intern-out]
exten => 8000,1,GotoIf($[${DB(menu/delaplace)}=1]?2:3)
exten => 8000,2,Goto(menudelaplace,s,1)
exten => 8000,3,GotoIf($[${DB(menu/delaplace)}=0]?4:5)
exten => 8000,4,Goto(menudelaplace,8,1)
exten => 8000,5,GotoIf($[${DB(menu/delaplace)}=2]?6:7)
exten => 8000,6,Goto(menudelaplace,25,1)
exten => 8000,7,Goto(phonesystems,711,1)
At any case we change context, as you see i am using Background() instead of playback to let user press button nine
then i need to dial out with provider.
[menudelaplace]
exten => 8,1,Answer()
exten => 8,2,Background(menu/delaplace_out)
exten => 8,3,Voicemail(s30@default)
exten => 1,1,Goto(phonesystems,708,1)
exten => 2,1,Goto(phonesystems,707,1)
exten => 3,1,Goto(phonesystems,709,1)
exten => 4,1,Goto(phonesystems,709,1)
exten => i,1,Playback(pbx-invalid)
exten => i,2,Goto(phonesystems,8000,1)
exten => s,1,Answer()
exten => s,2,Background(menu/accueil_delaplace)
exten => s,3,Background(silence/5)
exten => s,4,Goto(phonesystems,711,1)
exten => 25,1,Answer()
exten => 25,2,Background(menu/magasin_samedi)
exten => 25,3,Goto(phonesystems,708,1)
exten => 9,1,Answer()
exten => 9,3,Dial(Sip/${EXTEN}@voipstunt,60,t)
exten => 9,2,WaitExten(8)
CLI
== Parsing '/etc/asterisk/sip_notify.conf': Found
-- Got SIP response 405 "Method Not Allowed" back from 192.168.0.79
-- Executing [8000@intern-out:1] GotoIf("mISDN/1-u609", "0?2:3") in new stack
-- Goto (intern-out,8000,3)
-- Executing [8000@intern-out:3] GotoIf("mISDN/1-u609", "1?4:5") in new stack
-- Goto (intern-out,8000,4)
-- Executing [8000@intern-out:4] Goto("mISDN/1-u609", "menudelaplace|8|1") in new stack
-- Goto (menudelaplace,8,1)
-- Executing [8@menudelaplace:1] Answer("mISDN/1-u609", "") in new stack
-- Executing [8@menudelaplace:2] BackGround("mISDN/1-u609", "menu/delaplace_out") in new stack
-- <mISDN/1-u609> Playing 'menu/delaplace_out' (language 'en')
== CDR updated on mISDN/1-u609
IT goes to Exten 9 as it should BE
-- Executing [9@menudelaplace:1] Answer("mISDN/1-u609", "") in new stack
-- Executing [9@menudelaplace:2] WaitExten("mISDN/1-u609", "8") in new stack
-- Invalid extension '0' in context 'menudelaplace' on mISDN/1-u609
== CDR updated on mISDN/1-u609
BUT when i press first button it stops waiting dor next digits and goes to i extension, cos no ext at 0 in this context
-- Executing [i@menudelaplace:1] Playback("mISDN/1-u609", "pbx-invalid") in new stack
-- <mISDN/1-u609> Playing 'pbx-invalid' (language 'en')
== Spawn extension (menudelaplace, i, 1) exited non-zero on 'mISDN/1-u609'