no outbound I cannot make outgoing call tdm400p

Get help with installing, upgrading and running Asterisk.

Moderators: muppetmaster, Moderator, Support

no outbound I cannot make outgoing call tdm400p

Postby 2k3t » Fri Nov 04, 2005 9:18 pm

I cannot make outbound calls on my asterisk setup. I am using a tdm400p
with 4 fxo modules.

When i dial out i hear silence then a click then a busy signal.

From the cli output it looks like it's dialing the number even though i don't hear it ring and then hanging up.
Any suggestions would be greatly appreciated. I am up against the wall on this one.

Connected to Asterisk 1.0.9 currently running on asterisk1 (pid = 1042)
Verbosity is at least 3
-- Executing Macro("SIP/202-65cd", "dialout-trunk|1|9229490|") in new stack
-- Executing GotoIf("SIP/202-65cd", "1?3:2)") in new stack
-- Goto (macro-dialout-trunk,s,3)
-- Executing Macro("SIP/202-65cd", "record-enable|202|OUT") in new stack
-- Executing GotoIf("SIP/202-65cd", "0 > 0?2:4") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing GotoIf("SIP/202-65cd", "1?5:8") in new stack
-- Goto (macro-record-enable,s,5)
-- Executing DBget("SIP/202-65cd", "RecEnable=RECORD-OUT/202") in new stack
-- DBget: varname=RecEnable, family=RECORD-OUT, key=202
-- DBget: Value not found in database.
-- Executing SetVar("SIP/202-65cd", "CALLFILENAME=OUT202-20051104-192357-1131150237.4") in new stack
-- Executing Goto("SIP/202-65cd", "s|14") in new stack
-- Goto (macro-record-enable,s,14)
-- Executing GotoIf("SIP/202-65cd", "0?15:99") in new stack
-- Goto (macro-record-enable,s,99)
-- Executing NoOp("SIP/202-65cd", "NO RECORDING NEEDED") in new stack
-- Executing GotoIf("SIP/202-65cd", "1?7") in new stack
-- Goto (macro-dialout-trunk,s,7)
-- Executing GotoIf("SIP/202-65cd", "1?9") in new stack
-- Goto (macro-dialout-trunk,s,9)
-- Executing SetGroup("SIP/202-65cd", "OUT_1") in new stack
-- Executing CheckGroup("SIP/202-65cd", "4") in new stack
-- Executing SetVar("SIP/202-65cd", "DIAL_NUMBER=9229490") in new stack
-- Executing SetVar("SIP/202-65cd", "DIAL_TRUNK=1") in new stack
-- Executing AGI("SIP/202-65cd", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
-- AGI Script fixlocalprefix completed, returning 0
-- Executing SetVar("SIP/202-65cd", "OUTNUM=p9229490") in new stack
-- Executing Cut("SIP/202-65cd", "custom=OUT_1|:|1") in new stack
-- Executing GotoIf("SIP/202-65cd", "0?19") in new stack
-- Executing Dial("SIP/202-65cd", "ZAP/g0/p9229490") in new stack
-- Called g0/p9229490
-- Zap/1-1 answered SIP/202-65cd
-- Hungup 'Zap/1-1'
== Spawn extension (macro-dialout-trunk, s, 17) exited non-zero on 'SIP/202-65cd' in macro 'dialout-trunk'
== Spawn extension (from-internal, 99229490, 1) exited non-zero on 'SIP/202-65cd'
-- Executing Macro("SIP/202-65cd", "hangupcall") in new stack
-- Executing ResetCDR("SIP/202-65cd", "w") in new stack
-- Executing NoCDR("SIP/202-65cd", "") in new stack
-- Executing Wait("SIP/202-65cd", "5") in new stack
-- Executing Hangup("SIP/202-65cd", "") in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/202-65cd' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/202-65cd'
-- Executing Macro("SIP/202-ad7b", "dialout-trunk|1|7327425|") in new stack
-- Executing GotoIf("SIP/202-ad7b", "1?3:2)") in new stack
-- Goto (macro-dialout-trunk,s,3)
-- Executing Macro("SIP/202-ad7b", "record-enable|202|OUT") in new stack
-- Executing GotoIf("SIP/202-ad7b", "0 > 0?2:4") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing GotoIf("SIP/202-ad7b", "1?5:8") in new stack
-- Goto (macro-record-enable,s,5)
-- Executing DBget("SIP/202-ad7b", "RecEnable=RECORD-OUT/202") in new stack
-- DBget: varname=RecEnable, family=RECORD-OUT, key=202
-- DBget: Value not found in database.
-- Executing SetVar("SIP/202-ad7b", "CALLFILENAME=OUT202-20051104-192432-1131150272.6") in new stack
-- Executing Goto("SIP/202-ad7b", "s|14") in new stack
-- Goto (macro-record-enable,s,14)
-- Executing GotoIf("SIP/202-ad7b", "0?15:99") in new stack
-- Goto (macro-record-enable,s,99)
-- Executing NoOp("SIP/202-ad7b", "NO RECORDING NEEDED") in new stack
-- Executing GotoIf("SIP/202-ad7b", "1?7") in new stack
-- Goto (macro-dialout-trunk,s,7)
-- Executing GotoIf("SIP/202-ad7b", "1?9") in new stack
-- Goto (macro-dialout-trunk,s,9)
-- Executing SetGroup("SIP/202-ad7b", "OUT_1") in new stack
-- Executing CheckGroup("SIP/202-ad7b", "4") in new stack
-- Executing SetVar("SIP/202-ad7b", "DIAL_NUMBER=7327425") in new stack
-- Executing SetVar("SIP/202-ad7b", "DIAL_TRUNK=1") in new stack
-- Executing AGI("SIP/202-ad7b", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
-- AGI Script fixlocalprefix completed, returning 0
-- Executing SetVar("SIP/202-ad7b", "OUTNUM=p7327425") in new stack
-- Executing Cut("SIP/202-ad7b", "custom=OUT_1|:|1") in new stack
-- Executing GotoIf("SIP/202-ad7b", "0?19") in new stack
-- Executing Dial("SIP/202-ad7b", "ZAP/g0/p7327425") in new stack
-- Called g0/p7327425
-- Hungup 'Zap/1-1'
== Spawn extension (macro-dialout-trunk, s, 17) exited non-zero on 'SIP/202-ad7b' in macro 'dialout-trunk'
== Spawn extension (from-internal, 7327425, 1) exited non-zero on 'SIP/202-ad7b'
-- Executing Macro("SIP/202-ad7b", "hangupcall") in new stack
-- Executing ResetCDR("SIP/202-ad7b", "w") in new stack
-- Executing NoCDR("SIP/202-ad7b", "") in new stack
-- Executing Wait("SIP/202-ad7b", "5") in new stack
== Spawn extension (macro-hangupcall, s, 3) exited non-zero on 'SIP/202-ad7b' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/202-ad7b'
asterisk1*CLI>
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby zmanea » Fri Nov 04, 2005 10:03 pm

There is probably a delay on the line. Add ww to the beginning of your extension. IE:

exten => _9.,1,Dial(Zap/g1/ww${EXTEN})
exten => _9.,2,Hangup
zmanea
Oldsterisk
 
Posts: 376
Joined: Thu Dec 21, 2006 10:56 pm

no outbound I cannot make outgoing call tdm400p

Postby 2k3t » Fri Nov 04, 2005 10:49 pm

Already tried that

both the "p's" and the "w's"

2 and 3 at a time
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby zmanea » Sat Nov 05, 2005 9:32 am

Hook up a butt set, or daisy chain a plain old phone, and listen to what is going on. Is there dialtone? Is Asterisk dailing before, or mid, dialtone?
zmanea
Oldsterisk
 
Posts: 376
Joined: Thu Dec 21, 2006 10:56 pm

no outbound I cannot make outgoing call tdm400p

Postby 2k3t » Sat Nov 05, 2005 9:54 am

It's dialing mid tone


I saw something about impedence problems possiably being the issue any thoughts?
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby baconbuttie » Sat Nov 05, 2005 10:02 am

where in the world are you ? are you loading the right tonezone for your location ? what does zapata.conf look like ?

can you post the contents of your /var/asterisk/log/full (with debug on) for an attempted call ?
baconbuttie
Moves Like Spencer
 
Posts: 2657
Joined: Tue May 16, 2006 6:32 am
Location: Forest of Dean, Gloucestershire, UK.

Postby 2k3t » Sat Nov 05, 2005 12:51 pm

when i dialed out listing to the line on the othere phone it dials correctly

and the phone rings now after a second or two the sip phone comes back with a busy but the phone hooked up on the line is still ringing

So it is dialing correctly the system is returning a busy signal not the actual phone line.


I"ll post my extention config and zapta config in my next post

Thnaks guys

Marcus
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Sat Nov 05, 2005 12:53 pm

extentions config

; Asterisk Management Portal (AMP)
; Copyright (C) 2004 Coalescent Systems Inc

; dialparties.agi (http://www.sprackett.com/asterisk/)
; Asterisk::AGI (http://asterisk.gnuinter.net/)
; gsm (http://www.ibiblio.org/pub/Linux/utils/ ... short.html)
; loligo sounds (http://www.loligo.com/asterisk/sounds/)
; mpg123 (http://voip-info.org/wiki-Asterisk+conf ... nhold.conf)


; include extension contexts generated from AMP
#include extensions_additional.conf

; Customizations to this dialplan should be made in extensions_custom.conf
; See extensions_custom.conf.sample for an example
#include extensions_custom.conf

[from-trunk] ; just an alias since VoIP shouldn't be called PSTN
include => from-pstn

[from-pstn]
include => from-pstn-custom ; create this context in extensions_custom.conf to include customizations
include => ext-did
include => from-pstn-timecheck ; this has to be included otherwise it overrides ext-did

[from-pstn-timecheck]
exten => .,1,Goto(s,1) ; catch-all matching for calls that have DID info (if a DID route hasn't matched them)
exten => s,1,GotoIf($[${IN_OVERRIDE} = forcereghours]?from-pstn-reghours,s,1:)
exten => s,2,GotoIf($[${IN_OVERRIDE} = forceafthours]?from-pstn-afthours,s,1:)
exten => s,3,GotoIfTime(${REGTIME}|${REGDAYS}|*|*?from-pstn-reghours,s,1:)
exten => s,4,Goto(from-pstn-afthours,s,1)

[from-pstn-reghours]
exten => s,1,GotoIf($[${FAX_RX} = disabled]?from-pstn-reghours-nofax,s,1:2) ; if fax detection is disabled, then jump to from-pstn-nofax - else continue
exten => s,2,Answer
exten => s,3,Wait(1)
exten => s,4,SetVar(intype=${INCOMING})
exten => s,5,Cut(intype=intype,-,1)
exten => s,6,GotoIf($[${intype} = EXT]?7:9) ; If INCOMING starts with EXT, then assume its an extension
exten => s,7,Wait(3) ;wait 3 more second to make sure this isn't a fax before dialing someone
exten => s,8,Goto(ext-local,${INCOMING:4},1)
exten => s,9,GotoIf($[${intype} = GRP]?10:12) ; If INCOMING starts with GRP, then assume its a ring group
exten => s,10,Wait(3)
exten => s,11,Goto(ext-group,${INCOMING:4},1)
exten => s,12,GotoIf($[${intype} = QUE]?13:15)
exten => s,13,Wait(3)
exten => s,14,Goto(ext-queues,${INCOMING:4},1)
exten => s,15,Goto(${INCOMING},s,1) ; not EXT or GR1 - it's an auto attendant
exten => fax,1,Goto(ext-fax,in_fax,1)
exten => h,1,Hangup

[from-pstn-reghours-nofax]
exten => s,1,SetVar(intype=${INCOMING})
exten => s,2,Cut(intype=intype,-,1)
exten => s,3,GotoIf($[${intype} = EXT]?4:5) ; If INCOMING starts with EXT, then assume its an extension
exten => s,4,Goto(ext-local,${INCOMING:4},1)
exten => s,5,GotoIf($[${intype} = GRP]?6:7) ; If INCOMING starts with GRP, then assume its a ring group
exten => s,6,Goto(ext-group,${INCOMING:4},1)
exten => s,7,GotoIf($[${intype} = QUE]?8:11) ;queue
exten => s,8,Answer ; answer call before queue
exten => s,9,Wait(1)
exten => s,10,Goto(ext-queues,${INCOMING:4},1)
exten => s,11,Answer ; answer call before auto attendant
exten => s,12,Wait(1)
exten => s,13,Goto(${INCOMING},s,1) ; not EXT or GR1 - it's an auto attendant
exten => fax,1,Goto(ext-fax,in_fax,1)
exten => h,1,Hangup

[from-pstn-afthours]
exten => s,1,GotoIf($[${FAX_RX} = disabled]?from-pstn-afthours-nofax,s,1:2) ; if fax detection is disabled, then jump to from-pstn-nofax - else continue
exten => s,2,Answer
exten => s,3,Wait(1)
exten => s,4,SetVar(intype=${AFTER_INCOMING})
exten => s,5,Cut(intype=intype,-,1)
exten => s,6,GotoIf($[${intype} = EXT]?7:9) ; If INCOMING starts with EXT, then assume its an extension
exten => s,7,Wait(3) ;wait 3 more second to make sure this isn't a fax before dialing someone
exten => s,8,Goto(ext-local,${AFTER_INCOMING:4},1)
exten => s,9,GotoIf($[${intype} = GRP]?10:12) ; If INCOMING starts with GRP, then assume its a ring group
exten => s,10,Wait(3)
exten => s,11,Goto(ext-group,${AFTER_INCOMING:4},1)
exten => s,12,GotoIf($[${intype} = QUE]?13:15)
exten => s,13,Wait(3)
exten => s,14,Goto(ext-queues,${AFTER_INCOMING:4},1)
exten => s,15,Goto(${AFTER_INCOMING},s,1) ; not EXT or GR1 - it's an auto attendant
exten => fax,1,Goto(ext-fax,in_fax,1)
exten => h,1,Hangup

[from-pstn-afthours-nofax]
exten => s,1,SetVar(intype=${AFTER_INCOMING})
exten => s,2,Cut(intype=intype,-,1)
exten => s,3,GotoIf($[${intype} = EXT]?4:5) ; If INCOMING starts with EXT, then assume its an extension
exten => s,4,Goto(ext-local,${AFTER_INCOMING:4},1)
exten => s,5,GotoIf($[${intype} = GRP]?6:7) ; If INCOMING starts with GRP, then assume its a ring group
exten => s,6,Goto(ext-group,${AFTER_INCOMING:4},1)
exten => s,7,GotoIf($[${intype} = QUE]?8:11) ;queue
exten => s,8,Answer ; answer call before queue
exten => s,9,Wait(1)
exten => s,10,Goto(ext-queues,${AFTER_INCOMING:4},1)
exten => s,11,Answer ; answer call before auto attendant
exten => s,12,Wait(1)
exten => s,13,Goto(${AFTER_INCOMING},s,1) ; not EXT or GR1 - it's an auto attendant
exten => fax,1,Goto(ext-fax,in_fax,1)
exten => h,1,Hangup

; ############################################################################
; Macros [macro]
; ############################################################################

; Rings one or more extensions. Handles things like call forwarding and DND
; We don't call dial directly for anything internal anymore.
; ARGS: $TIMER, $OPTIONS, $EXT1, $EXT2, $EXT3, ...
; Use a Macro call such as the following:
; Macro(dial,$DIAL_TIMER,$DIAL_OPTIONS,$EXT1,$EXT2,$EXT3,...)
[macro-dial]
exten => s,1,GotoIf($[ "${MACRO_CONTEXT}" = "macro-rg-group" ]?4:2) ; if this is from rg-group, don't strip prefix
exten => s,2,GotoIf($[${CALLERIDNAME:0:${LEN(${RGPREFIX})}} != ${RGPREFIX}]?4:3) ; check for ring-group prefix
exten => s,3,SetCIDName(${CALLERIDNAME:${LEN(${RGPREFIX})}}) ; strip off prefix
exten => s,4,AGI,dialparties.agi
exten => s,5,NoOp(Returned from dialparties with no extensions to call)
exten => s,6,SetVar(DIALSTATUS=BUSY)
exten => s,10,Dial(${ds}) ; dialparties will set the priority to 10 if $ds is not null

; Ring an extension, if the extension is busy or there is no answer send it
; to voicemail
; ARGS: $VMBOX, $EXT
[macro-exten-vm]
exten => s,1,Setvar(FROMCONTEXT=exten-vm)
exten => s,2,Macro(record-enable,${ARG2},IN)
exten => s,3,Macro(dial,${RINGTIMER},${DIAL_OPTIONS},${ARG2})
exten => s,4,GotoIf($[${CHANNEL:0:5} = Local]?s-${DIALSTATUS},1) ; if the channel is Local, then do not go to voicemail. This is primarily to avoid vm for call-forwarded extensions in ring groups
exten => s,5,GotoIf($[${ARG1} = novm]?s-${DIALSTATUS},1) ; no voicemail in use for this extension
exten => s,6,NoOp(Sending to Voicemail box ${ARG1})
exten => s,7,Macro(vm,${ARG1},${DIALSTATUS})
exten => s-BUSY,1,NoOp(Extension is reporting BUSY and has no Voicemail)
exten => s-BUSY,2,Busy()
exten => s-BUSY,3,Wait(60)
exten => s-BUSY,4,NoOp()
exten => _s-.,1,Congestion()

[macro-vm]
exten => s,1,Goto(s-${ARG2},1)
exten => s-BUSY,1,Voicemail(b${ARG1}) ; Voicemail Busy message
exten => s-BUSY,2,Hangup()
exten => _s-.,1,Voicemail(u${ARG1}) ; Voicemail Unavailable message
exten => _s-.,2,Hangup()
exten => o,1,Background(one-moment-please) ; 0 during vm message will hangup
exten => o,2,GotoIf($["foo${FROM_DID}" = "foo"]?from-pstn,s,1:from-pstn,${FROM_DID},1)
exten => a,1,VoiceMailMain(${ARG1})
exten => a,2,Hangup

; For some reason, if I don't run setCIDname, CALLERIDNAME will be blank in my AGI
; ARGS: none
[macro-fixcid]
exten => s,1,SetCIDName(${CALLERIDNAME})

; Ring groups of phones
; ARGS: comma separated extension list
; 1 - ringtimer
; 2 - preifx
; 3 - extension list
[macro-rg-group]
exten => s,1,GotoIf($[${CALLERIDNAME:0:${LEN(${RGPREFIX})}} != ${RGPREFIX}]?3:2) ; check for old prefix
exten => s,2,SetCIDName(${CALLERIDNAME:${LEN(${RGPREFIX})}}) ; strip off old prefix
exten => s,3,Setvar(RGPREFIX=${ARG2}) ; set new prefix
exten => s,4,SetCIDName(${RGPREFIX}${CALLERIDNAME}) ; add prefix to callerid name
exten => s,5,Setvar(RecordMethod=Group) ; set new prefix
exten => s,6,Macro(record-enable,${MACRO_EXTEN},${RecordMethod})
exten => s,7,Macro(dial,${ARG1},${DIAL_OPTIONS},${ARG3})


;exten => s,1,GotoIf($[${CALLERIDNAME:0:${LEN(${RGPREFIX})}} != ${RGPREFIX}]?3:2) ; check for old prefix
;exten => s,2,SetCIDName(${CALLERIDNAME:${LEN(${RGPREFIX})}}) ; strip off old prefix
;exten => s,3,Setvar(RGPREFIX=${ARG2}) ; set new prefix
;;exten => s,4,Noop(${RGPREFIX} ${CALLERIDNAME})
;exten => s,4,SetCIDName(${RGPREFIX}${CALLERIDNAME}) ; add prefix to callerid name
;;exten => s,6,Noop(Dial group ${ARG3})
;exten => s,5,Macro(dial,${ARG1},${DIAL_OPTIONS},${ARG3})

;exten => s,1,Setvar(GRP=${GRP}) ;my original choice of variable GROUP is now overwritten by SetGroup. Copy contents to GRP
;exten => s,2,SetGroup(${CALLERIDNUM})
;exten => s,3,Setvar(FROMCONTEXT=rg-group)
;exten => s,4,SetCIDName(${PRE}${CALLERIDNAME})
;exten => s,5,Macro(dial,${RINGTIMER},${DIAL_OPTIONS},${GRP})

;
; Outgoing channel(s) are busy ... inform the client
;
[macro-outisbusy]
exten => s,1,Playback(allison7/all-circuits-busy-now)
exten => s,2,Playback(allison7/pls-try-call-later)
exten => s,3,Macro(hangupcall)

; What to do on hangup.
[macro-hangupcall]
exten => s,1,ResetCDR(w)
exten => s,2,NoCDR()
exten => s,3,Wait(5)
exten => s,4,Hangup

[macro-faxreceive]
exten => s,1,SetVar(FAXFILE=/var/spool/asterisk/fax/${UNIQUEID}.tif)
exten => s,2,SetVar(EMAILADDR=${FAX_RX_EMAIL})
exten => s,3,rxfax(${FAXFILE})
exten => s,103,SetVar(EMAILADDR=${FAX_RX_EMAIL})
exten => s,104,Goto(3)

; dialout and strip the prefix
[macro-dialout]
exten => s,1,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?4) ;check for CID override for exten
exten => s,2,SetCallerID(${ECID${CALLERIDNUM}})
exten => s,3,Goto(6)
exten => s,4,GotoIf($[foo${OUTCID_${ARG1}} = foo]?6) ;check for CID override for trunk
exten => s,5,SetCallerID(${OUTCID_${ARG1}})
exten => s,6,SetVar(length=${LEN(${DIAL_OUT_${ARG1}})})
exten => s,7,Dial(${OUT_${ARG1}}/${ARG2:${length}})
exten => s,8,Congestion
exten => s,108,Macro(outisbusy)


; dialout using default OUT trunk - no prefix
[macro-dialout-default]
exten => s,1,Macro(record-enable,${CALLERIDNUM},OUT)
exten => s,2,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?5) ;check for CID override for exten
exten => s,3,SetCallerID(${ECID${CALLERIDNUM}})
exten => s,4,Goto(7)
exten => s,5,GotoIf($[foo${OUTCID} = foo]?7) ;check for CID override for trunk
exten => s,6,SetCallerID(${OUTCID})
exten => s,7,Dial(${OUT}/${ARG1})
exten => s,8,Congestion
exten => s,108,Macro(outisbusy)

; dialout using a trunk, using pattern matching (don't strip any prefix)
; arg1 = trunk number, arg2 = number, arg3 = route password
[macro-dialout-trunk]
exten => s,1,GotoIf($[foo${ARG3} = foo]?3:2)) ; arg3 is pattern password
exten => s,2,Authenticate(${ARG3})
exten => s,3,Macro(record-enable,${CALLERIDNUM},OUT)
exten => s,4,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?7) ;check for CID override for exten
exten => s,5,SetCallerID(${ECID${CALLERIDNUM}})
exten => s,6,Goto(9)
exten => s,7,GotoIf($[foo${OUTCID_${ARG1}} = foo]?9) ;check for CID override for trunk
exten => s,8,SetCallerID(${OUTCID_${ARG1}})
exten => s,9,SetGroup(OUT_${ARG1})
exten => s,10,CheckGroup(${OUTMAXCHANS_${ARG1}})
; if we've used up the max channels, continue at 109 (n+101)
exten => s,11,SetVar(DIAL_NUMBER=${ARG2})
exten => s,12,SetVar(DIAL_TRUNK=${ARG1})
exten => s,13,AGI(fixlocalprefix) ; this sets DIAL_NUMBER to the proper dial string for this trunk
exten => s,14,SetVar(OUTNUM=${OUTPREFIX_${ARG1}}${DIAL_NUMBER}) ; OUTNUM is the final dial number
exten => s,15,Cut(custom=OUT_${ARG1},:,1) ; Custom trunks are prefixed with "AMP:"
exten => s,16,GotoIf($[${custom} = AMP]?19)
exten => s,17,Dial(${OUT_${ARG1}}/${OUTNUM}) ; Regular Trunk Dial
exten => s,18,Goto(s-${DIALSTATUS},1)

; This is a custom trunk. Substitute $OUTNUM$ with the actual number and rebuild the dialstring
; example trunks: "AMP:CAPI/XXXXXXXX:b$OUTNUM$,30,r", "AMP:OH323/$OUTNUM$@XX.XX.XX.XX:XXXX"
exten => s,19,Cut(pre_num=OUT_${ARG1},$,1)
exten => s,20,Cut(the_num=OUT_${ARG1},$,2) ; this is where we expect to find string OUTNUM
exten => s,21,Cut(post_num=OUT_${ARG1},$,3)
exten => s,22,GotoIf($[${the_num} = OUTNUM]?23:24) ; if we didn't find "OUTNUM", then skip to Dial
exten => s,23,SetVar(the_num=${OUTNUM}) ; replace "OUTNUM" with the actual number to dial
exten => s,24,Dial(${pre_num:4}${the_num}${post_num})
exten => s,25,Goto(s-${DIALSTATUS},1)

exten => s,111,Noop(max channels used up)
exten => s-BUSY,1,NoOp(Trunk is reporting BUSY)
exten => s-BUSY,2,Busy()
exten => s-BUSY,3,Wait(60)
exten => s-BUSY,4,NoOp()

exten => _s-.,1,NoOp(Dial failed due to ${DIALSTATUS})

; Adds a dynamic agent/member to a Queue
; Prompts for call-back number - in not entered, uses CIDNum
[macro-agent-add]
exten => s,1,Wait(1)
exten => s,2,NoOp
exten => s,3,Read(CALLBACKNUM,agent-user) ; get callback number from user
exten => s,4,GotoIf($[foo${CALLBACKNUM} = foo]?5:7)) ; if user just pressed # or timed out, use cidnum
exten => s,5,SetVar(CALLBACKNUM=${CALLERIDNUM})
exten => s,6,GotoIf($[foo${CALLBACKNUM} = foo]?2)) ; if still no number, start over
exten => s,7,GotoIf($[foo${ARG2} = foo]?9:8)) ; arg2 is queue password
exten => s,8,Authenticate(${ARG2})
exten => s,9,AddQueueMember(${ARG1}|Local/${CALLBACKNUM}@from-internal) ; using chan_local allows us to have agents over trunks
exten => s,10,Wait(1)
exten => s,11,Playback(agent-loginok)
exten => s,12,Hangup()

; Removes a dynamic agent/member from a Queue
; Prompts for call-back number - in not entered, uses CIDNum
[macro-agent-del]
exten => s,1,Wait(1)
exten => s,2,NoOp
exten => s,3,Read(CALLBACKNUM,agent-user) ; get callback number from user
exten => s,4,GotoIf($[foo${CALLBACKNUM} = foo]?5:7)) ; if user just pressed # or timed out, use cidnum
exten => s,5,SetVar(CALLBACKNUM=${CALLERIDNUM})
exten => s,6,GotoIf($[foo${CALLBACKNUM} = foo]?2)) ; if still no number, start over
exten => s,7,RemoveQueueMember(${ARG1}|Local/${CALLBACKNUM}@from-internal)
exten => s,8,Wait(1)
exten => s,9,Playback(agent-loggedoff)
exten => s,10,Hangup()

