No audio problem using mobile softphone

Hello all,

I’m using Freepbx 15.0.23 on a raspberry Pi 4 at home with fixed hardware phones and a cell phone. The PBX is inside the home network and every devices use the PJSIP module.

The fixed phones are also inside the home network and are Yealink T22P and T28P. These phones works with no problem.

The cell phone is used like a regular extension with the Groundwire Acrobits app.

The network is behind NAT.
I opened the 5060 port on the router and forwarded to the PBX. The RTP ports are not forwarded because I many people here says that it’s not recommended doing so.
I registered a dynamic host to point to my IP. On the cell phone, I use that address as the server and stripped the RTP ports range to about 20 ports.
I restricted to use only g722 codec. I must disable the wifi on the phone to be able to connect to the PBX, but that’s probably a router config issue.

I can receive and place calls, but the problem is when the communication is established, there is no audio in and out.
Placing a call between extensions works great though, still using the public dynamic domain with wifi disabled (using LTE).

What I tried, with no luck :

  • Setting audio recording to Forced
  • Setting “Allow transport reload” to Yes
  • Enabling Follow Me module

Could someone tell me what’s wrong with my setup please?
Thank you

You don’t seem to have told FreePBX your public address (or your local networks).

Hello,

In the General SIP Settings :

  • the Public IP is set and is pointing to my external IP,
  • in “Local Networks”, I added three local subnets. PBX is on the local subnet 192.168.10.0/24, Cell phone is on subnet 192.168.11.0/24, and fixed phones are on subnet 192.168.20.0/24.

In the SIP Settings chan_pjsip :

  • “Domain the transport comes from”, I put the public dynamic domain.
  • “External IP Address”, it’s my public IP. The same as the General SIP Settings.
  • “Local Network”, I put “192.168.0.0/16”
    I noted that the title box is labeled as “0.0.0.0 (udp)”. Is there supposed to have an IP there?

Is there somewhere else I need to specify network addresses?

I’m sorry if I misunderstood something, but you don’t have any RTP forwarded to your PBX, but you want to connect from a remote device to it? This only works if you are not using the PBX as a server for remote devices. As soon as you want to connect to the PBX remotely, there needs to be some way to communicate. Just set up a port forwarding for RTP and you should be good to go.
Besides that you might want to consider setting up TLS. It will increase your network security significantly. At least for the remote clients.

Hello AdFun7911,

You are correct, the RTP ports are not forwarded and publicly accessible, because I thought these communication ports would open by the PBX using the 5060 port.
I saw some other posts saying it was not required doing so, that’s why I left that part alone.

Anyway, that makes sense. I will make some more tests tomorrow.
Thanks!

I relatively easy scrutiny of transactions as seen by sngrep will normally identify where the negotiated SDP connection is being mis-routed after a successful SIP transaction.

Are you sure they are part of your local networK? I suspect you have a double NAT arrangement.

Sometimes routers can look inside the SIP traffic and set up rules based on the SDP. That does require that the SDP contains the right addresses. I’d suggest initially explicitly forwarding, as it is one less thing that can go wrong.

Please confirm that you are using chan_pjsip, as there is no point in trying to debug the deprecated driver configuration.

Note that this is only possible if you use the standard, 5060, port number (which is poor security practice) and don’t use encryption.

Are you sure they are part of your local networK? I suspect you have a double NAT arrangement.

The subnets are all managed by the same router (several interfaces and many VLAN). But you are right wondering if the Cell phone is part of the local network because I am always in LTE when testing the calls. That info was meaningless for you.

I confirm that I’m using the chan_pjsip.
And you are giving a good point for the default port. At the moment I’m using 5060, but will change it as soon as the problem will be sorted out.

Thank you

Until you know that your router properly manages the RTP, suggest you create firewall rules to forward the entire range to the PBX to see if that resolves.

Well it turns out that the problem was the RTP ports that weren’t open on the firewall.
It’s working fine now. Thank you all for your help!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.