rendered paste body;--------------------------------------------------------
;North American Numbering Plan for the Public Switched
;Telephone Network. With a few addons.
;--------------------------------------------------------
[nanpa]
n/a *00 - Inward Voice Activated Services (English) - Reassign
n/a *01 - Inward Voice Activated Services (French) - Reassign
n/a *02 - Deactivation/Activation of In-Session Activation (ISA)on a per line basis - Reassign or remove
n/a *03 - Deactivation of In-Session Activation (ISA) on a per call basis - Reassign or remove
;Stuff I added for line testing.
; *1 - System Status
exten => *1,1,Answer
exten => *1,n,Wait(.5)
exten => *1,n,Playback(/usr/local/share/asterisk/sounds/systemstatus)
exten => *1,n,Wait(.5)
exten => *1,n,Hangup
; **1 - System status record
exten => **1,1,Answer
exten => **1,n,Wait(2)
exten => **1,n,Record(/usr/local/share/sounds/systemstatus:gsm)
exten => **1,n,Wait(2)
exten => **1,n,Playback(/usr/local/share/asterisk/sounds/systemstatus)
exten => **1,n,Wait(2)
exten => **1,n,Hangup
; *2 - Say Phone Number
exten => *2,1,Answer
exten => *2,n,Playback(your-exten-num-is)
exten => *2,n,SayDigits(${CALLERIDNUM})
exten => *2,n,Hangup
; *3 - Say Date and Time
exten => *3,1,Answer
exten => *3,n,Playback(the-current-time-is)
exten => *3,n,Datetime
exten => *3,n,Hangup
; *4 - Echo Test
exten => *4,1,Answer
exten => *4,n,Playback(demo-echotest)
exten => *4,n,Playback(beep)
exten => *4,n,Echo
exten => *4,n,Playback(demo-echodone)
exten => *4,n,Hangup
; *5 - Milliwatt Tone
exten => *5,1,Answer
exten => *5,n,Milliwatt
exten => *5,n,Hangup
; *6 - Record Promt Test Format Gsm
exten => *6,1,Answer
exten => *6,n,Wait(1)
exten => *6,n,Record(record:gsm)
exten => *6,n,Wait(1)
exten => *6,n,Playback(record)
exten => *6,n,Hangup; Music On Hold
; *7 - Music On Hold
exten => *7,1,Answer
exten => *7,n,MusicOnHold(default)
; *8 -Speaking Time Clock
exten => *8,1,Answer
exten => *8,n,Wait(1)
exten => *8,n,Playback(at-tone-time-exactly)
exten => *8,n,SayUnixTime(,,IMp)
exten => *8,n,Playback(beep)
exten => *8,n,Hangup
; *9 - weather
exten => *9,1,Answer
exten => *9,2,AGI(weather.agi)
exten => *9,3,Hangup
;*1X - Reserved for expansion to 3-digit VSCs
;*2X - Reserved for expansion to 3-digit VSCs
; I put my normal conf here
;*2X - Internal Confrences
exten => _*2X,1,Answer
exten => _*2X,n,Wait(1)
exten => _*2X,n,MeetMe({$ARG1},pdcMs)
exten => _*2X,n,4,Playback(vm-goodbye)
exten => _*2X,n,5,Hangup
;*3X - Reserved for expansion to 3-digit VSCs
; I Added my special conf here.
;*3X - Special Confrences
exten => _*3X,1,Answer
exten => _*3X,n,Wait(1)
exten => _*3X,n,MeetMe({$ARG1},pdcMs)
exten => _*3X,n,4,Playback(vm-goodbye)
exten => _*3X,n,5,Hangup
;*40 - Change Forward-To Number for Customer Programmable Call Forwarding Busy Line
exten => _*40.,1,Answer
exten => _*40.,n,Wait(1)
exten => _*40.,n,Macro(user-callerid,)
exten => _*40.,n,Set(DB(CPCFB/${CALLERID(number)})=${EXTEN:3})
exten => _*40.,n,Playback(call-fwd-no-ans&for&extension)
exten => _*40.,n,SayDigits(${CALLERID(number)})
exten => _*40.,n,Playback(is-set-to)
exten => _*40.,n,SayDigits(${EXTEN:3})
exten => _*40.,n,Macro(hangupcall,)
;n/a *41 - Six-Way Conference Calling Activation - reassign
;*42 - Change Forward-To Number for Customer Programmable Call Forwarding Don't Answer
exten => _*42.,1,Answer
exten => _*42.,n,Wait(1)
exten => _*42.,n,Macro(user-callerid,)
exten => _*42.,n,Set(DB(CPCFDA/${CALLERID(number)})=${EXTEN:3})
exten => _*42.,n,Playback(call-fwd-no-ans&for&extension)
exten => _*42.,n,SayDigits(${CALLERID(number)})
exten => _*42.,n,Playback(is-set-to)
exten => _*42.,n,SayDigits(${EXTEN:3})
exten => _*42.,n,Macro(hangupcall,
;n/a *43 - Drop last member of Six-Way Conference Call - reassign
;n/a *44 - Voice Activated Dialing - work in progress
;n/a *45 - Voice Dialing Extended Dial Tone - work in progress
;n/a *46 - French Voice Activated Network Control
;n/a *47 - Override Feature Authorization -work in profress
;*48 - Override Do Not Disturb
exten => _*48XXXX,1,Dial(SIP/${ARG1}:3|20|r) ; 20sec timeout
exten => _*48XXXX,n,Voicemail(u${ARG1})
exten => _*48XXXX,n,Hangup
exten => _**48NXXNXXNXXXX,1,Dial(SIP/${ARG1}:4|20|r) ; 20sec timeout
exten => _**48NXXNXXNXXXX,n,Voicemail(u${ARG1})
exten => _**48NXXNXXNXXXX,n,Hangup
;n/a *49 - Long Distance Signal - Reassign
;n/a *50 - Voice Activated Network Control - Reassign
*51 - Who Called Me?
exten => *51,1,Macro(user-callerid)
exten => *51,2,Answer
exten => *51,3,Wait(1)
exten => *51,4,Background(info-about-last-call)
exten => *51,5,Background(telephone-number)
exten => *51,6,Set(lastcaller=${DB(CALLTRACE/${CALLERID(number)})})
exten => *51,7,GotoIf($[${lastcaller}]?8:10)
exten => *51,8,SayDigits(${lastcaller})
exten => *51,9,Macro(hangupcall)
exten => *51,10,Playback(from-unknown-caller)
exten => *51,11,Playback(unidentified-no-callback)
exten => *51,12,Macro(hangupcall)
;n/a *52 - Single Line Variety Package (SVP) - Call Hold
;n/a *53 - Single Line Variety Package (SVP) - Distinctive Ring B
;n/a *54 - Single Line Variety Package (SVP) - Distinctive Ring C
;n/a *55 - Single Line Variety Package (SVP) - Distinctive Ring D
;n/a *56 - Change Forward-To Number for ISDN Call Forwarding
;n/a *57 - ISDN Customer Originated Trace
;n/a *58 - ISDN MBKS Manual Exclusion Activation
;n/a *59 - ISDN MBKS Manual Exclusion Deactivation
;*60 - Selective Call Rejection Activation aka Blacklist Add
exten => _*46.,1,Macro(user-callerid)
exten => _*46.,n,Set(DB(BLACKLIST/${CALLERID(number)})=${EXTEN:3})
exten => _*46.,n,Answer
exten => _*46.,n,Wait(1)
exten => _*46.,n,Playback(blacklist-add)
exten => _*46.,n,Playback(for)
exten => _*46.,n,Playback(extension)
exten => _*46.,n,SayDigits(${CALLERID(number)})
exten => _*46.,n,Playback(is-set-to)
exten => _*46.,n,SayDigits(${EXTEN:3})
exten => _*46.,n,Macro(hangupcall)
;*61 - Distinctive Ringing/Call Waiting Activation
;*62 - Selective Call Waiting
exten => *62,1,Answer
exten => *62,n,Wait(1)
exten => *62,n,Macro(user-callerid)
exten => *62,n,Set(DB(SCW/${CALLERID(number)})=ENABLED)
exten => *62,n,Playback(selective-call-waiting)
exten => *62,n,Playback(activated)
exten => *62,n,Macro(hangupcall)
exten => _*62.,1,Macro(user-callerid)
exten => _*62.,n,Set(DB(SCW/${CALLERID(number)})=${EXTEN:3})
exten => _*62.,n,Answer
exten => _*62.,n,Wait(1)
exten => _*62.,n,Playback(selective-call-waiting-unconditional)
exten => _*62.,n,Playback(for)
exten => _*62.,n,Playback(extension)
exten => _*62.,n,SayDigits(${CALLERID(number)})
exten => _*62.,n,Playback(is-set-to)
exten => _*62.,n,SayDigits(${EXTEN:3})
exten => _*62.,n,Macro(hangupcall)
;*63 - Selective Call Forwarding Activation
exten => *63,1,Answer
exten => *63,n,Wait(1)
exten => *63,n,Macro(user-callerid)
exten => *63,n,Set(DB(SCF/${CALLERID(number)})=ENABLED)
exten => *63,n,Playback(selective-call-waiting)
exten => *63,n,Playback(activated)
exten => *63,n,Macro(hangupcall)
exten => _*63.,1,Set(DB(SCF/${CALLERIDNUM})=${EXTEN:3})})
exten => _*63.,n,Answer
exten => _*63,n,Wait(1)
exten => _*63.,n,Playback(selective-call-forwarding);
exten => _*63.,n,Playback(for)
exten => _*63.,n,Playback(extension)
exten => _*63.,n,SayDigits(${CALLERIDNUM})
exten => _*63.,n,Playback(is-set-to)
exten => _*63.,n,SayDigits(${EXTEN:3})
exten => _*63.,n,Macro(hangupcall)
;*64 - Selective Call Acceptance Activation
exten => *64,1,Answer
exten => *64,n,Wait(1)
exten => *64,n,Macro(user-callerid)
exten => *64,n,Set(DB(SCA/${CALLERID(number)})=ENABLED)
exten => *64,n,Playback(selective-call-accept)
exten => *64,n,Playback(activated)
exten => *64,n,Macro(hangupcall)
exten => _*64.,1,Macro(user-callerid)
exten => _*64.,n,Set(DB(SCA/${CALLERID(number)})=${EXTEN:3})
exten => _*64.,n,Answer
exten => _*64.,n,Wait(1)
exten => _*64.,n,Playback(selective-call-accept)
exten => _*64.,n,Playback(for)
exten => _*64.,n,Playback(extension)
exten => _*64.,n,SayDigits(${CALLERID(number)})
exten => _*64.,n,Playback(is-set-to)
exten => _*64.,n,SayDigits(${EXTEN:3})
exten => _*64.,n,Macro(hangupcall)
;*65 - Calling Number Delivery Activation
exten => *65,1,Macro(user-callerid)
exten => *65,n,Set(DB(CIDB/${CALLERIDNUM}=YES)
exten => *65,n,Answer
exten => *65,n,Wait()
exten => *65,n,Playback(caller-id-blk)
exten => *65,n,Playback(activated)
exten => *65,n,Hangup
;n/a *66 - Automatic Callback Activation
;*67 - Calling Number Delivery Blocking
exten => *67,1,Answer
exten => *67,n,Wait(1)
exten => *67,n,Macro(user-callerid)
exten => *67,1,Set(DB(CIDB/${CALLERIDNUM}=YES)
exten => *67,n,Answer
exten => *67,n,Wait(1)
exten => *67,n,Playback(caller-ib-blockin&activated)
exten => *67,n,Hangup
;*68 - Call Forwarding Busy Line/Don't Answer Activation
exten => *68,1,Answer
exten => *68,n,Wait(1)
exten => *68,n,Playback(call-fwd-on-busy)
exten => *68,n,Playback(please-enter-your&extension)
exten => *68,n,Read(fromext,then-press-pound,,)
exten => *68,n,Set(fromext=$/{IF($["foo${fromext}"="foo"]?${CALLERID(number)}:${fromext})})
exten => *68,n,Wait(1)
exten => *68,n(startread),Playback(ent-target-attendant)
exten => *68,n,Read(toext,then-press-pound,,)
exten => *68,n,GotoIf($["foo${toext}"="foo"]?startread)
exten => *68,n,Wait(1)
exten => *68,n,Set(DB(CFBDA${fromext})=${toext})
exten => *68,n,Playback(call-fwd-on-busy&for&extension)
exten => *68,n,SayDigits(${fromext})
exten => *68,n,Playback(is-set-to)
exten => *68,n,SayDigits(${toext})
exten => *68,n,Macro(hangupcall,)
exten => _*68.,1,Answer
exten => _*68.,n,Wait(1)
exten => _*68.,n,Macro(user-callerid,)
exten => _*68.,n,Set(DB(CFBDA/${CALLERID(number)})=${EXTEN:3})
exten => _*68.,n,Playback(call-fwd-on-busy&for&extension)
exten => _*68.,n,SayDigits(${CALLERID(number)})
exten => _*68.,n,Playback(is-set-to)
exten => _*68.,n,SayDigits(${EXTEN:3})
exten => _*68.,n,Macro(hangupcall,)
;*69 - Automatic Recall Activation
exten => *69,1,Macro(user-callerid)
exten => *69,2,Answer
exten => *69,3,Wait(1)
exten => *69,4,Background(info-about-last-call)
exten => *69,5,Background(telephone-number)
exten => *69,6,Set(lastcaller=${DB(CALLTRACE/${CALLERID(number)})})
exten => *69,7,GotoIf($[${lastcaller}]?8:14)
exten => *69,8,SayDigits(${lastcaller})
exten => *69,9,Set(TIMEOUT(digit)=3)
exten => *69,10,Set(TIMEOUT(response)=7)
exten => *69,11,Background(to-call-this-number)
exten => *69,12,Background(press-1)
exten => *69,13,Goto(16)
exten => *69,14,Playback(from-unknown-caller)
exten => *69,15,Playback(unidentified-no-callback)
exten => *69,16,Macro(hangupcall)
exten => *69,17,NoOp
exten => 1,1,Goto(from-internal,${lastcaller},1);
exten => i,1,Playback(pbx-invalid)
exten => i,n,Playback(vm-goodbye)
exten => i,n,Macro(hangupcall)
exten => t,1,Playback(vm-goodbye)
exten => t,n,Macro(hangupcall)
;*70 - Call Waiting Activation
exten => *70,1,Set(DB(CW/${CALLERIDNUM}=YES)})
exten => *70,n,Answer
exten => *70,n,Playback(call-waiting)
exten => *70,n,Playback(activated)
exten => *70,n,Hangup
;*71 - Call Waiting Deactivation
exten => *71,1,DBdel(CW/${CALLERIDNUM})
exten => *71,n,Answer
exten => *71,n,Playback(call-waiting)
exten => *71,n,Playback(de-activated)
exten => *71,n,Hangup
;*72 - Call Forwarding Activation
exten => *72,1,Answer
exten => *72,n,Wait(1)
exten => *72,n,Playback(call-fwd-unconditional)
exten => *72,n,Playback(please-enter-your&extension)
exten => *72,n,Read(fromext,then-press-pound,,)
exten => *72,n,Set(fromext=${IF($["foo${fromext}"="foo"]?${CALLERID(number)}:${fromext})})
exten => *72,n,Wait(1)
exten => *72,n(startread),Playback(ent-target-attendant)
exten => *72,n,Read(toext,then-press-pound,,)
exten => *72,n,GotoIf($["foo${toext}"="foo"]?startread)
exten => *72,n,Wait(1)
exten => *72,n,Set(DB(CF/${fromext})=${toext})
exten => *72,n,Playback(call-fwd-unconditional&for&extension)
exten => *72,n,SayDigits(${fromext})
exten => *72,n,Playback(is-set-to)
exten => *72,n,SayDigits(${toext})
exten => *72,n,Macro(hangupcall,)
exten => _*72.,1,Answer
exten => _*72.,n,Wait(1)
exten => _*72.,n,Macro(user-callerid,)
exten => _*72.,n,Set(DB(CF/${CALLERID(number)})=${EXTEN:3})
exten => _*72.,n,Playback(call-fwd-unconditional&for&extension)
exten => _*72.,n,SayDigits(${CALLERID(number)})
exten => _*72.,n,Playback(is-set-to)
exten => _*72.,n,SayDigits(${EXTEN:3})
exten => _*72.,n,Macro(hangupcall,)
;*73 - Call Forwarding Deactivation
exten => *73,1,Answer
exten => *73,n,Wait(1)
exten => *73,n,Macro(user-callerid,)
exten => *73,n,dbDel(CF/${CALLERID(number)})
exten => *73,n,Playback(call-fwd-unconditional&de-activated)
exten => *73,n,Macro(hangupcall,)
exten => _*73,1,Answer
exten => _*73,n,Wait(1)
exten => _*73,n,Set(fromext=${EXTEN:3})
exten => _*73,n,dbDel(CF/${fromext})
exten => _*73,n,Playback(call-fwd-unconditional&for&extension)
exten => _*73,n,SayDigits(${fromext})
exten => _*73,n,Playback(cancelled)
exten => _*73,n,Macro(hangupcall,)
exten => **73,1,Answer
exten => **73,n,Wait(1)
exten => **73,n,Playback(please-enter-your&extension)
exten => **73,n,Read(fromext,then-press-pound,,)
exten => **73,n,Wait(1)
exten => **73,n,dbDel(CF/${fromext})
exten => **73,n,Playback(call-fwd-unconditional&for&extension)
exten => **73,n,SayDigits(${fromext})
exten => **73,n,Playback(cancelled)
exten => **73,n,Macro(hangupcall,)
;*74 - Speed Calling 8 - Change List
;*75 - Speed Calling 30 - Change List
;*76 - Advanced Call Waiting Deluxe
exten => *76,1,Answer
exten => *76,n,Wait(1)
exten => *76,n,Macro(user-callerid)
exten => *76,n,DBdel(ACW/${CALLERID(number)})
exten => *76,n,Playback(selective-call-waiting)
exten => *76,n,Playback(de-activated)
exten => *76,n,Macro(hangupcall)
exten => **76,1,Answer
exten => **76,n,Wait(1)
exten => **76,n,Playback(please-enter-your&extension)
exten => **76,n,Read(fromext,then-press-pound,,)
exten => **76,n,Wait(1)
exten => **76,n,dbDel(ACW/${fromext})
exten => **76,n,Playback(selective-call-waiting&for&extension)
exten => **76,n,SayDigits(${fromext})
exten => **76,n,Playback(cancelled)
exten => **76,n,Macro(hangupcall,)
;*77 - Anonymous Call Rejection Activation
exten => *77,1,Answer
exten => *77,n,Wait(1)
exten => *77,n,Macro(user-callerid)
exten => *77,n,Set(DB(ACR/${CALLERIDNUM}=>YES)
exten => *77,n,Playback(anon-call-rej)
exten => *77,n,Playback(activated)
exten => *77.,n,Macro(hangupcall)
;*78 - Do Not Disturb Activation
exten => *78,1,Answer
exten => *78,n,Wait(1)
exten => *78,n,Macro(user-callerid,)
exten => *78,n,Set(DB(DND/${CALLERIDNUM})=YES)})
exten => *78,n,Wait(.5)
exten => *78,n,Playback(do-not-disturb&activated)
exten => _*82.,n,Macro(hangupcall)
;*79 - Do Not Disturb Deactivation
exten => *79,1,Answer
exten => *79,n,Wait(1)
exten => *79,n,Macro(user-callerid,)
exten => *79,n,DBdel(DND/${CALLERIDNUM})
exten => *79,n,Wait(.5)
exten => *79,n,Playback(do-not-disturb&de-activated)
exten => _*82.,n,Macro(hangupcall)
;*80 - Selective Call Rejection Deactivation aka Blacklist Remove
exten => _*80.,1,Answer
exten => _*80.,n,Wait(1)
exten => _*80.,n,Macro(user-callerid)
exten => _*80.,n,DBdel(BLACKLIST/${CALLERID(number)})
exten => _*80.,n,Playback(blacklist-remove)
exten => _*80.,n,Playback()
exten => _*80.,n,Macro(hangupcall)
;*81 - Distinctive Ringing/Call Waiting Deactivation
;*82 -
;*83 - Selective Call Forwarding Deactivation
exten => *83,1,Answer
exten => *83,n,Wait(1)
exten => *83,n,DBdel(SCF/${CALLERIDNUM})
exten => *83,n,Playback(selective-call-fwd)
exten => *83,n,Wait(1)
exten => *83,n,Playback(deactivated)
exten => *83.,n,Macro(hangupcall)
;*84 - Selective Call Acceptance Deactivation
exten => *84,1,Answer
exten => *84,n,Wait(1)
exten => *84,n,Macro(user-callerid)
exten => *84,n,DBdel(SCA/${CALLERID(number)})
exten => *84,n,Playback(selective-call-accept)
exten => *84,n,Playback(de-activated)
exten => *84,n,Macro(hangupcall)
exten => **84,1,Answer
exten => **84,n,Wait(1)
exten => **84,n,Playback(please-enter-your&extension)
exten => **84,n,Read(fromext,then-press-pound,,)
exten => **84,n,Wait(1)
exten => **84,n,dbDel(SCA/${fromext})
exten => **84,n,Playback(selective-call-accept&for&extension)
exten => **84,n,SayDigits(${fromext})
exten => **84,n,Playback(cancelled)
exten => **84,n,Macro(hangupcall,)
;*85 - Calling Number Delivery Deactivation
exten => *85,1,Answer
exten => *85,n,Wait(1)
exten => *85,n,Macro(user-callerid)
exten => *85,1,DBdel(CIDB/${CALLERIDNUM})
exten => *85,n,Answer
exten => *85,n,Wait(1)
exten => *85,n,Playback(caller-id-blocking&de-activated)
exten => *85,n,Hangup
;n/a *86 - Automatic Callback Deactivation - Reassign
;*87 - Anonymous Call Rejection Deactivation
exten => *87,1,Answer
exten => *87,n,Wait(1)
exten => *87,n,Macro(user-callerid)
exten => *87,n,DBdel(ACR/${CALLERIDNUM})
exten => *87,n,Playback(anon-call-rej)
exten => *87,n,Playback(deactivated)
exten => *87,n,Hangup
;*88 - Call Forwarding Busy Line/Don't Answer Deactivation
exten => *88,1,Answer
exten => *88,n,Wait(1)
exten => *88,n,Macro(user-callerid,)
exten => *88,n,dbDel(CFBDA/${CALLERID(number)})
exten => *88,n,Playback(call-fwd-on-busy&de-activated)
exten => *88,n,Macro(hangupcall,)
exten => _*88.,1,Answer
exten => _*88.,n,Wait(1)
exten => _*88.,n,Set(fromext=${EXTEN:3})
exten => _*88.,n,dbDel(CFB/${fromext})
exten => _*88.,n,Playback(call-fwd-on-busy&for&extension)
exten => _*88.,n,SayDigits(${fromext})
exten => _*88.,n,Playback(cancelled)
exten => _*88.,n,Macro(hangupcall,)
exten => **88,1,Answer
exten => **88,n,Wait(1)
exten => **88,n,Playback(please-enter-your&extension)
exten => **88,n,Read(fromext,then-press-pound,,)
exten => **88,n,Wait(1)
exten => **88,n,dbDel(CFBDA/${fromext})
exten => **88,n,Playback(call-fwd-on-busy&for&extension)
exten => **88,n,SayDigits(${fromext})
exten => **88,n,Playback(cancelled)
exten => **88,n,Macro(hangupcall,)
;n/a *89 - Automatic Recall Deactivation - Reassign
;*90 - Customer Programmable Call Forwarding Busy Line Activation
exten => *90,1,Answer
exten => *90,n,Wait(1)
exten => *90,n,Playback(call-fwd-on-busy)
exten => *90,n,Playback(please-enter-your&extension)
exten => *90,n,Read(fromext,then-press-pound,,)
exten => *90,n,Set(fromext=$/{IF($["foo${fromext}"="foo"]?${CALLERID(number)}:${fromext})})
exten => *90,n,Wait(1)
exten => *90,n,(startread),Playback(ent-target-attendant)
exten => *90,n,Read(toext,then-press-pound,,)
exten => *90,n,GotoIf($["foo${toext}"="foo"]?startread)
exten => *90,n,Wait(1)
exten => *90,n,Set(DB(CPCFB/${fromext})=${toext})
exten => *90,n,Playback(call-fwd-on-busy&for&extension)
exten => *90,n,SayDigits(${fromext})
exten => *90,n,Playback(is-set-to)
exten => *90,n,SayDigits(${toext})
exten => *90,n,Macro(hangupcall,)
exten => _*90.,1,Answer
exten => _*90.,n,Wait(1)
exten => _*90.,n,Macro(user-callerid,)
exten => _*90.,n,Set(DB(CPCFB/${CALLERID(number)})=${EXTEN:3})
exten => _*90.,n,Playback(call-fwd-on-busy&for&extension)
exten => _*90.,n,SayDigits(${CALLERID(number)})
exten => _*90.,n,Playback(is-set-to)
exten => _*90.,n,SayDigits(${EXTEN:3})
exten => _*90.,n,Macro(hangupcall,)
;*91 - Customer Programmable Call Forwarding Busy Line Deactivation
exten => *91,1,Answer
exten => *91,n,Wait(1)
exten => *91,n,Macro(user-callerid,)
exten => *91,n,dbDel(CPCFB/${CALLERID(number)})
exten => *91,n,Playback(call-fwd-on-busy&de-activated)
exten => *91,n,Macro(hangupcall,)
exten => _*91.,1,Answer
exten => _*91.,n,Wait(1)
exten => _*91.,n,Set(fromext=${EXTEN:3})
exten => _*91.,n,dbDel(CPCFB/${fromext})
exten => _*91.,n,Playback(cust-call-fwd-on-busy&for&extension)
exten => _*91.,n,SayDigits(${fromext})
exten => _*91.,n,Playback(cancelled)
exten => _*91.,n,Macro(hangupcall,)
exten => **91,1,Answer
exten => **91,n,Wait(1)
exten => **91,n,Playback(please-enter-your&extension)
exten => **91,n,Read(fromext,then-press-pound,,)
exten => **91,n,Wait(1)
exten => **91,n,dbDel(CPCFB/${fromext})
exten => **91,n,Playback(cust-call-fwd-on-busy&for&extension)
exten => **91,n,SayDigits(${fromext})
exten => **91,n,Playback(cancelled)
exten => **91,n,Macro(hangupcall,)
;*92 - Customer Programmable Call Forwarding Don't Answer Activation
exten => *92,1,Answer
exten => *92,n,Wait(1)
exten => *92,n,Playback(cust-pro-call-fwd-no-ans)
exten => *92,n,Playback(please-enter-your&extension)
exten => *92,n,Read(fromext,then-press-pound,,)
exten => *92,n,Set(fromext=$/{IF($["foo${fromext}"="foo"]?${CALLERID(number)}:${fromext})})
exten => *92,n,Wait(1)
exten => *92,n(startread),Playback(ent-target-attendant)
exten => *92,n,Read(toext,then-press-pound,,)
exten => *92,n,GotoIf($["foo${toext}"="foo"]?startread)
exten => *92,n,Wait(1)
exten => *92,n,Set(DB(CPCFN/${fromext})=${toext})
exten => *92,n,Playback(call-fwd-no-ans&for&extension)
exten => *92,n,SayDigits(${fromext})
exten => *92,n,Playback(is-set-to)
exten => *92,n,SayDigits(${toext})
exten => *92,n,Macro(hangupcall,)
exten => _*92.,1,Answer
exten => _*92.,n,Wait(1)
exten => _*92.,n,Macro(user-callerid,)
exten => _*92.,n,Set(DB(CPCFNA/${CALLERID(number)})=${EXTEN:3})
exten => _*92.,n,Playback(call-fwd-no-ans&for&extension)
exten => _*92.,n,SayDigits(${CALLERID(number)})
exten => _*92.,n,Playback(is-set-to)
exten => _*92.,n,SayDigits(${EXTEN:3})
exten => _*92.,n,Macro(hangupcall,)
;*93 - Customer Programmable Call Forwarding Don't Answer Deactivation
exten => *93,1,Answer
exten => *93,n,Wait(1)
exten => *93,n,Macro(user-callerid,)
exten => *53,n,dbDel(CPCFNA/${CALLERID(number)})
exten => *53,n,Playback(call-fwd-no-ans&de-activated)
exten => *93,n,Macro(hangupcall,)
exten => _*93.,1,Answer
exten => _*93.,n,Wait(1)
exten => _*93.,n,Set(fromext=${EXTEN:3})
exten => _*93.,n,dbDel(CPCFN/${fromext})
exten => _*93.,n,Playback(cust-pro-call-fwd-no-ans&for&extension)
exten => _*93.,n,SayDigits($/{fromext/})
exten => _*93.,n,Playback(cancelled)
exten => _*93.,n,Macro(hangupcall,)
exten => **93,1,Answer
exten => **93,n,Wait(1)
exten => **93,n,Playback(please-enter-your&extension)
exten => **93,n,Read(fromext,then-press-pound,,)
exten => **93,n,Wait(1)
exten => **93,n,dbDel(CPCFNA/${fromext})
exten => **93,n,Playback(cust-pro-call-fwd-unconditional&for&extension)
exten => **93,n,SayDigits(${fromext})
exten => **93,n,Playback(cancelled)
exten => **93,n,Macro(hangupcall,)
;*96 Voicemail Acivate/Deactivate
exten => *96,1,Answer
exten => *96,n,Wait(1)
exten => *96,n,Macro(user-callerid,)
exten => *96,n,DBdel(VM/${CALLERIDNUM})
exten => *96,n,Wait(1)
exten => *96,n,Playback(deactivated)
exten => *96,n,Hangup
exten => **96,1,Answer
exten => **96,n,Wait(1)
exten => **96,n,Macro(user-callerid,)
exten => **96,n,Set(DB(VM/${CALLERIDNUM})=YES)})
exten => **96,n,Wait(.5)
exten => **96,n,Playback(activated)
exten => **96,n,Hangup
;*97
exten => *97,1,Answer
exten => *97,n,Wait(1)
exten => *97,n,Macro(user-callerid,)
exten => *97,n,Macro(get-vmcontext,${CALLERID(num)})
exten => *97,n,VoiceMailMain(${CALLERID(num)}@${VMCONTEXT})
exten => *97,n,Macro(hangupcall,)
;*98
exten => *98,1,Answer
exten => *98,n,Wait(1)
exten => *98,n,VoiceMailMain()
exten => *98,n,Macro(hangupcall,)
exten => _*98.,1,Answer
exten => _*98.,n,Wait(1)
exten => _*98.,n,Macro(get-vmcontext,${EXTEN:3})
exten => _*98.,n,VoiceMailMain(${EXTEN:3}@${VMCONTEXT})
exten => _*98.,n,Macro(hangupcall,)
;211 Community Information and Referral Services ; Available for Reassignment
;211 - Reassigned to Paging / All Call
;exten => 211,1,
;exten => 211,n,
;exten => 211,n,
;exten => 211,n,
;311 - non-emerg not yet setup for Non Emerg
exten => 311,1,Macro(user-callerid,)
exten => 311,2,Dial(LOCAL/local non emergancy nmbr here)
exten => 311,3,Congestion
exten => 311,102,Playback(ss-noservice)
exten => 311,103,Congestion
; 411 - Information services
;External-411
exten => 411,1,Macro(user-callerid,)
exten => 411,2,Dial(IAX2/darwin@teliax/3035551212,30)
exten => 411,3,Congestion
exten => 411,102,Playback(ss-noservice)
exten => 411,n,hangup
;Internal-411
exten => #411,1,Wait(1)
exten => #411,n,AGI(directory,$/{DIR-CONTEXT/},ext-local,$/{DIRECTORY:0:1/}$/{DIRECTORY_OPTS/}o)
exten => #411,n,Playback(vm-goodbye)
exten => #411,n,Hangup
;511 Traffic and Transportation Information (US); Available for Reassignment
;511 - Reassigned to Call back Wake service
exten => 511,1,Macro(user-callerid,)
exten => 511,n,Answer
exten => 511,n,AGI(wakeup.php)
exten => 511,n,Hangup
; 611 - RepairService / TechSupport
exten => 611,1,Macro(user-callerid,)
exten => 611,n,Answer
exten => 611,n,Playback(tech-support)
exten => 611,n,Playback(for-quality-purposes)
exten => 611,n,Playback(this-call-may-be)
exten => 611,n,Playback(recorded)
exten => 611,n,Playback,(pls-wait-connect-call)
exten => 611,7,SetMusicOnHold,default
exten => 611,10,Goto,queues|103|1
exten => 611,11,Goto,queues|104|1
; 711 - State Relay TTY/TDD/Voice Service
exten => 711,1,Macro(user-callerid,)
exten => 711,n,Answer
;exten => 711,n,Dial(SIP/${EXTEN})
;exten => 711,n,Congestion
exten => 711,n,Playback(ss-noservice)
exten => 711,n,Congestion
exten => 711,n,Macro(hangupcall)
;Access to One Call Services to Protect Pipeline and Utilities from Excavation
;Damage (US); Available for Reassignment
;811 - Reassigned to quick-dial TollFree Directory
exten => 811,1,Macro(user-callerid,)
exten => 811,n,Dial(IAX2/user@provider/8005551212,30,r)
exten => 811,n,Hangup
; 911 Emergancy
exten => 911,1,Macro(user-callerid,)
exten => 911,n,Answer
;exten => 911,n,Dial(SIP/${EXTEN})
;exten => 911,n,Congestion
exten => 911,n,Playback(no-911-1)
exten => 911,n,Congestion
exten => 911,n,Macro(hangupcall)
; 900/976 Blocking -
[blocked]
exten => _900NXXXXXX,1,Playback(ss-noservice)
exten => _1NXX976XXXX,1,Playback(ss-noservice)
exten => _NXX976XXXX,1,Playback(ss-noservice)
exten => _976XXXX,1,Playback(ss-noservice)