; arg1 = trunk number, arg2 = number
[macro-dialout-enum]
exten => s,1,Macro(record-enable,${CALLERIDNUM},OUT)
exten => s,2,GotoIf($[foo${ECID${CALLERIDNUM}} = foo]?3) ;check for CID override for exten
exten => s,3,SetCallerID(${ECID${CALLERIDNUM}})
exten => s,4,Goto(7)
exten => s,5,GotoIf($[foo${OUTCID_${ARG1}} = foo]?7) ;check for CID override for trunk
exten => s,6,SetCallerID(${OUTCID_${ARG1}})
exten => s,7,SetGroup(OUT_${ARG1})
exten => s,8,CheckGroup(${OUTMAXCHANS_${ARG1}}) ; if we've used up the max channels, continue at 108 (n+101)
exten => s,9,SetVar(DIAL_NUMBER=${ARG2})
exten => s,10,SetVar(DIAL_TRUNK=${ARG1})
exten => s,11,AGI(fixlocalprefix) ; this sets DIAL_NUMBER to the proper dial string for this trunk
exten => s,12,EnumLookup(${DIAL_NUMBER})
exten => s,13,GotoIf($[$[${ENUM:0:3} = SIP] | $[${ENUM:0:3} = IAX]]?14:63)
exten => s,14,Dial(${ENUM})
exten => s,15,Goto(s-${DIALSTATUS},1)
; if dial fails (ie, all channels are busy), continue at 116 (n+101)

