ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    One way audio on an IAX2 trunk

    IT Discussion
    asterisk iax2 one way audio freepbx
    4
    9
    2.9k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • JaredBuschJ
      JaredBusch
      last edited by

      I know it has to be a firewall or network setting. But tired Jared is tired and not thinking clearly.

      IAX2 trunk between client FreePBX 13 and my system (older FreePBX 11).

      I have routes setup and calls complete.

      Call from my PBX to Client and there is 2 way audio.

      Call from client to my PBX, and I can hear client, but they cannot hear me.

      Connection between phone systems is over an IPSEC VPN tunnel.

      Which side is the problem here?

      Both ends have an Ubiquiti ERL for their router.

      gjacobseG 1 Reply Last reply Reply Quote 1
      • gjacobseG
        gjacobse @JaredBusch
        last edited by

        @JaredBusch
        Would it be a port issue? I've not dealt with PBX systems like you, @art_of_shred, @Mike-Ralston or others have,.. but if the ports are open, I would think that should cover it.

        1 Reply Last reply Reply Quote 0
        • J
          Jason Banned
          last edited by

          Is the MTU set correctly?

          Are you doing NAT over the VPN?

          Do you have STUN setup?

          1 Reply Last reply Reply Quote 0
          • J
            Jason Banned
            last edited by

            Also did you add the network for the remote site in asterisk?

            JaredBuschJ 1 Reply Last reply Reply Quote 0
            • scottalanmillerS
              scottalanmiller
              last edited by

              Oh yeah, check subnet masks on the machines, just in case.

              1 Reply Last reply Reply Quote 0
              • JaredBuschJ
                JaredBusch
                last edited by

                Did more trouble shooting on this today and I am still confused.

                Both PBX systems were using the external IP addresses and not the IPSEC VPN.

                I did try it on the IPSEC VPN with no difference.

                PBX A calls PBX B and the person on PBX B has 2 way audio. The person on PBX A cannot hear the person on PBX B.

                PBX B calls to PBX A and both parties have 2 way audio normally.

                PBX B also has an IAX2 trunk to PBX C and PBX D. All calls work perfectly for those.

                1 Reply Last reply Reply Quote 0
                • JaredBuschJ
                  JaredBusch
                  last edited by

                  Here is a test call from PBX A (ext 220) to PBX B (ext 103) where PBX A cannot hear PBX B.

                  [root@pbx ~]# asterisk -rvvvvv
                  Asterisk 13.9.1, Copyright (C) 1999 - 2014, Digium, Inc. and others.
                  Created by Mark Spencer <[email protected]>
                  Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
                  This is free software, with components licensed under the GNU General Public
                  License version 2 and other licenses; you are welcome to redistribute it under
                  certain conditions. Type 'core show license' for details.
                  =========================================================================
                  Connected to Asterisk 13.9.1 currently running on pbx (pid = 1822)
                      -- Executing [103@from-internal:1] Macro("PJSIP/220-00000007", "user-callerid,LIMIT,EXTERNAL,") in new stack
                      -- Executing [s@macro-user-callerid:1] Set("PJSIP/220-00000007", "TOUCH_MONITOR=1463375032.14") in new stack
                      -- Executing [s@macro-user-callerid:2] Set("PJSIP/220-00000007", "AMPUSER=220") in new stack
                      -- Executing [s@macro-user-callerid:3] GotoIf("PJSIP/220-00000007", "0?report") in new stack
                      -- Executing [s@macro-user-callerid:4] ExecIf("PJSIP/220-00000007", "1?Set(REALCALLERIDNUM=220)") in new stack
                      -- Executing [s@macro-user-callerid:5] Set("PJSIP/220-00000007", "AMPUSER=220") in new stack
                      -- Executing [s@macro-user-callerid:6] GotoIf("PJSIP/220-00000007", "0?limit") in new stack
                      -- Executing [s@macro-user-callerid:7] Set("PJSIP/220-00000007", "AMPUSERCIDNAME=IT Department") in new stack
                      -- Executing [s@macro-user-callerid:8] GotoIf("PJSIP/220-00000007", "0?report") in new stack
                      -- Executing [s@macro-user-callerid:9] Set("PJSIP/220-00000007", "AMPUSERCID=220") in new stack
                      -- Executing [s@macro-user-callerid:10] Set("PJSIP/220-00000007", "__DIAL_OPTIONS=Ttr") in new stack
                      -- Executing [s@macro-user-callerid:11] Set("PJSIP/220-00000007", "CALLERID(all)="IT Department" <220>") in new stack
                      -- Executing [s@macro-user-callerid:12] GotoIf("PJSIP/220-00000007", "0?limit") in new stack
                      -- Executing [s@macro-user-callerid:13] ExecIf("PJSIP/220-00000007", "1?Set(GROUP(concurrency_limit)=220)") in new stack
                      -- Executing [s@macro-user-callerid:14] ExecIf("PJSIP/220-00000007", "0?Set(CHANNEL(language)=)") in new stack
                      -- Executing [s@macro-user-callerid:15] GotoIf("PJSIP/220-00000007", "1?continue") in new stack
                      -- Goto (macro-user-callerid,s,29)
                      -- Executing [s@macro-user-callerid:29] Set("PJSIP/220-00000007", "CALLERID(number)=220") in new stack
                      -- Executing [s@macro-user-callerid:30] Set("PJSIP/220-00000007", "CALLERID(name)=IT Department") in new stack
                      -- Executing [s@macro-user-callerid:31] Set("PJSIP/220-00000007", "CDR(cnum)=220") in new stack
                      -- Executing [s@macro-user-callerid:32] Set("PJSIP/220-00000007", "CDR(cnam)=IT Department") in new stack
                      -- Executing [s@macro-user-callerid:33] Set("PJSIP/220-00000007", "CHANNEL(language)=en") in new stack
                      -- Executing [103@from-internal:2] Gosub("PJSIP/220-00000007", "sub-record-check,s,1(out,103,dontcare)") in new stack
                      -- Executing [s@sub-record-check:1] GotoIf("PJSIP/220-00000007", "0?initialized") in new stack
                      -- Executing [s@sub-record-check:2] Set("PJSIP/220-00000007", "__REC_STATUS=INITIALIZED") in new stack
                      -- Executing [s@sub-record-check:3] Set("PJSIP/220-00000007", "NOW=1463375032") in new stack
                      -- Executing [s@sub-record-check:4] Set("PJSIP/220-00000007", "__DAY=16") in new stack
                      -- Executing [s@sub-record-check:5] Set("PJSIP/220-00000007", "__MONTH=05") in new stack
                      -- Executing [s@sub-record-check:6] Set("PJSIP/220-00000007", "__YEAR=2016") in new stack
                      -- Executing [s@sub-record-check:7] Set("PJSIP/220-00000007", "__TIMESTR=20160516-000352") in new stack
                      -- Executing [s@sub-record-check:8] Set("PJSIP/220-00000007", "__FROMEXTEN=220") in new stack
                      -- Executing [s@sub-record-check:9] Set("PJSIP/220-00000007", "__MON_FMT=wav") in new stack
                      -- Executing [s@sub-record-check:10] NoOp("PJSIP/220-00000007", "Recordings initialized") in new stack
                      -- Executing [s@sub-record-check:11] ExecIf("PJSIP/220-00000007", "0?Set(ARG3=dontcare)") in new stack
                      -- Executing [s@sub-record-check:12] Set("PJSIP/220-00000007", "REC_POLICY_MODE_SAVE=") in new stack
                      -- Executing [s@sub-record-check:13] ExecIf("PJSIP/220-00000007", "0?Set(REC_STATUS=NO)") in new stack
                      -- Executing [s@sub-record-check:14] GotoIf("PJSIP/220-00000007", "3?checkaction") in new stack
                      -- Goto (sub-record-check,s,17)
                      -- Executing [s@sub-record-check:17] GotoIf("PJSIP/220-00000007", "1?sub-record-check,out,1") in new stack
                      -- Goto (sub-record-check,out,1)
                      -- Executing [out@sub-record-check:1] NoOp("PJSIP/220-00000007", "Outbound Recording Check from 220 to 103") in new stack
                      -- Executing [out@sub-record-check:2] Set("PJSIP/220-00000007", "RECMODE=dontcare") in new stack
                      -- Executing [out@sub-record-check:3] ExecIf("PJSIP/220-00000007", "1?Goto(routewins)") in new stack
                      -- Goto (sub-record-check,out,7)
                      -- Executing [out@sub-record-check:7] Gosub("PJSIP/220-00000007", "recordcheck,1(dontcare,out,103)") in new stack
                      -- Executing [recordcheck@sub-record-check:1] NoOp("PJSIP/220-00000007", "Starting recording check against dontcare") in new stack
                      -- Executing [recordcheck@sub-record-check:2] Goto("PJSIP/220-00000007", "dontcare") in new stack
                      -- Goto (sub-record-check,recordcheck,3)
                      -- Executing [recordcheck@sub-record-check:3] Return("PJSIP/220-00000007", "") in new stack
                      -- Executing [out@sub-record-check:8] Return("PJSIP/220-00000007", "") in new stack
                      -- Executing [103@from-internal:3] ExecIf("PJSIP/220-00000007", "0 ?Set(CDR(accountcode)=)") in new stack
                      -- Executing [103@from-internal:4] Set("PJSIP/220-00000007", "INTRACOMPANYROUTE=YES") in new stack
                      -- Executing [103@from-internal:5] Set("PJSIP/220-00000007", "MOHCLASS=default") in new stack
                      -- Executing [103@from-internal:6] Set("PJSIP/220-00000007", "_NODEST=") in new stack
                      -- Executing [103@from-internal:7] Macro("PJSIP/220-00000007", "dialout-trunk,2,103,,off") in new stack
                      -- Executing [s@macro-dialout-trunk:1] Set("PJSIP/220-00000007", "DIAL_TRUNK=2") in new stack
                      -- Executing [s@macro-dialout-trunk:2] GosubIf("PJSIP/220-00000007", "0?sub-pincheck,s,1()") in new stack
                      -- Executing [s@macro-dialout-trunk:3] GotoIf("PJSIP/220-00000007", "0?disabletrunk,1") in new stack
                      -- Executing [s@macro-dialout-trunk:4] Set("PJSIP/220-00000007", "DIAL_NUMBER=103") in new stack
                      -- Executing [s@macro-dialout-trunk:5] Set("PJSIP/220-00000007", "DIAL_TRUNK_OPTIONS=Ttr") in new stack
                      -- Executing [s@macro-dialout-trunk:6] Set("PJSIP/220-00000007", "OUTBOUND_GROUP=OUT_2") in new stack
                      -- Executing [s@macro-dialout-trunk:7] GotoIf("PJSIP/220-00000007", "1?nomax") in new stack
                      -- Goto (macro-dialout-trunk,s,9)
                      -- Executing [s@macro-dialout-trunk:9] GotoIf("PJSIP/220-00000007", "1?skipoutcid") in new stack
                      -- Goto (macro-dialout-trunk,s,12)
                      -- Executing [s@macro-dialout-trunk:12] GosubIf("PJSIP/220-00000007", "0?sub-flp-2,s,1()") in new stack
                      -- Executing [s@macro-dialout-trunk:13] Set("PJSIP/220-00000007", "OUTNUM=103") in new stack
                      -- Executing [s@macro-dialout-trunk:14] Set("PJSIP/220-00000007", "custom=IAX2/aci_to_bundy") in new stack
                      -- Executing [s@macro-dialout-trunk:15] ExecIf("PJSIP/220-00000007", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)Ttr)") in new stack
                      -- Executing [s@macro-dialout-trunk:16] ExecIf("PJSIP/220-00000007", "0?Set(DIAL_TRUNK_OPTIONS=TtrM(confirm))") in new stack
                      -- Executing [s@macro-dialout-trunk:17] Macro("PJSIP/220-00000007", "dialout-trunk-predial-hook,") in new stack
                      -- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("PJSIP/220-00000007", "") in new stack
                      -- Executing [s@macro-dialout-trunk:18] GotoIf("PJSIP/220-00000007", "0?bypass,1") in new stack
                      -- Executing [s@macro-dialout-trunk:19] ExecIf("PJSIP/220-00000007", "1?Set(CONNECTEDLINE(num,i)=103)") in new stack
                      -- Executing [s@macro-dialout-trunk:20] ExecIf("PJSIP/220-00000007", "1?Set(CONNECTEDLINE(name,i)=CID:220)") in new stack
                      -- Executing [s@macro-dialout-trunk:21] ExecIf("PJSIP/220-00000007", "0?Set(CONNECTEDLINE(name,i)=CID:(Hidden)220)") in new stack
                      -- Executing [s@macro-dialout-trunk:22] GotoIf("PJSIP/220-00000007", "0?customtrunk") in new stack
                      -- Executing [s@macro-dialout-trunk:23] Dial("PJSIP/220-00000007", "IAX2/aci_to_bundy/103,300,Ttr") in new stack
                      -- Called IAX2/aci_to_bundy/103
                      -- Call accepted by XXX.XXX.XXX.13:4569 (format alaw)
                      -- Format for call is (alaw)
                      -- IAX2/aci_to_bundy-897 is ringing
                      -- IAX2/aci_to_bundy-897 is ringing
                      -- IAX2/aci_to_bundy-897 answered PJSIP/220-00000007
                      -- Channel IAX2/aci_to_bundy-897 joined 'simple_bridge' basic-bridge <67c8af7d-33c9-4712-a076-5e8f5b2e06ef>
                      -- Channel PJSIP/220-00000007 joined 'simple_bridge' basic-bridge <67c8af7d-33c9-4712-a076-5e8f5b2e06ef>
                         > 0x7f36fc728aa0 -- Probation passed - setting RTP source address to 10.254.103.10:11938
                      -- Channel IAX2/aci_to_bundy-897 left 'simple_bridge' basic-bridge <67c8af7d-33c9-4712-a076-5e8f5b2e06ef>
                      -- Hungup 'IAX2/aci_to_bundy-897'
                      -- Channel PJSIP/220-00000007 left 'simple_bridge' basic-bridge <67c8af7d-33c9-4712-a076-5e8f5b2e06ef>
                    == Spawn extension (macro-dialout-trunk, s, 23) exited non-zero on 'PJSIP/220-00000007' in macro 'dialout-trunk'
                    == Spawn extension (from-internal, 103, 7) exited non-zero on 'PJSIP/220-00000007'
                      -- Executing [h@from-internal:1] Macro("PJSIP/220-00000007", "hangupcall") in new stack
                      -- Executing [s@macro-hangupcall:1] GotoIf("PJSIP/220-00000007", "1?theend") in new stack
                      -- Goto (macro-hangupcall,s,3)
                      -- Executing [s@macro-hangupcall:3] ExecIf("PJSIP/220-00000007", "0?Set(CDR(recordingfile)=)") in new stack
                      -- Executing [s@macro-hangupcall:4] Hangup("PJSIP/220-00000007", "") in new stack
                    == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'PJSIP/220-00000007' in macro 'hangupcall'
                    == Spawn extension (from-internal, h, 1) exited non-zero on 'PJSIP/220-00000007'
                  pbx*CLI>
                  
                  1 Reply Last reply Reply Quote 0
                  • JaredBuschJ
                    JaredBusch
                    last edited by

                    Circling back to this... I need more damned time in a day....

                    As far as I can tell the firewalls are all correctly forwarding traffic.

                    WTF

                    1 Reply Last reply Reply Quote 2
                    • JaredBuschJ
                      JaredBusch @Jason
                      last edited by

                      @Jason said in One way audio on an IAX2 trunk:

                      Also did you add the network for the remote site in asterisk?

                      Found this topic again after checking the IAX2 tag.

                      Thought I would update with the answer.

                      This was the problem

                      1 Reply Last reply Reply Quote 0
                      • 1 / 1
                      • First post
                        Last post