circuit-busy

Since the most recent module update for 2.3 beta-1 my Teliax trunk fails outbound.
I've tried both SIP & IAX with the same result, other outbound SIP & H323 trunks work. And the Teliax account works fine in Idefisk. I get a "is circuit-busy" Inbound calls to the trunk seem to be fine.
Any thoughts or where else to look?
It seems to see the peer...
asterisk1*CLI> iax2 show peer Teliax asterisk1*CLI> * Name : Teliax Secret : Context : default Mailbox : Dynamic : No Callerid : "" <> Expire : -1 ACL : No Addr->IP : 216.89.79.2 Port 4569 Defaddr->IP : 0.0.0.0 Port 0 Username : REMOVED Codecs : 0xfd00 (g729|ilbc) Codec Order : (ilbc|g729) Status : OK (138 ms) Qualify : every 60000ms when OK, every 10000ms when UNREACHABLE (sample smoothing Off)
But outbound calls die...
-- Starting simple switch on 'Zap/1-1'
-- Executing Macro("Zap/1-1", "dialout-trunk|1|00191676726676||") in new stack
-- Executing Set("Zap/1-1", "DIAL_TRUNK=1") in new stack
-- Executing Set("Zap/1-1", "DIAL_NUMBER=00191676726676") in new stack
-- Executing Set("Zap/1-1", "ROUTE_PASSWD=") in new stack
-- Executing GotoIf("Zap/1-1", "1?noauth") in new stack
-- Goto (macro-dialout-trunk,s,6)
-- Executing GotoIf("Zap/1-1", "0?disabletrunk|1") in new stack
-- Executing Set("Zap/1-1", "_NODEST=") in new stack
-- Executing Set("Zap/1-1", "DIAL_TRUNK_OPTIONS=tr") in new stack
-- Executing Set("Zap/1-1", "GROUP()=OUT_1") in new stack
-- Executing Macro("Zap/1-1", "user-callerid|SKIPTTL") in new stack
-- Executing NoOp("Zap/1-1", "user-callerid: device 4500") in new stack
-- Executing Set("Zap/1-1", "AMPUSER=4500") in new stack
-- Executing GotoIf("Zap/1-1", "0?report") in new stack
-- Executing GotoIf("Zap/1-1", "0?start") in new stack
-- Executing Set("Zap/1-1", "REALCALLERIDNUM=4500") in new stack
-- Executing NoOp("Zap/1-1", "REALCALLERIDNUM is 4500") in new stack
-- Executing Set("Zap/1-1", "AMPUSER=4500") in new stack
-- Executing Set("Zap/1-1", "AMPUSERCIDNAME=House Phone") in new stack
-- Executing GotoIf("Zap/1-1", "0?report") in new stack
-- Executing Set("Zap/1-1", "AMPUSERCID=4500") in new stack
-- Executing Set("Zap/1-1", "CALLERID(all)=House Phone <4500>") in new stack
-- Executing Set("Zap/1-1", "REALCALLERIDNUM=4500") in new stack
-- Executing NoOp("Zap/1-1", "TTL: ARG1: SKIPTTL") in new stack
-- Executing GotoIf("Zap/1-1", "1?continue") in new stack
-- Goto (macro-user-callerid,s,23)
-- Executing NoOp("Zap/1-1", "Using CallerID "House Phone" <4500>") in new stack
-- Executing Macro("Zap/1-1", "record-enable|4500|OUT") in new stack
-- Executing GotoIf("Zap/1-1", "0?2:4") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing DeadAGI("Zap/1-1", "recordingcheck|20070701-135012|1183294203.24") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20070701-135012|1183294203.24: Outbound recording not enabled
-- AGI Script recordingcheck completed, returning 0
-- Executing NoOp("Zap/1-1", "No recording needed") in new stack
-- Executing GotoIf("Zap/1-1", "0?skipoutcid") in new stack
-- Executing Set("Zap/1-1", "DIAL_TRUNK_OPTIONS=W") in new stack
-- Executing Macro("Zap/1-1", "outbound-callerid|1") in new stack
-- Executing GotoIf("Zap/1-1", "1?start") in new stack
-- Goto (macro-outbound-callerid,s,3)
-- Executing NoOp("Zap/1-1", "REALCALLERIDNUM is 4500") in new stack
-- Executing GotoIf("Zap/1-1", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,9)
-- Executing Set("Zap/1-1", "USEROUTCID=") in new stack
-- Executing Set("Zap/1-1", "EMERGENCYCID=") in new stack
-- Executing Set("Zap/1-1", "TRUNKOUTCID="Waite & Hartmann" <916 555 1212>") in new stack
-- Executing GotoIf("Zap/1-1", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,16)
-- Executing GotoIf("Zap/1-1", "0?usercid") in new stack
-- Executing Set("Zap/1-1", "CALLERID(all)="Waite & Hartmann" <916 555 1212>") in new stack
-- Executing GotoIf("Zap/1-1", "1?report") in new stack
-- Goto (macro-outbound-callerid,s,22)
-- Executing NoOp("Zap/1-1", "CallerID set to "Waite & Hartmann" <9165551212>") in new stack
-- Executing GotoIf("Zap/1-1", "0?nomax") in new stack
-- Executing GotoIf("Zap/1-1", "0?chanfull") in new stack
-- Executing AGI("Zap/1-1", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
-- AGI Script fixlocalprefix completed, returning 0
-- Executing Set("Zap/1-1", "OUTNUM=00191676726676") in new stack
-- Executing Set("Zap/1-1", "custom=IAX2/Teliax") in new stack
-- Executing GotoIf("Zap/1-1", "1?gocall") in new stack
-- Goto (macro-dialout-trunk,s,22)
-- Executing GotoIf("Zap/1-1", "0?customtrunk") in new stack
-- Executing Dial("Zap/1-1", "IAX2/Teliax/00191676726676|300|W") in new stack
-- Called Teliax/00191676726676
-- IAX2/Teliax-3 is circuit-busy
-- Hungup 'IAX2/Teliax-3'
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing Goto("Zap/1-1", "s-CONGESTION|1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing GotoIf("Zap/1-1", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,3)
-- Executing NoOp("Zap/1-1", "TRUNK Dial failed due to CONGESTION - failing through to other trunks") in new stack
-- Executing Macro("Zap/1-1", "outisbusy|") in new stack
-- Executing Playback("Zap/1-1", "all-circuits-busy-now|noanswer") in new stack
-- Playing 'all-circuits-busy-now' (language 'en')
-- Executing Playback("Zap/1-1", "pls-try-call-later|noanswer") in new stack
-- Playing 'pls-try-call-later' (language 'en')
== Spawn extension (macro-outisbusy, s, 2) exited non-zero on 'Zap/1-1' in macro 'outisbusy'
== Spawn extension (macro-outisbusy, s, 2) exited non-zero on 'Zap/1-1'
-- Hungup 'Zap/1-1'
__________________



circuit-busy
hmm, there *shouldn't* have been anything that changed that effected turnks or this part of the code. It does look like it is dialing correctly:
-- Executing Dial("Zap/1-1", "IAX2/Teliax/00191676726676|300|W") in new stack -- Called Teliax/00191676726676And if other trunks are working fine?
Have you checked to make sure it is properly registerd? (iax2 show registery).
Have you checked the log to see if it has any more clues?
Have you turned on 'iax2 debug' to see if it shows anything more?
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
circuit-busy
I have...
and I'd think the inbound calls on the trunk wouldn't work if it wasn't registering correctly...
I think I've found it...though I'm not entire sure why I'd get a 'No such context/extension' message now, or what context/extension they're expecting or which field this corrosponds to in the trunk config...
Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 000 Type: IAX Subclass: NEW Timestamp: 00008ms SCall: 00003 DCall: 00000 [216.89.79.2:4569] VERSION : 2 CALLED NUMBER : 0019167672676 CODEC_PREFS : (ilbc|g729) CALLING NUMBER : 9165551212 CALLING PRESNTN : 0 CALLING TYPEOFN : 0 CALLING TRANSIT : 0 CALLING NAME : Waite & Hartmann LANGUAGE : en USERNAME : REMOVED FORMAT : 256 CAPABILITY : 64768 ADSICPE : 2 DATE TIME : 2007-07-01 15:09:40 -- Called Teliax/0019167672676 Rx-Frame Retry[ No] -- OSeqno: 000 ISeqno: 001 Type: IAX Subclass: AUTHREQ Timestamp: 00015ms SCall: 00074 DCall: 00003 [216.89.79.2:4569] AUTHMETHODS : 2 CHALLENGE : 33825161 USERNAME : REMOVED asterisk1*CLI> Tx-Frame Retry[000] -- OSeqno: 001 ISeqno: 001 Type: IAX Subclass: AUTHREP Timestamp: 00112ms SCall: 00003 DCall: 00074 [216.89.79.2:4569] MD5 RESULT : 54049884eebd162b67ae9ed9b740610d Rx-Frame Retry[ No] -- OSeqno: 001 ISeqno: 002 Type: IAX Subclass: REJECT Timestamp: 00117ms SCall: 00074 DCall: 00003 [216.89.79.2:4569] CAUSE : No such context/extension CAUSE CODE : 3 -- IAX2/Teliax-3 is circuit-busy Tx-Frame Retry[-01] -- OSeqno: 002 ISeqno: 002 Type: IAX Subclass: ACK Timestamp: 00117ms SCall: 00003 DCall: 00074 [216.89.79.2:4569] -- Hungup 'IAX2/Teliax-3'circuit-busy
that would be a problem, the reject. Note, it shouldn't be related, but the last core update broke fixlocalprefix which deals with trunk dial patterns. I just fixed that so in case that was related you may want to pull that. (and in either case you DO want to pull that fix).
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
circuit-busy
Thanks.
It was a dial string issue.
I'm in IE but Teliax expects NANP dial stings, so to make it transparent with the other trunks, in my dial 9 outbound route I've:
9|001. - to drop the 9 and pass the rest
and on the Teliax trunk
00|1. - for the NANP string Teliax expects.
The 2.3.0beta1.5 Core module seems to have resolved the problem.
A minor usability issue...
The trunk configuration screen doesn't prevent you from entering a 'Trunk Name' that's the same as the 'USER Context' but doing so prevents the peer from registering.
James
Circuit Busy
If you ever have problems with Teliax you can reach the support line at 888-270-3688. It looks like you figured this one out.
circuit-busy
James,
post a bug, and please spell out specific 'repro' steps of an example trunk configuration that results in this issue. Thanks.
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
circuit-busy
Will do.
Now if i could just get my conference button issue figured out.
circuit-busy
conference button?
Philippe Lindheimer - FreePBX Project Leader
FreePBX Training Opportunities - Click Here
Get Official Paid Support - Click Here
circuit-busy
Yes.
But I just found the answer.
I posted it here http://www.freepbx.org/forums/viewtopic.php?p=5289#5289
circuit-busy
I am having kinda the same problem. Can you guys hep me out?
Thank you
Postby dnltosa » Wed Jan 25, 2012 12:21 am
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Executing [0000000000@from-trunk:1] Set("SIP/vitel-inbound-00000006", "__FROM_DID=000000000") in new stack
-- Executing [0000000000@from-trunk:2] ExecIf("SIP/vitel-inbound-00000006", "0 ?Set(CALLERID(name)=00000000)") in new stack
-- Executing [0000000000@from-trunk:3] Set("SIP/vitel-inbound-00000006", "__CALLINGPRES_SV=allowed_not_screened") in new stack
-- Executing [0000000000@from-trunk:4] Set("SIP/vitel-inbound-00000006", "CALLERPRES()=allowed_not_screened") in new stack
-- Executing [0000000000@from-trunk:5] Goto("SIP/vitel-inbound-00000006", "ext-trunk,1,1") in new stack
-- Goto (ext-trunk,1,1)
-- Executing [1@ext-trunk:1] Set("SIP/vitel-inbound-00000006", "TDIAL_STRING=SIP/vitel-inbound") in new stack
-- Executing [1@ext-trunk:2] Set("SIP/vitel-inbound-00000006", "DIAL_TRUNK=1") in new stack
-- Executing [1@ext-trunk:3] Goto("SIP/vitel-inbound-00000006", "ext-trunk,tdial,1") in new stack
-- Goto (ext-trunk,tdial,1)
-- Executing [tdial@ext-trunk:1] Set("SIP/vitel-inbound-00000006", "OUTBOUND_GROUP=OUT_1") in new stack
-- Executing [tdial@ext-trunk:2] GotoIf("SIP/vitel-inbound-00000006", "1?nomax") in new stack
-- Goto (ext-trunk,tdial,4)
-- Executing [tdial@ext-trunk:4] ExecIf("SIP/vitel-inbound-00000006", "1?Set(CALLERPRES()=allowed_not_screened)") in new stack
-- Executing [tdial@ext-trunk:5] Set("SIP/vitel-inbound-00000006", "DIAL_NUMBER=6027530644") in new stack
-- Executing [tdial@ext-trunk:6] GosubIf("SIP/vitel-inbound-00000006", "0?sub-flp-1,s,1") in new stack
-- Executing [tdial@ext-trunk:7] Dial("SIP/vitel-inbound-00000006", "SIP/vitel-inbound/,300,") in new stack
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Called SIP/vitel-inbound/
-- SIP/vitel-inbound-00000007 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [tdial@ext-trunk:8] Hangup("SIP/vitel-inbound-00000006", "") in new stack
== Spawn extension (ext-trunk, tdial, 8) exited non-zero on 'SIP/vitel-inbound-00000006'
inbound
username=xxxxxx
type=friend
dtmfmode=auto
secret=xxxxxx
insecure=port,invite
host=inbound16.vitelity.net
allow=all
context=from-trunk
canreinvite=no
outbound
type=friend
dtmfmode=auto
host=outbound.vitelity.net
username=xxxxxx
fromuser=xxxxxx
secret=xxxxxxx
trustrpid=yes
sendrpid=yes
allow=all
canreinvite=no