; exit points for macro
exten => s,63,NoOp(EnumLookup failed)
exten => s,109,NoOp(max channels used up)

exten => s-BUSY,1,NoOp(Trunk is reporting BUSY)
exten => s-BUSY,2,Busy()
exten => s-BUSY,3,Wait(60)
exten => s-BUSY,4,NoOp()

exten => _s-.,1,NoOp(Dial failed due to ${DIALSTATUS})

[macro-record-enable]
exten => s,1,GotoIf(${LEN(${BLINDTRANSFER})} > 0?2:4)
exten => s,2,ResetCDR(w)
exten => s,3,StopMonitor()
exten => s,4,GotoIf($["${ARG2}" = "OUT"]?5:8)
exten => s,5,DBGet(RecEnable=RECORD-OUT/${ARG1})
exten => s,6,SetVar(CALLFILENAME=OUT${ARG1}-${TIMESTAMP}-${UNIQUEID})
exten => s,7,Goto(s,14)
exten => s,8,GotoIf($["${ARG2}" = "Group"]?9:12)
exten => s,9,AGI(recordingcheck)
exten => s,10,SetVar(CALLFILENAME=g${ARG1}-${TIMESTAMP}-${UNIQUEID})
exten => s,11,Goto(s,14)
exten => s,12,DBGet(RecEnable=RECORD-IN/${ARG1})
exten => s,13,SetVar(CALLFILENAME=${TIMESTAMP}-${UNIQUEID})
exten => s,14,GotoIf($["${RecEnable}" = "ENABLED"]?15:99)
exten => s,15,Monitor(wav49,${CALLFILENAME}, mb)
exten => s,99,Noop(NO RECORDING NEEDED)
;exten => s,3,BackGround(for-quality-purposes)
;exten => s,4,BackGround(this-call-may-be)
;exten => s,5,BackGround(recorded)

