rendered paste body***************ZAPATA.CONF****************************
[trunkgroups]
[channels]
context=default
switchtype=national
signalling=fxo_ls
rxwink=300 ; Atlas seems to use long (250ms) winks
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes
rxgain=0.0
txgain=0.0
group=1
callgroup=1
pickupgroup=1
immediate=no
;Lines from Internal
signalling = fxo_ks
channel => 1,2,3,4
;Lines from PSTN
signalling = fxs_ks
channel => 5,6,7,8
****************extensions.conf*********************
[general]
static=yes
writeprotect=no
clearglobalvars=no
[globals]
CONSOLE = Console/dsp
IAXINFO = guest
TRUNK = Zap/g2
[dundi-e164-canonical]
[dundi-e164-local]
include => dundi-e164-canonical
include => dundi-e164-customers
include => dundi-e164-via-pstn
[dundi-e164-switch]
switch => DUNDi/e164
[dundi-e164-lookup]
include => dundi-e164-local
include => dundi-e164-switch
[macro-dundi-e164]
exten => s,1,Goto(${ARG1},1)
include => dundi-e164-lookup
[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${GLOBAL(IAXINFO)}@iaxtel.com/${EXTEN:1}@iaxtel)
[iaxprovider]
[trunkint]
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
[trunkld]
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
[trunklocal]
exten => _9NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
[trunktollfree]
exten => _91800NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
exten => _91888NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
exten => _91877NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
exten => _91866NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
[international]
;
; Master context for international long distance
;
ignorepat => 9
include => longdistance
include => trunkint
[longdistance]
;
; Master context for long distance
;
ignorepat => 9
include => local
include => trunkld
[local]
ignorepat => 9
include => default
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider
include => parkedcalls
[macro-trunkdial]
exten => s,1,Dial(${ARG1})
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Hangup
exten => s-BUSY,1,Hangup
exten => _s-.,1,NoOp
[macro-stdexten];
exten => s,1,Dial(${ARG2},20) ; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => s-NOANSWER,1,Voicemail(${ARG1},u) ; 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(${ARG1},b) ; 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
exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain
[macro-stdPrivacyexten];
exten => s,1,Dial(${ARG2},20|p) ; Ring the interface, 20 seconds maximum, call screening
; option (or use P for databased call screening)
exten => s,2,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => s-NOANSWER,1,Voicemail(${ARG1},u) ; 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(${ARG1},b) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1) ; If they press #, return to start
exten => s-DONTCALL,1,Goto(${ARG3},s,1) ; Callee chose to send this call to a polite "Don't call again" script.
exten => s-TORTURE,1,Goto(${ARG4},s,1) ; Callee chose to send this call to a telemarketer torture script.
exten => _s-.,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer
exten => a,1,VoicemailMain(${ARG1}) ; If they press *, send the user into VoicemailMain
[macro-page]
exten => s,1,ChanIsAvail(${ARG1}|js) ; j is for Jump and s is for ANY call
exten => s,n,GoToIf([${AVAILSTATUS} = "1"]?autoanswer:fail)
exten => s,n(autoanswer),Set(_ALERT_INFO="RA") ; This is for the PolyComs
exten => s,n,SIPAddHeader(Call-Info: Answer-After=0) ; This is for the Grandstream, Snoms, and Others
exten => s,n,NoOp() ; Add others here and Post on the Wiki!!!!
exten => s,n,Dial(${ARG1}||)
exten => s,n(fail),Hangup
[demo]
[page]
exten => _X.,1,Macro(page,SIP/${EXTEN})
[default]
exten => 850,1,VoiceMailMain
exten => 8500,n,Hangup
include => voicemenu-custom-1
exten = 500,1,Queue(${EXTEN})
[voicemenu-custom-1]
comment = mainmenu
exten = s,1,Answer
exten = s,2,Background(thank-you-for-calling)
exten = s,3,Background(if-u-know-ext-dial)
exten = s,4,Background(otherwise)
exten = s,5,Background(pls-hold-while-try)
exten = s,6,Background(to-reach-operator)
include = default
[numberplan-custom-1]
plancomment = DialPlan1
include = default
exten = _91XXXXXXXXXX.,1,Macro(trunkdial,${trunk_1}/${EXTEN:1})
comment = _91XXXXXXXXXX.,1,Longdistance,standard
exten = _9256XXXXXXX.,1,Macro(trunkdial,${trunk_1}/${EXTEN:4})
comment = _9256XXXXXXX.,1,Local,standard
exten = _9011XXXXXXX.,1,Macro(trunkdial,${trunk_1}/${EXTEN:1})
comment = _9011XXXXXXX.,1,International,standard
exten = _9XXXXXXX.,1,Macro(trunkdial,${trunk_1}/${EXTEN:1})
comment = _9XXXXXXX.,1,Local,standard
exten = _911.,1,Macro(trunkdial,${trunk_1}/${EXTEN:0})
comment = _911.,1,911,standard
[asterisk_guitools]
exten = executecommand,1,System(${command})
exten = executecommand,n,Hangup()
exten = record_vmenu,1,Answer
exten = record_vmenu,n,Playback(vm-intro)
exten = record_vmenu,n,Record(${var1})
exten = record_vmenu,n,Playback(vm-saved)
exten = record_vmenu,n,Playback(vm-goodbye)
exten = record_vmenu,n,Hangup
exten = play_file,1,Answer
exten = play_file,n,Playback(${var1})
exten = play_file,n,Hangup
hasbeensetup = N
[DID_trunk_1]
include = default
exten = _X.,1,Goto(default|114|1)
exten = s,1,Goto(default|114|1)
*************************CLI OUTPUT***********************
-- Executing [919163405796@numberplan-custom-1:1] Macro("SIP/114-08232ed0", "trunkdial|Zap/g1/19163405796") in new stack
-- Executing [s@macro-trunkdial:1] Dial("SIP/114-08232ed0", "Zap/g1/19163405796") in new stack
-- Called g1/19163405796
-- Zap/5-1 answered SIP/114-08232ed0
[May 22 11:25:54] WARNING[3479]: codec_gsm.c:144 gsmtolin_framein: Invalid GSM data (1)
[May 22 11:25:54] WARNING[3479]: translate.c:197 framein: gsmtolin did not update samples 0
[May 22 11:25:54] WARNING[3479]: codec_gsm.c:144 gsmtolin_framein: Invalid GSM data (1)
[May 22 11:25:54] WARNING[3479]: translate.c:197 framein: gsmtolin did not update samples 0
[May 22 11:25:55] WARNING[3479]: codec_gsm.c:144 gsmtolin_framein: Invalid GSM data (1)
[May 22 11:25:55] WARNING[3479]: translate.c:197 framein: gsmtolin did not update samples 0
-- Hungup 'Zap/5-1'
== Spawn extension (macro-trunkdial, s, 1) exited non-zero on 'SIP/114-08232ed0' in macro 'trunkdial'
== Spawn extension (macro-trunkdial, s, 1) exited non-zero on 'SIP/114-08232ed0'