[general] static=yes writeprotect=no ;************************************************************* ; BEGIN - Global variable definitions ;************************************************************* [globals] PSTN=Zap/1 DEFTIMEOUT=30 VERYSHORTTIMEOUT=10 SHORTTIMEOUT=20 MEDTIMEOUT=40 LONGTIMEOUT=70 ;************************************************************* ; END - Global variable definitions ;************************************************************* ; ;******************************************************************** ; BEGIN - Macro Definitions ;******************************************************************** [macro-stdexten] ; ; Standard extension macro: ; ${ARG1} - Device to ring ; ;;exten => s,1,Dial(${ARG1},60,r) ; Ring the interface, 60 seconds maximum ;exten => s,1,Dial(${ARG1},${ARG3},60,r) ;exten => s,2,Voicemail(u${MACRO_EXTEN}) ; If unavailable, send to voicemail w/ unavail announce ;exten => s,3,Hangup ;exten => s,102,Voicemail(b${MACRO_EXTEN}) ; If busy, send to voicemail w/ busy announce ;exten => s,103,Hangup ;exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum exten => s,1,Playback(transfer) exten => s,2,Dial(${ARG2},20,m) exten => s,3,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER) exten => s-NOANSWER,1,Voicemail(u${ARG1}) ; If unavailable, send to voicemail w/ unavail announce exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start exten => s-BUSY,1,Voicemail(b${ARG1}) ; If busy, send to voicemail w/ busy announce exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer [macro-pstn-local] exten => s,1,Dial(${PSTN}/${ARG1},${ARG2}) [macro-mobile-federal] exten => s,1,SayDigits(${ARG2}) exten => s,2,Dial(${PSTN}/w8wwww${ARG1},${ARG2}) ; ;******************************************************************** ; END - Macro Definitions ;******************************************************************** ; [international] exten => _810.,1,Congestion [nationalcalls] ;Moscow ;exten => _8095.,Dial(${PSTN}/8w095${ARG1},${ARG2}) [mobiles] ;Megafon federal exten => _921XXXXXXX,1,Macro(mobile-federal,${EXTEN}) exten => _921XXXXXXX,2,Congestion ;Skylink federal exten => _901XXXXXXX,1,Macro(mobile-federal,${EXTEN},60) exten => _901XXXXXXX,2,Congestion ;;exten => _921.,2,Congestion ;;MTS deferal ;exten => _9911,1,Dial(${PSTN}/8w911${ARG1},${ARG2}) ;;Beeline ;exten => _9905,1,Dial(${PSTN}/8w905${ARG1},${ARG2}) [localcalls] exten => _9XXXXXXX,1,Macro(pstn-local,${EXTEN:1},60) exten => _9XXXXXXX,2,Congestion [pstnoutbound] include => international include => nationalcalls include => mobiles include => localcalls [local] exten => 180,1,Macro(stdexten,SIP/${EXTEN},t) exten => 181,1,Macro(stdexten,SIP/${EXTEN},t) exten => 182,1,Macro(stdexten,SIP/${EXTEN},t) exten => 183,1,Macro(stdexten,SIP/${EXTEN},t) exten => 184,1,Macro(stdexten,SIP/${EXTEN},t) exten => 185,1,Macro(stdexten,SIP/${EXTEN},t) exten => 186,1,Macro(stdexten,SIP/${EXTEN},t) exten => 187,1,Macro(stdexten,SIP/${EXTEN},t) exten => 188,1,Macro(stdexten,SIP/${EXTEN},t) exten => 189,1,Macro(stdexten,SIP/${EXTEN},t) exten => 191,1,Macro(stdexten,SIP/${EXTEN},t) exten => 192,1,Macro(stdexten,SIP/${EXTEN},t) exten => 193,1,Macro(stdexten,SIP/${EXTEN},t) exten => 194,1,Macro(stdexten,SIP/${EXTEN},t) exten => 195,1,Macro(stdexten,SIP/${EXTEN},t) exten => 196,1,Macro(stdexten,SIP/${EXTEN},t) exten => 197,1,Macro(stdexten,SIP/${EXTEN},t) exten => 198,1,Macro(stdexten,SIP/${EXTEN},t) exten => 199,1,Macro(stdexten,SIP/${EXTEN},t) ; ; Say Current Date and Time ; exten => 190,1,NoCDR exten => 190,2,DateTime() exten => 190,3,Hangup ; ; Say Calling Number ; exten => 101,1,NoCDR exten => 101,2,SayDigits(${CALLERIDNUM}) exten => 101,3,Hangup ; ; Access Voicemail ; exten => 711,1,NoCDR exten => 711,2,VoicemailMain exten => 711,3,Hangup exten => v,1,Background,conflist exten => 16,1,MeetMe,9000|Mp exten => 16,2,Goto,v|1 exten => 17,1,MeetMe,9001|Mp exten => 17,2,Goto,v|1 exten => 18,1,MeetMe,9002|Mp exten => 18,2,Goto,v|1 ;music exten => 6000,1,Answer exten => 6000,2,MusicOnHold() [incoming] exten => s,1,Wait(1) exten => s,2,Dial(SIP/196|5) exten => s,3,Goto(s,4) exten => s,4,Dial(SIP/181|5) exten => s,5,Goto(s,6) exten => s,6,Dial(SIP/186|5) exten => s,7,Goto(s,8) exten => s,8,Dial(SIP/192|5) exten => s,9,Goto(s,10) exten => s,10,Dial(SIP/199|5) ;exten => t,11,Goto(s,12) exten => s,12,Voicemail,u199 exten => s,13,Hangup exten => s,102,Voicemail,b199 exten => s,103,Hangup ; ;******************************************************************** ; BEGIN - Outbound call handlers ;******************************************************************** ; ; ; this is where SIP extensions enter the dial plan ; exten => s,1,DigitTimeout,2 ; give them 2 seconds between digits exten => s,2,ResponseTimeout,30 ; give them 30 seconds to make a choice [default] include => incoming include => local include => pstnoutbound switch => IAX2/acuid-spb:[acuid-spb]@firewall.edi.acuid.com/local switch => IAX2/acuid-spb:[acuid-spb]@firewall.gle.acuid.com/local switch => IAX2/acuid-spb:[acuid-spb]@firewall.qpe.acuid.com/local