; This macro is for dev purposes and just dumps channel/app variables. Useful when designing new contexts.
[macro-dumpvars]
exten => s,1,Noop(ACCOUNTCODE=${ACCOUNTCODE})
exten => s,2,Noop(ANSWEREDTIME=${ANSWEREDTIME})
exten => s,3,Noop(BLINDTRANSFER=${BLINDTRANSFER})
exten => s,4,Noop(CALLERID=${CALLERID})
exten => s,5,Noop(CALLERIDNAME=${CALLERIDNAME})
exten => s,6,Noop(CALLERIDNUM=${CALLERIDNUM})
exten => s,7,Noop(CALLINGPRES=${CALLINGPRES})
exten => s,8,Noop(CHANNEL=${CHANNEL})
exten => s,9,Noop(CONTEXT=${CONTEXT})
exten => s,10,Noop(DATETIME=${DATETIME})
exten => s,11,Noop(DIALEDPEERNAME=${DIALEDPEERNAME})
exten => s,12,Noop(DIALEDPEERNUMBER=${DIALEDPEERNUMBER})
exten => s,13,Noop(DIALEDTIME=${DIALEDTIME})
exten => s,14,Noop(DIALSTATUS=${DIALSTATUS})
exten => s,15,Noop(DNID=${DNID})
exten => s,16,Noop(EPOCH=${EPOCH})
exten => s,17,Noop(EXTEN=${EXTEN})
exten => s,18,Noop(HANGUPCAUSE=${HANGUPCAUSE})
exten => s,19,Noop(INVALID_EXTEN=${INVALID_EXTEN})
exten => s,20,Noop(LANGUAGE=${LANGUAGE})
exten => s,21,Noop(MEETMESECS=${MEETMESECS})
exten => s,22,Noop(PRIORITY=${PRIORITY})
exten => s,23,Noop(RDNIS=${RDNIS})
exten => s,24,Noop(SIPDOMAIN=${SIPDOMAIN})
exten => s,25,Noop(SIP_CODEC=${SIP_CODEC})
exten => s,26,Noop(SIPCALLID=${SIPCALLID})
exten => s,27,Noop(SIPUSERAGENT=${SIPUSERAGENT})
exten => s,28,Noop(TIMESTAMP=${TIMESTAMP})
exten => s,29,Noop(TXTCIDNAME=${TXTCIDNAME})
exten => s,30,Noop(UNIQUEID=${UNIQUEID})
exten => s,31,Noop(TOUCH_MONITOR=${TOUCH_MONITOR})
exten => s,32,Noop(MACRO_CONTEXT=${MACRO_CONTEXT})
exten => s,33,Noop(MACRO_EXTEN=${MACRO_EXTEN})
exten => s,34,Noop(MACRO_PRIORITY=${MACRO_PRIORITY})


