Hi All,
Hopefully it’s okay to post about Trixbox. I’m running the latest Trixbox 2.6.1 as a Virtual Machine with VoicePulse IAX termination. I’m using an X-Lite softphone and a Cisco 7941. Both phones register and can successfully call each other. I used the VoicePulse Module to configure everything. I thoroughly went through the setup. I can dial my VoicePulse phone number and it successfully hits the IVR I setup. At the IVR prompt if I hit the coordinating key it will transfer me to one of the phones and I have typical two-way voice.
The problem is that I cannot make any outbound calls. I contacted the VoicePulse tech support and they had me make test calls and according to them they did not see my calls leaving the PBX. On his end he saw nothing. I’m port forwarding ports 5060-5061 and 16384-16482 to my PBX. I’m behind a consumer level Linksys router. My PBX is addressed as 192.168.1.200.
I would greatly appreciate any assistance. Please let me know if additional information is needed. I have included some logs below:
show sip peers:
trixbox1*CLI> sip show peers
Name/username Host Dyn Nat ACL Port Status
VP-SIPSJCB/<USERNAME HERE> 64.61.93.190 5060 OK (86 ms)
VP-SIPSJCA/<USERNAME HERE> 67.108.9.165 5060 OK (34 ms)
200/200 (Unspecified) D N 0 UNKNOWN
101/101 192.168.1.108 D 5060 OK (38 ms)
100/100 192.168.1.108 D 5060 OK (61 ms)
5 sip peers [Monitored: 4 online, 1 offline Unmonitored: 0 online, 0 offline]
show sip users:
trixbox1*CLI> sip show users
Username Secret Accountcode Def.Context ACL NAT
200 200 from-internal No Always
101 12345 from-internal No No
100 12345 from-internal No No
If I set verbose 12, here is the outcome when attempting to place an outbound phone call from the softphone:
-- Executing [s@macro-outbound-callerid:12] GotoIf("SIP/200-0824b4e0", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,16)
-- Executing [s@macro-outbound-callerid:16] GotoIf("SIP/200-0824b4e0", "0?usercid") in new stack
-- Executing [s@macro-outbound-callerid:17] Set("SIP/200-0824b4e0", "CALLERID(all)=<CID NUMBER HERE>") in new stack
-- Executing [s@macro-outbound-callerid:18] GotoIf("SIP/200-0824b4e0", "1?report") in new stack
-- Goto (macro-outbound-callerid,s,22)
-- Executing [s@macro-outbound-callerid:22] NoOp("SIP/200-0824b4e0", "CallerID set to "" <<CID NUMBER HERE>>") in new stack
-- Executing [s@macro-dialout-trunk:12] AGI("SIP/200-0824b4e0", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
> fixlocalprefix: Using pattern 011|.
> fixlocalprefix: Using pattern 1NXXNXXXXXX
== fixlocalprefix: Dialpattern 1NXXNXXXXXX matched. 12124831051 -> 12124831051
-- AGI Script fixlocalprefix completed, returning 0
-- Executing [s@macro-dialout-trunk:13] Set("SIP/200-0824b4e0", "OUTNUM=+12124831051") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/200-0824b4e0", "custom=SIP/VP-SIPSJCB") in new stack
-- Executing [s@macro-dialout-trunk:15] GotoIf("SIP/200-0824b4e0", "1?gocall") in new stack
-- Goto (macro-dialout-trunk,s,17)
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/200-0824b4e0", "dialout-trunk-predial-hook|") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/200-0824b4e0", "0?bypass|1") in new stack
-- Executing [s@macro-dialout-trunk:19] GotoIf("SIP/200-0824b4e0", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:20] Dial("SIP/200-0824b4e0", "SIP/VP-SIPSJCB/+12124831051|300|") in new stack
-- Called VP-SIPSJCB/+12124831051
-- SIP/VP-SIPSJCB-082750f0 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:21] Goto("SIP/200-0824b4e0", "s-CONGESTION|1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] GotoIf("SIP/200-0824b4e0", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,3)
-- Executing [s-CONGESTION@macro-dialout-trunk:3] NoOp("SIP/200-0824b4e0", "TRUNK Dial failed due to CONGESTION - failing through to other trunks") in new stack
-- Executing [12124831051@from-internal:6] Macro("SIP/200-0824b4e0", "outisbusy|") in new stack
-- Executing [s@macro-outisbusy:1] Playback("SIP/200-0824b4e0", "all-circuits-busy-now|noanswer") in new stack
-- <SIP/200-0824b4e0> Playing 'all-circuits-busy-now' (language 'en')
-- Executing [s@macro-outisbusy:2] Playback("SIP/200-0824b4e0", "pls-try-call-later|noanswer") in new stack
-- <SIP/200-0824b4e0> Playing 'pls-try-call-later' (language 'en')
-- Executing [s@macro-outisbusy:3] Macro("SIP/200-0824b4e0", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] ResetCDR("SIP/200-0824b4e0", "w") in new stack
-- Executing [s@macro-hangupcall:2] NoCDR("SIP/200-0824b4e0", "") in new stack
-- Executing [s@macro-hangupcall:3] GotoIf("SIP/200-0824b4e0", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing [s@macro-hangupcall:6] GotoIf("SIP/200-0824b4e0", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] GotoIf("SIP/200-0824b4e0", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing [s@macro-hangupcall:11] Hangup("SIP/200-0824b4e0", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0' in macro 'outisbusy'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0'
-- Executing [12124831051@from-internal:1] Macro("SIP/200-0824b4e0", "user-callerid|SKIPTTL|") in new stack
-- Executing [s@macro-user-callerid:1] NoOp("SIP/200-0824b4e0", "user-callerid: device 200") in new stack
-- Executing [s@macro-user-callerid:2] Set("SIP/200-0824b4e0", "AMPUSER=200") in new stack
-- Executing [s@macro-user-callerid:3] GotoIf("SIP/200-0824b4e0", "0?report") in new stack
-- Executing [s@macro-user-callerid:4] ExecIf("SIP/200-0824b4e0", "1|Set|REALCALLERIDNUM=200") in new stack
-- Executing [s@macro-user-callerid:5] NoOp("SIP/200-0824b4e0", "REALCALLERIDNUM is 200") in new stack
-- Executing [s@macro-user-callerid:6] Set("SIP/200-0824b4e0", "AMPUSER=200") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/200-0824b4e0", "AMPUSERCIDNAME=AdamSoftphone") in new stack
-- Executing [s@macro-user-callerid:8] GotoIf("SIP/200-0824b4e0", "0?report") in new stack
-- Executing [s@macro-user-callerid:9] Set("SIP/200-0824b4e0", "AMPUSERCID=200") in new stack
-- Executing [s@macro-user-callerid:10] Set("SIP/200-0824b4e0", "CALLERID(all)="AdamSoftphone" <200>") in new stack
-- Executing [s@macro-user-callerid:11] Set("SIP/200-0824b4e0", "REALCALLERIDNUM=200") in new stack
-- Executing [s@macro-user-callerid:12] ExecIf("SIP/200-0824b4e0", "0|Set|CHANNEL(language)=") in new stack
-- Executing [s@macro-user-callerid:13] NoOp("SIP/200-0824b4e0", "TTL: ARG1: SKIPTTL") in new stack
-- Executing [s@macro-user-callerid:14] GotoIf("SIP/200-0824b4e0", "1?continue") in new stack
-- Goto (macro-user-callerid,s,23)
-- Executing [s@macro-user-callerid:23] NoOp("SIP/200-0824b4e0", "Using CallerID "AdamSoftphone" <200>") in new stack
-- Executing [12124831051@from-internal:2] Set("SIP/200-0824b4e0", "_NODEST=") in new stack
-- Executing [12124831051@from-internal:3] Macro("SIP/200-0824b4e0", "record-enable|200|OUT|") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("SIP/200-0824b4e0", "0?2:4") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] AGI("SIP/200-0824b4e0", "recordingcheck|20080821-195859|1219373939.61") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck
recordingcheck|20080821-195859|1219373939.61: Outbound recording not enabled
-- AGI Script recordingcheck completed, returning 0
-- Executing [s@macro-record-enable:5] NoOp("SIP/200-0824b4e0", "No recording needed") in new stack
-- Executing [12124831051@from-internal:4] Macro("SIP/200-0824b4e0", "dialout-trunk|2|12124831051||") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/200-0824b4e0", "DIAL_TRUNK=2") in new stack
-- Executing [s@macro-dialout-trunk:2] ExecIf("SIP/200-0824b4e0", "0|Authenticate|") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/200-0824b4e0", "0?disabletrunk|1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/200-0824b4e0", "DIAL_NUMBER=12124831051") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/200-0824b4e0", "DIAL_TRUNK_OPTIONS=tr") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/200-0824b4e0", "GROUP()=OUT_2") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/200-0824b4e0", "0?nomax") in new stack
-- Executing [s@macro-dialout-trunk:8] GotoIf("SIP/200-0824b4e0", "0?chanfull") in new stack
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/200-0824b4e0", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/200-0824b4e0", "DIAL_TRUNK_OPTIONS=") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/200-0824b4e0", "outbound-callerid|2") in new stack
-- Executing [s@macro-outbound-callerid:1] GotoIf("SIP/200-0824b4e0", "1?start") in new stack
-- Goto (macro-outbound-callerid,s,3)
-- Executing [s@macro-outbound-callerid:3] NoOp("SIP/200-0824b4e0", "REALCALLERIDNUM is 200") in new stack
-- Executing [s@macro-outbound-callerid:4] GotoIf("SIP/200-0824b4e0", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,9)
-- Executing [s@macro-outbound-callerid:9] Set("SIP/200-0824b4e0", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:10] Set("SIP/200-0824b4e0", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:11] Set("SIP/200-0824b4e0", "TRUNKOUTCID=<CID NUMBER HERE>") in new stack
-- Executing [s@macro-outbound-callerid:12] GotoIf("SIP/200-0824b4e0", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,16)
-- Executing [s@macro-outbound-callerid:16] GotoIf("SIP/200-0824b4e0", "0?usercid") in new stack
-- Executing [s@macro-outbound-callerid:17] Set("SIP/200-0824b4e0", "CALLERID(all)=<CID NUMBER HERE>") in new stack
-- Executing [s@macro-outbound-callerid:18] GotoIf("SIP/200-0824b4e0", "1?report") in new stack
-- Goto (macro-outbound-callerid,s,22)
-- Executing [s@macro-outbound-callerid:22] NoOp("SIP/200-0824b4e0", "CallerID set to "" <<CID NUMBER HERE>>") in new stack
-- Executing [s@macro-dialout-trunk:12] AGI("SIP/200-0824b4e0", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
> fixlocalprefix: Using pattern 011|.
> fixlocalprefix: Using pattern 1NXXNXXXXXX
== fixlocalprefix: Dialpattern 1NXXNXXXXXX matched. 12124831051 -> 12124831051
-- AGI Script fixlocalprefix completed, returning 0
-- Executing [s@macro-dialout-trunk:13] Set("SIP/200-0824b4e0", "OUTNUM=+12124831051") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/200-0824b4e0", "custom=SIP/VP-SIPSJCA") in new stack
-- Executing [s@macro-dialout-trunk:15] GotoIf("SIP/200-0824b4e0", "1?gocall") in new stack
-- Goto (macro-dialout-trunk,s,17)
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/200-0824b4e0", "dialout-trunk-predial-hook|") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/200-0824b4e0", "0?bypass|1") in new stack
-- Executing [s@macro-dialout-trunk:19] GotoIf("SIP/200-0824b4e0", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:20] Dial("SIP/200-0824b4e0", "SIP/VP-SIPSJCA/+12124831051|300|") in new stack
-- Called VP-SIPSJCA/+12124831051
-- SIP/VP-SIPSJCA-082750f0 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:21] Goto("SIP/200-0824b4e0", "s-CONGESTION|1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] GotoIf("SIP/200-0824b4e0", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,3)
-- Executing [s-CONGESTION@macro-dialout-trunk:3] NoOp("SIP/200-0824b4e0", "TRUNK Dial failed due to CONGESTION - failing through to other trunks") in new stack
-- Executing [12124831051@from-internal:5] Macro("SIP/200-0824b4e0", "dialout-trunk|3|12124831051||") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/200-0824b4e0", "DIAL_TRUNK=3") in new stack
-- Executing [s@macro-dialout-trunk:2] ExecIf("SIP/200-0824b4e0", "0|Authenticate|") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/200-0824b4e0", "0?disabletrunk|1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/200-0824b4e0", "DIAL_NUMBER=12124831051") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/200-0824b4e0", "DIAL_TRUNK_OPTIONS=tr") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/200-0824b4e0", "GROUP()=OUT_3") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/200-0824b4e0", "0?nomax") in new stack
-- Executing [s@macro-dialout-trunk:8] GotoIf("SIP/200-0824b4e0", "0?chanfull") in new stack
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/200-0824b4e0", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/200-0824b4e0", "DIAL_TRUNK_OPTIONS=") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/200-0824b4e0", "outbound-callerid|3") in new stack
-- Executing [s@macro-outbound-callerid:1] GotoIf("SIP/200-0824b4e0", "1?start") in new stack
-- Goto (macro-outbound-callerid,s,3)
-- Executing [s@macro-outbound-callerid:3] NoOp("SIP/200-0824b4e0", "REALCALLERIDNUM is 200") in new stack
-- Executing [s@macro-outbound-callerid:4] GotoIf("SIP/200-0824b4e0", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,9)
-- Executing [s@macro-outbound-callerid:9] Set("SIP/200-0824b4e0", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:10] Set("SIP/200-0824b4e0", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:11] Set("SIP/200-0824b4e0", "TRUNKOUTCID=<CID NUMBER HERE>") in new stack
-- Executing [s@macro-outbound-callerid:12] GotoIf("SIP/200-0824b4e0", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,16)
-- Executing [s@macro-outbound-callerid:16] GotoIf("SIP/200-0824b4e0", "0?usercid") in new stack
-- Executing [s@macro-outbound-callerid:17] Set("SIP/200-0824b4e0", "CALLERID(all)=<CID NUMBER HERE>") in new stack
-- Executing [s@macro-outbound-callerid:18] GotoIf("SIP/200-0824b4e0", "1?report") in new stack
-- Goto (macro-outbound-callerid,s,22)
-- Executing [s@macro-outbound-callerid:22] NoOp("SIP/200-0824b4e0", "CallerID set to "" <<CID NUMBER HERE>>") in new stack
-- Executing [s@macro-dialout-trunk:12] AGI("SIP/200-0824b4e0", "fixlocalprefix") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
> fixlocalprefix: Using pattern 011|.
> fixlocalprefix: Using pattern 1NXXNXXXXXX
== fixlocalprefix: Dialpattern 1NXXNXXXXXX matched. 12124831051 -> 12124831051
-- AGI Script fixlocalprefix completed, returning 0
-- Executing [s@macro-dialout-trunk:13] Set("SIP/200-0824b4e0", "OUTNUM=+12124831051") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/200-0824b4e0", "custom=SIP/VP-SIPSJCB") in new stack
-- Executing [s@macro-dialout-trunk:15] GotoIf("SIP/200-0824b4e0", "1?gocall") in new stack
-- Goto (macro-dialout-trunk,s,17)
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/200-0824b4e0", "dialout-trunk-predial-hook|") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/200-0824b4e0", "0?bypass|1") in new stack
-- Executing [s@macro-dialout-trunk:19] GotoIf("SIP/200-0824b4e0", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:20] Dial("SIP/200-0824b4e0", "SIP/VP-SIPSJCB/+12124831051|300|") in new stack
-- Called VP-SIPSJCB/+12124831051
-- SIP/VP-SIPSJCB-082750f0 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:21] Goto("SIP/200-0824b4e0", "s-CONGESTION|1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] GotoIf("SIP/200-0824b4e0", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,3)
-- Executing [s-CONGESTION@macro-dialout-trunk:3] NoOp("SIP/200-0824b4e0", "TRUNK Dial failed due to CONGESTION - failing through to other trunks") in new stack
-- Executing [12124831051@from-internal:6] Macro("SIP/200-0824b4e0", "outisbusy|") in new stack
-- Executing [s@macro-outisbusy:1] Playback("SIP/200-0824b4e0", "all-circuits-busy-now|noanswer") in new stack
-- <SIP/200-0824b4e0> Playing 'all-circuits-busy-now' (language 'en')
-- Executing [s@macro-outisbusy:2] Playback("SIP/200-0824b4e0", "pls-try-call-later|noanswer") in new stack
-- <SIP/200-0824b4e0> Playing 'pls-try-call-later' (language 'en')
-- Executing [s@macro-outisbusy:3] Macro("SIP/200-0824b4e0", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] ResetCDR("SIP/200-0824b4e0", "w") in new stack
-- Executing [s@macro-hangupcall:2] NoCDR("SIP/200-0824b4e0", "") in new stack
-- Executing [s@macro-hangupcall:3] GotoIf("SIP/200-0824b4e0", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,6)
-- Executing [s@macro-hangupcall:6] GotoIf("SIP/200-0824b4e0", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] GotoIf("SIP/200-0824b4e0", "1?theend") in new stack
-- Goto (macro-hangupcall,s,11)
-- Executing [s@macro-hangupcall:11] Hangup("SIP/200-0824b4e0", "") in new stack
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0' in macro 'hangupcall'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0' in macro 'outisbusy'
== Spawn extension (macro-hangupcall, s, 11) exited non-zero on 'SIP/200-0824b4e0'