No Audio or One-audio - SIP Incoming Call Forwarding to External Number via SIP trunk


  • Firmware version: or above
  • Model: S-Series PBX
  • Call incoming then forwarding via  SIP trunk to an external number.

Problem Description

Everything works like a charm in S20 before upgrading to from

But voice issue occurs after the upgrade when calling from an external number to the mobile number of the mobility extension.

Call flow example:

Calling party A ----- Inbound -----> PBX Forward the call ---- Outbound ----> Called party B.



When it comes to's PCAP log, an RTP(CN) is sent in the beginning by S20 to get through the communication channel of the call. This is for "pin-hole" and activates the temporary NAT session of the router so that the RTP from the provider can be sent to S20. Therefore S20 and port forwarding of the router is not required.

Nevertheless, this RTP(CN) mechanism is not compatible with all SIP providers, which had caused voice issues between S-Series and some SIP providers before. In the newest version, the RTP(CN) will be sent only when LCS (Linkus Cloud Service) is used to avoid compatibility issues. Without the RTP(CN), it is not able to activate the NAT session which leads to the no voice issue in this case.


As a result, the first solution is to make the port mapping.
Make sure NAT setting is configured on PBX: NAT Configuration
And the related RTP range for port forwarding is also configured: Port Forwarding Reference

However, this solution might be not easy for the dynamic public IP address. As you would need to configure the DDNS as well.

2. The other solution would be easier. It is to enable the Inband Progress in the SIP trunk advanced tab.


How this would work?

  1. Firstly, the option Inband Progress would generate RTP when the mobility extension party returns 180 Ringing packet. S20 will send the RTP marked as 1 for "pin-hole" in the picture to activate the NAT session between the caller and S20.
  2. Then the RTP marked as 2 from the caller can come back to S20 successfully.
  3. What's more, RTP marked as 2 will be passed to the called mobile number of the mobility extension via RTP marked as 3. RTP 3 would activate the NAT session between the S20 and called number.
  4. Finally, RTP marked as 4 would be able to return to S20. All communication is good in this call.




Choose either one according to your environment:

1.  Make port mapping for the PBX RTP port(UDP) range on your router. The external port range should be symmetric as the PBX port range. For example, the default RTP port range is 10000-12000.

2. Enable the Inband Progress of the SIP trunk which is used for forwarding the incoming call. 

3. Enable the RTP Keepalive option to overcome the "pinhole" difficulty.

1) Create  pjsip_custom.conf in the /ysdisk/support/customcfg/ via SSH


2) Fill in the content in pjsip_custom.conf


Save the file.

3) Input 2 commands to let the change take effect.

asterisk -rx "module reload"

Then test again.

Or you could refer to this video to learn how to enable it: Customize RTP Keepalive Option in PBX


Have more questions? Submit a request


  • 0

    I had the exact problem described in this article on a S20 with firmware Enabling the "Inband Progress" on the SIP trunk solved the problem right away.

  • 0

    Dear Shay,

    thank you very much for this article, we spent many hours to find this issue, now after enabling the inband progress everything is back on track.

    How could it be that a (automatic) firmware update is able to make such a problem?!    

    Edited by mj
Please sign in to leave a comment.