; ############################################################################
; Applications [app]
; ############################################################################
;
[app-directory]
;DIR-CONTEXT set in Digital Receptionist
exten => #,1,Wait(1)
exten => #,2,AGI(directory,${DIR-CONTEXT},ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS}o)
exten => #,3,Playback(vm-goodbye)
exten => #,4,Hangup
; *411 will access the entire directory (not just a single context)
exten => *411,1,Answer
exten => *411,2,Wait(1)
exten => *411,3,AGI(directory,general,ext-local,${DIRECTORY:0:1}${DIRECTORY_OPTS})
exten => *411,4,Playback(vm-goodbye)
exten => *411,5,Hangup
exten => h,1,Hangup
exten => o,1,GotoIf($["foo${FROM_DID}" = "foo"]?from-pstn,s,1:from-pstn,${FROM_DID},1)

[app-dnd]
exten => *78,1,Answer
exten => *78,2,Wait(1)
exten => *78,3,DBput(DND/${CALLERIDNUM}=YES)
exten => *78,4,Playback(allison7/do-not-disturb)
exten => *78,5,Playback(activated)
exten => *78,6,Macro(hangupcall)
exten => *79,1,Answer
exten => *79,2,Wait(1)
exten => *79,3,DBdel(DND/${CALLERIDNUM})
exten => *79,4,Playback(allison7/do-not-disturb)
exten => *79,5,Playback(de-activated)
exten => *79,6,Macro(hangupcall)

