kit/asterisk/conf/extensions.conf

103 lines
2.9 KiB
Plaintext

; /etc/asterisk/extensions.conf
; Remember, context names for each SIP account are specified in pjsip_wizard.conf.
; First, some safeguards against abuse of the built-in contexts.
[default]
exten => s,1,Verbose(1, "INFO ${CALLERID(num)} was passed to default.")
same => n,Hangup(3)
[globals]
; trunk caller IDs.
TRUNK_ONE_CID = +442012345678
TRUNK_TWO_CID = +442087456210
; Default queue
QUEUE_ONE = queue-one
[subscribe]
exten => _X.,hint,PJSIP/${EXTEN}
[from-trunk-one]
exten => s,1,Queue(${QUEUE_ONE},nr,,,50)
; same => n,Answer(500)
; same => n,Voicemail(${VOICEMAIL_BOX},su)
same => n,Hangup()
[outbound-one]
exten => _X.,1,Verbose(1, "INFO: using ${TRUNK_ONE_CID} for call to ${EXTEN}.")
same => n,Set(CALLERID(all)=${TRUNK_ONE_CID})
same => n,Dial(PJSIP/${EXTEN}@trunk-one)
same => n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?outbound-two,${EXTEN},1)
same => n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?outbound-two,${EXTEN},1)
same => n,Hangup()
[outbound-two]
exten => _X.,1,Verbose(1, "INFO: using ${TRUNK_TWO_CID} for call to ${EXTEN}.")
same => n,Set(CALLERID(all)=${TRUNK_TWO_CID})
same => n,Dial(PJSIP/${EXTEN}@trunk-two)
same => n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?default,s,1)
same => n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?default,s,1)
same => n,Hangup()
[app-lastcallreturn]
exten => 1471,1,Verbose(1, "${CALLERID(num)} dialed app-lastcallreturn.")
same => Wait(1)
same => n,Answer(1)
same => n,Playback(last-num-to-call)
same => n,Set(number=${DB(lastcaller/${CALLERID(num)})})
same => n,GotoIf($["${number}" = ""]?s-nonum,1)
same => n,SayDigits(${number})
same => n,Wait(2)
same => n,SayDigits(${number})
same => n,Wait(1)
same => n,Playback(to-call-num-press)
same => n,Playback(digits/1)
same => n,Wait(60)
same => n,Hangup(3)
exten => 1,1,Goto(outbound-one,${number},1)
same => n,Hangup()
exten => s-nonum,1,Playback(unidentified-no-callback)
same => n,Hangup(3)
[app-vm]
exten = 1571,1,Verbose(1, "${CALLERID(num)} dialed the voicemail feature.")
same = n,VoiceMailMain(${CALLERID(num)}@default,s)
same = n,Hangup()
[from-ext]
exten => 123,1,Goto(i,1)
same => n,Hangup()
exten => 1471,1,Goto(app-lastcallreturn,${EXTEN},1)
same => n,Hangup()
exten => 1571,1,Goto(app-vm,${EXTEN},1)
same => n,Hangup()
exten => _XX.,1,Goto(outbound-one,${EXTEN},1)
same => n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?outbound-two,${EXTEN},1)
same => n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?outbound-two,${EXTEN},1)
same => n,Hangup()
exten => i,1,Answer(1)
same => n,PlayTones(info)
same => n,Wait(2)
same => n,Playback(cannot-complete-as-dialed&check-number-dial-again)
same => n,PlayTones(info)
same => n,Wait(1)
same => n,Playback(cannot-complete-as-dialed&check-number-dial-again)
same => n,PlayTones(info)
same => n,Hangup()
[to-ext]
exten => s,1,Set(DB(lastcaller/${EXTEN})=${CALLERID(num)})
same => n,Dial(PJSIP/${EXTEN})
same => n,Hangup()