[general] static=yes writeprotect=yes [default] include => mohtest include => dnd include => callqueue include => agentlogin include => meetme include => testapps include => mailboxes include => parkedcalls include => others include => timedate include => callforward include => moreapps include => autoattend include => outbound [outbound] ; This need its own context so outsiders cant make phone calls (bkw) exten => _967XXXX,1,Dial,H323/${EXTEN}@x.x.x.1 exten => _967XXXX,2,Hangup ; this makes sure it till gets called as local :P exten => _1918967XXXX,1,Dial,H323/${EXTEN:4}@x.x.x.1 exten => _1918967XXXX,2,Hangup exten => _1NXXNXXXXXX,1,Dial,H323/${EXTEN}@x.x.x.8 exten => _1NXXNXXXXXX,2,Hangup exten => _NXXXXXX,1,Dial,H323/${EXTEN}@x.x.x..8 exten => _NXXXXXX,2,Hangup exten => _81NXXNXXXXXX,1,Dial,H323/${EXTEN:1}@x.x.x..8 exten => _81NXXNXXXXXX,2,Hangup exten => _8NXXXXXX,1,Dial,H323/${EXTEN:1}@x.x.x.8 exten => _8NXXXXXX,2,Hangup [dnd] ; *61# turns it on ; *60# turns it off exten => _*61,1,DBput(DND/${CALLERIDNUM}=YES}) exten => _*61,2,Playback(vm-goodbye) exten => _*61,3,SoftHangup exten => _*60,1,DBdel(DND/${CALLERIDNUM}) exten => _*60,2,Playback(vm-goodbye) exten => _*60,3,SoftHangup exten => 661,1,DBput(DND/${CALLERIDNUM}=YES}) exten => 661,2,Playback(vm-goodbye) exten => 661,3,SoftHangup exten => 660,1,DBdel(DND/${CALLERIDNUM}) exten => 660,2,Playback(vm-goodbye) exten => 660,3,SoftHangup [callforward] ; *71+ext+# forwards calls to ext ; *70# turns it off. ; exten => _*71X.,1,DBput(SIP/${CALLERIDNUM}=${EXTEN:3}) exten => _*71X.,2,SayDigits,${CALLERIDNUM} exten => _*71X.,3,SayDigits,${EXTEN:3} exten => _*71X.,4,Playback(vm-goodbye) exten => _*71X.,5,SoftHangup exten => _*71,1,DBdel(SIP/${CALLERIDNUM}) exten => _*71,2,Playback(vm-goodbye) exten => _*71,3,SoftHangup [others] ; omniglobal.net Syndicate NBX via h.323 ; 2+ext exten => _2XXX,1,Dial,H323/${EXTEN:1}@x.x.x.x exten => _2XXX,2,Congestion ; lcii.net MHack NBX via h.323 ; 3+ext calls mhacks nbx exten => _3XXX,1,Dial,H323/${EXTEN:1}@x.x.x.x exten => _3XXX,2,Congestion [autoattend] ; ; System Auto Attendant ; include => mailboxes include => mohtest ; include these only when open include => options ; now change autoattendant when we aren't open include => night|00:00-23:59|sun|*|* ; closed sundays include => night|16:01-23:59|sat|*|* ; closed include => night|00:00-08:59|sat|*|* ; closed before sat opens include => night|00:00-07:59|mon-fri|*|* ; closed include => night|18:01-23:59|mon-fri|*|* ; closed include => day|08:00-18:00|mon-fri|*|* ; OPEN w00t! include => day|09:00-16:00|sat|*|* ; OPEN w00t! ; company directory exten => *,1,Directory,default exten => *,2,Goto,s|1 exten => #,1,Playback,vm-goodbye exten => #,2,Hangup ; timeout and invalid extensions exten => t,1,Goto,options|1|1 exten => i,1,Playback,invalid ; option 4 sysinfo ; its here so it can be accessed day and night exten => 4,1,Goto,sysinfo|s|1 ; outside access to voicemail exten => *299,1,VoicemailMain2 exten => *299,2,Hangup ; ; Used to dump users from h323 into autoattendant exten => 9999,1,SetCallerID(0-000-0000) exten => 9999,2,SetCIDName(CWIS - STIGLER) exten => 9999,3,Goto,s|1 exten => 9999,4,Hangup exten => 9998,1,SetCallerID(0-000-0000) exten => 9998,2,SetCIDName(CWIS - TULSA) exten => 9998,3,Goto,s|1 exten => 9998,4,Hangup [day] exten => s,1,Wait,1 exten => s,2,Answer exten => s,3,Background,cwis-main-dsl ; message here exten => s,4,DigitTimeout,5 exten => s,5,ResponseTimeout,10 [night] exten => s,1,Wait,1 exten => s,2,Answer exten => s,3,Background,cwis-night ; message here exten => s,4,DigitTimeout,5 exten => s,5,ResponseTimeout,10 [options] ; option 1 sales exten => 1,1,Playback,cwis-hold exten => 1,2,SetMusicOnHold,default exten => 1,3,SetCallerID,1 exten => 1,4,SetCIDName,Sales exten => 1,5,Goto,callqueue|900|1 ; option 2 support exten => 2,1,Playback,cwis-hold exten => 2,2,SetMusicOnHold,default exten => 2,3,SetCallerID,2 exten => 2,4,SetCIDName,Tech exten => 2,5,Goto,callqueue|901|1 ; option 3 billing exten => 3,1,Playback,cwis-hold exten => 3,2,SetCallerID,3 exten => 3,3,SetCIDName,Billing exten => 3,4,SetMusicOnHold,default exten => 3,5,Goto,callqueue|902|1 [sysinfo] ; option 4 automated info ; not completely done yet exten => s,1,Background,cwis-sysinfo exten => s,2,DigitTimeout,5 exten => s,3,ResponseTimeout,20 exten => s,4,Goto,autoattend|s|3 exten => 1,1,Playback,cwis-systemstatus exten => 1,2,Goto,sysinfo|s|1 exten => 2,1,Playback,cwis-mailserver exten => 2,2,Goto,sysinfo|s|1 exten => 3,1,Playback,cwis-dnsserver exten => 3,2,Goto,sysinfo|s|1 exten => 4,1,Playback,cwis-dialupnumbers exten => 4,2,Goto,sysinfo|s|1 exten => *,1,Goto,autoattend|s|3 exten => *,2,Hangup ; timeout and invalid extensions exten => t,1,Goto,sipext|900|1 exten => i,1,Playback,invalid [sipext] include => default exten => 111,1,DBget(temp=SIP/111) exten => 111,2,Goto(sipext,${temp}|1) exten => 111,102,Goto(111|3) exten => 111,3,DBget(dnd=DND/111) exten => 111,4,Goto(111|6) exten => 111,104,Goto(111|5) exten => 111,5,Dial(SIP/111,50,Ttr) exten => 111,6,Voicemail2(u111) exten => 111,7,Hangup exten => 111,106,Voicemail2(b111) ; busy exten => 111,107,Hangup exten => 112,1,DBget(temp=SIP/112) exten => 112,2,Goto(sipext,${temp}|1) exten => 112,102,Goto(112|3) exten => 112,3,DBget(dnd=DND/112) exten => 112,4,Goto(112|6) exten => 112,104,Goto(112|5) exten => 112,5,Dial(SIP/112,50,Ttr) exten => 112,6,Voicemail2(u112) exten => 112,7,Hangup exten => 112,106,Voicemail2(b112) ; busy exten => 112,107,Hangup exten => 113,1,Playback,pbx-transfer exten => 113,2,DBget(temp=SIP/113) exten => 113,3,Goto(sipext,${temp}|1) exten => 113,103,Goto(113|4) exten => 113,4,DBget(dnd=DND/113) exten => 113,5,Goto(113|7) exten => 113,105,Goto(113|6) exten => 113,6,Dial(SIP/113,60,tr) exten => 113,7,Hangup exten => 113,107,Hangup exten => 114,1,DBget(temp=SIP/114) exten => 114,2,Goto(sipext,${temp}|1) exten => 114,102,Goto(114|3) exten => 114,3,DBget(dnd=DND/114) exten => 114,4,Goto(114|6) exten => 114,104,Goto(114|5) exten => 114,5,Dial(SIP/114,50,Ttr) exten => 114,6,Voicemail2(u114) exten => 114,7,Hangup exten => 114,106,Voicemail2(b114) ; busy exten => 114,107,Hangup exten => 115,1,DBget(temp=SIP/115) exten => 115,2,Goto(sipext,${temp}|1) exten => 115,102,Goto(115|3) exten => 115,3,DBget(dnd=DND/115) exten => 115,4,Goto(115|6) exten => 115,104,Goto(115|5) exten => 115,5,Dial(SIP/115,50,Ttr) exten => 115,6,Voicemail2(u115) exten => 115,7,Hangup exten => 115,106,Voicemail2(b115) ; busy exten => 115,107,Hangup exten => 116,1,DBget(temp=SIP/116) exten => 116,2,Goto(sipext,${temp}|1) exten => 116,102,Goto(116|3) exten => 116,3,DBget(dnd=DND/116) exten => 116,4,Goto(116|6) exten => 116,104,Goto(116|5) exten => 116,5,Dial(SIP/116,50,Ttr) exten => 116,6,Voicemail2(u116) exten => 116,7,Hangup exten => 116,106,Voicemail2(b116) ; busy exten => 116,107,Hangup exten => 117,1,DBget(temp=SIP/117) exten => 117,2,Goto(sipext,${temp}|1) exten => 117,102,Goto(117|3) exten => 117,3,DBget(dnd=DND/117) exten => 117,4,Goto(117|6) exten => 117,104,Goto(117|5) exten => 117,5,Dial(SIP/117,50,Ttr) exten => 117,6,Voicemail2(u117) exten => 117,7,Hangup exten => 117,106,Voicemail2(b117) ; busy exten => 117,107,Hangup exten => 118,1,DBget(temp=SIP/118) exten => 118,2,Goto(sipext,${temp}|1) exten => 118,102,Goto(118|3) exten => 118,3,DBget(dnd=DND/118) exten => 118,4,Goto(118|6) exten => 118,104,Goto(118|5) exten => 118,5,Dial(SIP/118,50,Ttr) exten => 118,6,Voicemail2(u118) exten => 118,7,Hangup exten => 118,106,Voicemail2(b118) ; busy exten => 118,107,Hangup exten => 119,1,DBget(temp=SIP/119) exten => 119,2,Goto(sipext,${temp}|1) exten => 119,102,Goto(119|3) exten => 119,3,DBget(dnd=DND/119) exten => 119,4,Goto(119|6) exten => 119,104,Goto(119|5) exten => 119,5,Dial(SIP/119,50,Ttr) exten => 119,6,Voicemail2(u119) exten => 119,7,Hangup exten => 119,106,Voicemail2(b119) ; busy exten => 119,107,Hangup exten => 121,1,Dial(H323/1000@65.38.28.146) exten => 2001,1,Dial(IAX/bwann,50,Ttr) [moreapps] exten => 299,1,VoicemailMain2 exten => 299,2,Hangup exten => 300,1,VoicemailMain2(${CALLERIDNUM}) exten => 300,2,Hangup exten => 213,1,Dial(H323/6914710@192.168.125.8) exten => 213,2,Hangup exten => _*XXX,1,Voicemail2(u${EXTEN:1}) exten => _*XXX,2,Hangup ; used to record prompts exten => 205,1,Wait(2) exten => 205,2,Record(/tmp/asterisk-recording:gsm) exten => 205,3,Wait(2) exten => 205,4,Playback(/tmp/asterisk-recording) exten => 205,5,Wait(2) exten => 205,6,Hangup exten => 200,1,Wait(2) exten => 200,2,Record(/var/lib/asterisk/sounds/cwis-systemstatus:gsm) exten => 200,3,Wait(2) exten => 200,4,Playback(/var/lib/asterisk/sounds/cwis-systemstatus) exten => 200,5,Wait(2) exten => 200,6,Hangup [meetme] exten => 400,1,Meetme,1234 exten => 400,2,Hangup [testapps] exten => 500,1,Playback(demo-abouttotry); Let them know what's going on exten => 500,2,Dial(IAX2/guest@misery.digium.com/s@default) ; Call the Asterisk demo exten => 500,3,Playback(demo-nogo) ; Couldn't connect to the demo site exten => 500,4,SoftHangup ; Return to the start over message. exten => 600,1,Playback(demo-echotest) ; Let them know what's going on exten => 600,2,Echo ; Do the echo test exten => 600,3,Playback(demo-echodone) ; Let them know it's over exten => 600,4,SoftHangup ; Start over [agentlogin] exten => 800,1,AddQueueMember(techsupport|SIP/${CALLERIDNUM}) exten => 800,2,Playback(agent-loginok) exten => 800,3,Hangup exten => 801,1,RemoveQueueMember(techsupport|SIP/${CALLERIDNUM}) exten => 801,2,Playback(agent-loggedoff) exten => 801,3,Hangup [callqueue] ; sales exten => 900,1,Answer exten => 900,2,Queue(techsupport|TtH) exten => 900,3,WaitMusicOnHold(20) exten => 900,4,Voicemail2(u900) exten => 900,5,Playback(vm-goodbye) exten => 900,6,Hangup ; support exten => 901,1,Answer exten => 901,2,Queue(techsupport|TtH) exten => 901,3,WaitMusicOnHold(20) exten => 901,4,Voicemail2(u901) exten => 901,5,Playback(vm-goodbye) exten => 901,6,Hangup ; billing exten => 902,1,Answer exten => 902,2,Queue(techsupport|TtH) exten => 902,3,WaitMusicOnHold(20) exten => 902,4,Voicemail2(u902) exten => 902,5,Playback(vm-goodbye) exten => 902,6,Hangup [mohtest] exten => 999,1,Ringing exten => 999,2,Answer exten => 999,3,MusicOnHold,default