[app-messagecenter]
exten => *98,1,Answer
exten => *98,2,Wait(1)
exten => *98,3,VoiceMailMain(default)
exten => *98,4,Macro(hangupcall)
exten => _*98X.,1,Answer ; can dial *98<exten> to skip 'mailbox' prompt. Useful for speedial.
exten => _*98X.,2,Wait(1)
exten => _*98X.,3,VoiceMailMain(${EXTEN:3}@default)
exten => _*98X.,4,Macro(hangupcall)
exten => *97,1,Answer
exten => *97,2,Wait(1)
exten => *97,3,VoicemailMain(${CALLERIDNUM}@default)
exten => *97,4,Macro(hangupcall)

[app-callwaiting]
exten => *70,1,Answer
exten => *70,2,Wait(1)
exten => *70,3,DBput(CW/${CALLERIDNUM}=ENABLED)
exten => *70,4,Playback(callwaiting)
exten => *70,5,Playback(activated)
exten => *70,6,Macro(hangupcall)
exten => *71,1,Answer
exten => *71,2,Wait(1)
exten => *71,3,DBdel(CW/${CALLERIDNUM})
exten => *71,4,Playback(callwaiting)
exten => *71,5,Playback(de-activated)
exten => *71,6,Macro(hangupcall)

[app-callforward]
; dialed call forward app - forwards calling extension
exten => _*72.,1,DBput(CF/${CALLERIDNUM}=${EXTEN:3})
exten => _*72.,2,Answer
exten => _*72.,3,Wait(1)
exten => _*72.,4,Playback(loligo/call-fwd-unconditional)
exten => _*72.,5,Playback(loligo/for)
exten => _*72.,6,Playback(loligo/extension)
exten => _*72.,7,SayDigits(${CALLERIDNUM})
exten => _*72.,8,Playback(loligo/is-set-to)
exten => _*72.,9,SayDigits(${EXTEN:3})
exten => _*72.,10,Macro(hangupcall)
; prompting call forward app - forwards entered extension
exten => *72,1,Answer
exten => *72,2,Wait(1)
exten => *72,3,BackGround(allison7/please-enter-your)
exten => *72,4,Playback(extension)
exten => *72,5,Read(fromext,then-press-pound)
exten => *72,6,Wait(1)
exten => *72,7,BackGround(ent-target-attendant)
exten => *72,8,Read(toext,then-press-pound)
exten => *72,9,Wait(1)
exten => *72,10,DBput(CF/${fromext}=${toext})
exten => *72,11,Playback(call-fwd-unconditional)
exten => *72,12,Playback(for)
exten => *72,13,Playback(extension)
exten => *72,14,SayDigits(${fromext})
exten => *72,15,Playback(is-set-to)
exten => *72,16,SayDigits(${toext})
exten => *72,17,Macro(hangupcall)
; cancels dialed extension call forward
exten => _*73.,1,DBdel(CF/${EXTEN:3})
exten => _*73.,2,Answer
exten => _*73.,3,Wait(1)
exten => _*73.,4,SayDigits(${EXTEN:3})
exten => _*73.,5,Playback(call-fwd-cancelled)
exten => _*73.,6,Macro(hangupcall)
; cancels call forward for calling extension
exten => *73,1,DBdel(CF/${CALLERIDNUM})
exten => *73,2,Answer
exten => *73,3,Wait(1)
exten => *73,4,Playback(loligo/call-fwd-cancelled)
exten => *73,5,Macro(hangupcall)
; dialed call forward on busy app - forwards calling extension when busy
exten => _*90.,1,DBput(CFB/${CALLERIDNUM}=${EXTEN:3})
exten => _*90.,2,Answer
exten => _*90.,3,Wait(1)
exten => _*90.,4,Playback(loligo/call-fwd-on-busy)
exten => _*90.,5,Playback(loligo/for)
exten => _*90.,6,Playback(loligo/extension)
exten => _*90.,7,SayDigits(${CALLERIDNUM})
exten => _*90.,8,Playback(loligo/is-set-to)
exten => _*90.,9,SayDigits(${EXTEN:3})
exten => _*90.,10,Macro(hangupcall)
; cancels call forward on busy for calling extension
exten => *91,1,DBdel(CFB/${CALLERIDNUM})
exten => *91,2,Answer
exten => *91,3,Wait(1)
exten => *91,4,Playback(call-fwd-on-busy)
exten => *91,5,Playback(de-activated)
exten => *91,6,Macro(hangupcall)
exten => h,1,Hangup

[app-calltrace]
; We can't have our timeouts or dial digits collide with other applications
; or extensions, so we build the app in pieces
exten => *69,1,Goto(app-calltrace-perform,s,1)

[app-calltrace-perform]
exten => s,1,Answer
exten => s,2,Wait(1)
exten => s,3,Background(allison7/info-about-last-call)
exten => s,4,Background(allison7/telephone-number)
exten => s,5,Dbget(lastcaller=CALLTRACE/${CALLERIDNUM})
exten => s,6,GotoIf($[${lastcaller}]?7:13)
exten => s,7,SayDigits(${lastcaller})
exten => s,8,DigitTimeout(3)
exten => s,9,ResponseTimeout(7)
exten => s,10,Background(loligo/to-call-this-number)
exten => s,11,Background(allison7/press-1)
exten => s,12,Goto(15)
exten => s,13,Playback(loligo/from-unknown-caller)
exten => s,14,Macro(hangupcall)
exten => s,15,NoOp
exten => 1,1,Goto(from-internal,${lastcaller},1);
exten => i,1,Playback(vm-goodbye)
exten => i,2,Macro(hangupcall)
exten => t,1,Playback(vm-goodbye)
exten => t,2,Macro(hangupcall)


; ############################################################################
; Inbound Contexts [from]
; ############################################################################

[from-sip-external]

;give external sip users congestion and hangup
exten => _.,1,AbsoluteTimeout(15)
exten => _.,2,Congestion
exten => _.,3,Hangup

[from-internal]
;allow phones to use applications
include => app-directory
include => app-dnd
include => app-callforward
include => app-callwaiting
include => app-messagecenter
include => app-calltrace
include => parkedcalls
include => from-internal-custom
;allow phones to dial other extensions
include => ext-fax
include => ext-local
include => ext-group
include => ext-queues
include => ext-zapbarge
include => ext-meetme
include => ext-record
include => ext-test
;allow phones to access trunks
include => outbound-allroutes
exten => s,1,Macro(hangupcall)
exten => h,1,Macro(hangupcall)

; ############################################################################
; Extension Contexts [ext]
; ############################################################################

[ext-zapbarge]
exten => 888,1,SetGroup(${CALLERIDNUM})
exten => 888,2,Answer
exten => 888,3,Wait(1)
exten => 888,4,ZapBarge
exten => 888,5,Hangup

