Callback Advanced Call Routing
From KlavoWiki
The information contained herein is based on the Callback page but this section handles calls in a more advanced manner. The main difference is the way DISA is used for the dial tone function and how the Dial function is used when making calls.
Dial Command
When the dial command is used the main difference here is that we are using options Tgd in the dial command.
;Call David Klaverstyn exten => 3,1,Dial(SIP/GoTalk/0416xxxxxx,70,Tgd) exten => 3,n,Set(TRY=0) exten => 3,n,Goto(s,start)
DISA
With regards to DISA, it is used in a different context to control the call flow better.
[callback-disa] exten => _0[23478]XXXXXXXX,1,Dial(SIP/GoTalk/${EXTEN},70,Tgd) exten => _0[23478]XXXXXXXX,n,Set(TRY=0) exten => _0[23478]XXXXXXXX,n,Goto(callback,s,start) exten => _[3-5]XXXXXXX,1,Dial(SIP/GoTalk/${EXTEN},70,Tgd) exten => _[3-5]XXXXXXX,n,Set(TRY=0) exten => _[3-5]XXXXXXX,n,Goto(callback,s,start) exten => _1[38]00XXXXXX,1,Dial(SIP/GoTalk/${EXTEN},70,Tgd) exten => _1[38]00XXXXXX,n,Set(TRY=0) exten => _1[38]00XXXXXX,n,Goto(callback,s,start) exten => _13ZXXX,1,Dial(SIP/GoTalk/${EXTEN},70,Tgd) exten => _13ZXXX,n,Set(TRY=0) exten => _13ZXXX,n,Goto(callback,s,start) exten => _0011X.,1,Dial(SIP/GoTalk/${EXTEN},70,Tgd) exten => _0011X.,n,Set(TRY=0) exten => _0011X.,n,Goto(callback,s,start) ;Internal Extensions exten => _20X,1,Dial(SIP/${EXTEN},19,gd) exten => _20X,n,Set(TRY=0) exten => _20X,n,Goto(callback,s,start) ; Conference Room 820X exten => _820Z,1,SetMusicOnHold(SkyFM-80s) exten => _820Z,n,MeetMe(${EXTEN},Mcp) exten => _820Z,n,Set(TRY=0) exten => _820Z,n,Goto(callback,s,start) ;Return to the begining exten => *,1,Playback(beep) exten => *,n,Set(TRY=0) exten => *,n,Goto(callback,s,start) exten => i,1,Playback(au/invalid) exten => i,n(start),Set(TRY=$[${TRY} - 1]) exten => i,n,Goto(callback,s,start)