IAX2 trunk between Asterisk 1.4.22 and 1.4.28 says All Circuits Are busy now
I have setup IAX2 trunk between two servers ASterisk 1.4.22 and 1.4.28 and looks like IAX2 is not compatible between these two ASterisks.
Both are in the same LAN, SETUP is tested and OK, dial plan is simply 2xxx on Asterisk 1.4.22 and 3xxx on 1.4.28
I have been playing with calltokenoptional but no luck so far:
Here is code from CLI:
erbosity is at least 10
-- Registered SIP '123' at 192.x.x.x port 50366 expires 3600
-- Saved useragent "X-Lite release 1104o stamp 56125" for peer 123
-- Unregistered SIP '123'
-- Registered SIP '123' at 192.x.x.x port 50366 expires 3600
-- Saved useragent "X-Lite release 1104o stamp 56125" for peer 123
-- Executing [9128@from-internal:1] Macro("SIP/123-b761ae58", "user-callerid|SKIPTTL|") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/123-b761ae58", "AMPUSER=123") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("SIP/123-b761ae58", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("SIP/123-b761ae58", "1|Set|REALCALLERIDNUM=123") in new stack
-- Executing [s@macro-user-callerid:4] Set("SIP/123-b761ae58", "AMPUSER=123") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/123-b761ae58", "AMPUSERCIDNAME=USER 1 USER 1") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/123-b761ae58", "0?report") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/123-b761ae58", "AMPUSERCID=123") in new stack
-- Executing [s@macro-user-callerid:8] Set("SIP/123-b761ae58", "CALLERID(all)="USER 1 USER 1" <123>") in new stack
-- Executing [s@macro-user-callerid:9] ExecIf("SIP/123-b761ae58", "0|Set|CHANNEL(language)=") in new stack
-- Executing [s@macro-user-callerid:10] GotoIf("SIP/123-b761ae58", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] NoOp("SIP/123-b761ae58", "Using CallerID "USER 1 USER 1" <123>") in new stack
-- Executing [9128@from-internal:2] Set("SIP/123-b761ae58", "_NODEST=") in new stack
-- Executing [9128@from-internal:3] Macro("SIP/123-b761ae58", "record-enable|123|OUT|") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("SIP/123-b761ae58", "1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] AGI("SIP/123-b761ae58", "recordingcheck|20100121-204421|1264103061.72") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20100121-204421|1264103061.72: Outbound recording not enabled
-- AGI Script recordingcheck completed, returning 0
-- Executing [s@macro-record-enable:5] MacroExit("SIP/123-b761ae58", "") in new stack
-- Executing [9128@from-internal:4] Macro("SIP/123-b761ae58", "dialout-trunk|1|128|") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/123-b761ae58", "DIAL_TRUNK=1") in new stack
-- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/123-b761ae58", "0?sub-pincheck|s|1") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/123-b761ae58", "1?disabletrunk|1") in new stack
-- Goto (macro-dialout-trunk,disabletrunk,1)
-- Executing [disabletrunk@macro-dialout-trunk:1] NoOp("SIP/123-b761ae58", "TRUNK: ZAP/g0 DISABLED - falling through to next trunk") in new stack
-- Executing [9128@from-internal:5] Macro("SIP/123-b761ae58", "outisbusy|") in new stack
-- Executing [s@macro-outisbusy:1] Playback("SIP/123-b761ae58", "all-circuits-busy-now|noanswer") in new stack
--
== Spawn extension (macro-outisbusy, s, 1) exited non-zero on 'SIP/123-b761ae58' in macro 'outisbusy'
== Spawn extension (macro-outisbusy, s, 1) exited non-zero on 'SIP/123-b761ae58'
Is there any bug or just incompatibility in terms of IAX2 trunking in these both versions of Asterisk?
Thank You for any help and advice.
have a good day !!!
I have forget to add that calls go through if made a call from asterisk 1.4.28 to 1.4.22 but from 1.4.22 to 1.4.28 have All Circuits are busy now .....
MST
You need to set requirecalltoken=no in iax_general_custom.conf
Thank You Scott,
You gave me the right directions. I took a look at etc/asterisk/iax_general_custom.conf and here you go, the problem has been found!!!!
The code was there: calltokenoptional = 127.0.0.1/255.255.255.0 and that's explain why I could not connect using IAX2 trunk from Asterisk 1.4.22 (IP 192.168.x.x) to 1.4.28 becasue 1.4.28 had this one line of code: calltokenoptional = 127.0.0.1/255.255.255.0. I have spend almost 3 days pulling out of my hair ......
I am only curoius why in fresh installation of 1.4.28 this get automatically to iax_general_custom.conf ?
Simply getting rid of that line did not help so I have decide to add:
calltokenoptional = 0.0.0.0/0.0.0.0
maxcallnumbers = 16382 to iax_general_custom.conf in Asterisk 1.4.28 and here you go !!!!!!!!!!!!!!!! The other config in Asterisk 1.4.22 is empty.
MST
Thanks for the help!!!
I recently changed one of my trixbox’s server to an Elastix 2.0 server that comes with asterisk 1.6 and I was bumping in the same problem.
The calls just worked one way in a IAX2 based trunk. I searched everywhere for the answer until I found this post.
You are f*** geniuses! thanks a lot guys! Just saved me of one week of trouble by configuring the old server again.
:)
I am not a genius !
One of my goals is not simply to provide answers but to also teach how to find the answers.
In this case the new security modes for IAX where in the Asterisk release notes. Anyone serious about deploying and maintaining an Asterisk based phone system needs to read the change log.


Member Since:
2008-05-02