[ext-meetme]
exten => _8X,1,Answer
exten => _8X,2,Wait(1)
exten => _8X,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
exten => _8X,4,MeetMe(${EXTEN}|sM)
exten => _8X,5,MeetMe(${EXTEN}|asM)

exten => _8XX,1,Answer
exten => _8XX,2,Wait(1)
exten => _8XX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
exten => _8XX,4,MeetMe(${EXTEN}|sM)
exten => _8XX,5,MeetMe(${EXTEN}|asM)

exten => _8XXX,1,Answer
exten => _8XXX,2,Wait(1)
exten => _8XXX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
exten => _8XXX,4,MeetMe(${EXTEN}|sM)
exten => _8XXX,5,MeetMe(${EXTEN}|asM)

exten => _8XXXX,1,Answer
exten => _8XXXX,2,Wait(1)
exten => _8XXXX,3,GotoIf($[${CALLERIDNUM} = ${EXTEN:1}]?5:4)
exten => _8XXXX,4,MeetMe(${EXTEN}|sM)
exten => _8XXXX,5,MeetMe(${EXTEN}|asM)


[ext-fax]
exten => s,1,Answer
exten => s,2,Goto(in_fax,1)
exten => in_fax,1,GotoIf($[${FAX_RX} = system]?2:analog_fax,1)
exten => in_fax,2,Macro(faxreceive)
exten => in_fax,3,system(tiff2ps -2eaz -w 8.5 -h 11 ${FAXFILE} | ps2pdf - ${FAXFILE}.pdf)
exten => in_fax,4,system(mime-construct --to ${EMAILADDR} --subject "Fax from ${CALLERIDNUM} ${CALLERIDNAME}" --attachment ${FAXFILE}.pdf --type application/pdf --file ${FAXFILE}.pdf)
exten => in_fax,5,system(rm ${FAXFILE} ${FAXFILE}.pdf)
exten => in_fax,6,Hangup
exten => analog_fax,1,GotoIf($[${FAX_RX} = disabled]?3:2) ;if fax is disabled, just hang up
exten => analog_fax,2,Dial(${FAX_RX},20,d)
exten => analog_fax,3,Hangup
;exten => out_fax,1,wait(7)
exten => out_fax,1,txfax(${TXFAX_NAME}|caller)
exten => out_fax,2,Hangup
exten => h,1,Hangup()

[ext-record]
exten => *77,1,Wait(2)
exten => *77,2,Record(${CALLERIDNUM}ivrrecording:wav)
exten => *77,3,Wait(2)
exten => *77,4,Hangup
exten => *99,1,Playback(${CALLERIDNUM}ivrrecording)
exten => *99,2,Wait(2)
exten => *99,3,Hangup

;this is where parked calls go if they time-out. Should probably re-ring
[default]
include => ext-local
exten => s,1,Playback(vm-goodbye)
exten => s,2,Macro(hangupcall)

[ext-test]
exten => 7777,1,Goto(from-pstn,s,1)
exten => 666,1,Goto(ext-fax,in_fax,1)
exten => h,1,Macro(hangupcall)

;echo test
exten => *43,1,Answer
exten => *43,2,Wait(2)
exten => *43,3,Playback(demo-echotest)
exten => *43,4,Echo
exten => *43,5,Playback(demo-echodone)
exten => *43,6,Hangup


zapata config;
; Zapata telephony interface
;
; Configuration file

[trunkgroups]

[channels]
loadzone=us
defaultzone=us

language=en
context=from-pstn
signalling=fxs_ks
context=incoming
group=0
channel => 1-4
rxwink=300 ; Atlas seems to use long (250ms) winks
;
; Whether or not to do distinctive ring detection on FXO lines
;
usedistinctiveringdetection=no

usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=0.0
txgain=0.0
group=0
callgroup=1
pickupgroup=1
immediate=no

;faxdetect=both
faxdetect=incoming
;faxdetect=outgoing
;faxdetect=no

;Include genzaptelconf configs
#include zapata-auto.conf

;Include AMP configs
#include zapata_additional.conf
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Sat Nov 05, 2005 1:37 pm

here is the log file


Nov 5 14:29:19 DEBUG[1042]: Got event Dial Complete(9) on channel 1 (index 0)
Nov 5 14:29:19 DEBUG[1042]: Echo cancellation already on
Nov 5 14:29:19 DEBUG[1042]: Dropping duplicate answer!
Nov 5 14:29:19 VERBOSE[1042]: -- Zap/1-1 answered SIP/202-c7dd
Nov 5 14:29:19 DEBUG[1042]: Ooh, format changed from unknown to ulaw
Nov 5 14:29:19 DEBUG[1042]: Stopping retransmission on '3c658f6c92a7f3c6@192.168.1.13' of Response 57380: Found
Nov 5 14:29:19 DEBUG[1042]: Exception on 15, channel 1
Nov 5 14:29:19 DEBUG[1042]: Got event Polarity Reversal(17) on channel 1 (index 0)
Nov 5 14:29:19 DEBUG[1042]: Dunno what to do with event 17 on channel 1
Nov 5 14:29:19 DEBUG[1042]: Exception on 15, channel 1
Nov 5 14:29:19 DEBUG[1042]: Got event On hook(1) on channel 1 (index 0)
Nov 5 14:29:19 DEBUG[1042]: disabled echo cancellation on channel 1
Nov 5 14:29:19 DEBUG[1042]: Didn't get a frame from channel: Zap/1-1
Nov 5 14:29:19 DEBUG[1042]: Bridge stops bridging channels SIP/202-c7dd and Zap/1-1
Nov 5 14:29:19 DEBUG[1042]: Hangup: channel: 1 index = 0, normal = 15, callwait = -1, thirdcall = -1
Nov 5 14:29:19 DEBUG[1042]: disabled echo cancellation on channel 1
Nov 5 14:29:19 DEBUG[1042]: Set option TDD MODE, value: OFF(0) on Zap/1-1
Nov 5 14:29:19 DEBUG[1042]: Updated conferencing on 1, with 0 conference users
Nov 5 14:29:19 VERBOSE[1042]: -- Hungup 'Zap/1-1'
Nov 5 14:29:19 DEBUG[1042]: Exiting with DIALSTATUS=ANSWER.
Nov 5 14:29:19 VERBOSE[1042]: == Spawn extension (macro-dialout-trunk, s, 17) exited non-zero on 'SIP/202-c7dd' in macro 'dialout-trunk'
Nov 5 14:29:19 VERBOSE[1042]: == Spawn extension (from-internal, 99229490, 1) exited non-zero on 'SIP/202-c7dd'
Nov 5 14:29:19 VERBOSE[1042]: -- Executing Macro("SIP/202-c7dd", "hangupcall") in new stack
Nov 5 14:29:19 VERBOSE[1042]: -- Executing ResetCDR("SIP/202-c7dd", "w") in new stack
Nov 5 14:29:19 DEBUG[1042]: cdr_mysql: inserting a CDR record.
Nov 5 14:29:19 DEBUG[1042]: cdr_mysql: SQL command as follows: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode) VALUES ('2005-11-05 14:29:12','\"Deungria Wallace\" <202>','202','99229490','from-internal', 'SIP/202-c7dd','Zap/1-1','ResetCDR','w',7,0,'ANSWERED',3,'')
Nov 5 14:29:19 VERBOSE[1042]: -- Executing NoCDR("SIP/202-c7dd", "") in new stack
Nov 5 14:29:19 WARNING[1042]: CDR on channel 'SIP/202-c7dd' not posted
Nov 5 14:29:19 WARNING[1042]: CDR on channel 'SIP/202-c7dd' lacks end
Nov 5 14:29:19 VERBOSE[1042]: -- Executing Wait("SIP/202-c7dd", "5") in new stack
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby baconbuttie » Sat Nov 05, 2005 3:14 pm

is Asterisk interpreting the polarity reversal as a remote hangup ?

i would try 2 things to start, both in zapata.conf.
Code: Select all
hanguponpolarityswitch = no
faxdetect=no


are you using STABLE or HEAD ?
baconbuttie
Moves Like Spencer
 
Posts: 2657
Joined: Tue May 16, 2006 6:32 am
Location: Forest of Dean, Gloucestershire, UK.

Postby 2k3t » Sat Nov 05, 2005 3:23 pm

Tried

hanguponpolarityswitch = no
faxdetect=no


IF any one can help me solve this today I am willing to pay in U.S. dollars
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby baconbuttie » Sat Nov 05, 2005 3:28 pm

did you restart asterisk or just reload ? and what build are you using ?
baconbuttie
Moves Like Spencer
 
Posts: 2657
Joined: Tue May 16, 2006 6:32 am
Location: Forest of Dean, Gloucestershire, UK.

Postby 2k3t » Sat Nov 05, 2005 3:36 pm

i restart and i'm using asterisk@home 1.5

i have adjusted tx gain to 15.0 and still can't dial out
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby baconbuttie » Sat Nov 05, 2005 3:52 pm

a gain of 15 ? did you guess that or use ztmonitor ?

can you add
Code: Select all
cidstart=polarity
callprogress=no
busydetect=no
to your zapata.conf ?

what other options have you experimented with ? and what version of asterisk is that ? at the CLI run
Code: Select all
show version
baconbuttie
Moves Like Spencer
 
Posts: 2657
Joined: Tue May 16, 2006 6:32 am
Location: Forest of Dean, Gloucestershire, UK.

Postby 2k3t » Sat Nov 05, 2005 4:00 pm

I did guess on that gain. I figured i'd turn it up and see if it worked. It didn't

Version
Asterisk 1.0.9 built by root@asterisk1.local on a i686 running Linux

can you add Code:
cidstart=polarity
callprogress=no
busydetect=no
to your zapata.conf ?

my msn id is marcus_macd "at"hotmail.com
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Sat Nov 05, 2005 5:05 pm

Ok,

It is something definetly to do with the phone lines at the office where I'm installing it. I take this thing home and it work like a charm. No problems at all. Tried the tuning up rx and tx something is really screwy here.
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Sat Nov 05, 2005 5:07 pm

Oh yeah

100 dollars u.s. to whoever can tell me how to fix this today
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby B1HEAD » Mon Nov 07, 2005 1:28 am

Just out of interest, is the phone line you are using not already on a PSTN PBX system by any chance cause that will screw yuo aroung alot
B1HEAD
Newsterisk
 
Posts: 16
Joined: Fri Sep 16, 2005 4:09 am

Postby 2k3t » Mon Nov 07, 2005 2:01 am

I'm not really sure what your asking.

It's a straight analog line

No pbx has been setup on it before.
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby B1HEAD » Mon Nov 07, 2005 2:17 am

what is the difference in setup at home and te office, because if it works at home the problem has somethinge to do with phonelines
B1HEAD
Newsterisk
 
Posts: 16
Joined: Fri Sep 16, 2005 4:09 am

Postby 2k3t » Mon Nov 07, 2005 2:49 am

The diffrence is the service providers. The one at home is charter the one at the office is Southwestern Bell and getting charter at the office isn't an option.

After everything I have tried my latest suspicion is the way the phonelines at the office do diconect supervision. I have to wait till Morning to find out.

The typical one is kewl start the others are loop start and ground start.

The box is configured for kewl start which may be the problem. I'm calling digium tomarrow to findout tomarrow. Hopefully
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Mon Nov 07, 2005 11:08 pm

Problem Solved

OK, I was right. Disconnect Supervicion was the problem.

Kewel Start is the default for asterisk@home the others are loop start and ground start.

I talked to the telephone technician and he informed me that they use loop start . Once I made the changes in the configs for loop start it worked fine. I will post instructions on this later.

If you read this post don't neglect the previous suggestions because i think it was the combination of everything that came together to make this thing work.
This link is pn Asterisk diconnect supervision

http://www.voip-info.org/tiki-pagehisto ... ion&diff=2

http://www.asteriskguru.com/tutorials/r ... email.html

Thanks everybody for your input and help on this issue because
this issue wan't discussed anywhere i looked .
Last edited by 2k3t on Wed Nov 09, 2005 8:11 pm, edited 2 times in total.
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby B1HEAD » Tue Nov 08, 2005 1:57 am

I am also a bit of a newbie to Asterisk so i want to know, what is all these diffirent "type" of starts that you talk about and what is the effect of all of them
B1HEAD
Newsterisk
 
Posts: 16
Joined: Fri Sep 16, 2005 4:09 am

no outbound I cannot make outgoing call tdm400p

Postby 2k3t » Mon Dec 05, 2005 2:32 am

I fooled my self as i explained in another forum

The problem is that when i go to loopstart the lines don't hangup basically because plian loop start has no disconnect supervison.
If i keep loopstart i can make calls but whether they hanguyp or not is
a gamble. I have calls that won't hangup.
I also learned that loop start with disconnect supervison is Kewl start. Basically the lines i have at the office are Loop start with disconnect supervison which is Kewl start.
One big circle.

Does Anybody have any sugestions I have heard something about a way to adjust battery voltage.

All thats happening is the system picks up the line dials the number and then hangsup. Something is making this thing think it's suppose to hangup.

Harware is verified good. Phoneline are verified good as well.
Anybody know of a way to monitor exactly what they ssytem is detecting like a polarity reversal or something like that regulars and cli won't do.
I need some HELP!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm

Postby 2k3t » Mon Dec 05, 2005 11:14 am

I think that asterisk is being freaked out by the voltage change when
a call is dialed the sequnce is as follows
The sequnce on the voltmeter says 52.2v for on the hook,11.2v off the hook, dialing out drops to 10.0v, when the otherside hangs up 8.9v when the co disconnects it shows 10.0

I think the slight drop in voltage while dialing out may be the problem. any way to get asterisk to ignore this?
2k3t
Newsterisk
 
Posts: 17
Joined: Thu Dec 21, 2006 10:56 pm


Return to Asterisk Support

Who is online

Users browsing this forum: No registered users and 1 guest