Issues with MicroSIP transfering calls and hanging up

I am having issues with call reliability with a MicroSip Softphone on a PC. Calls into the extension or out of it send and receive audio fine. However, when I attempt to transfer the call on the MicroSip, the call is not transferred. After I attempt a transfer I still send and receive audio on the call, however after about 30 seconds I run into the Request Timeout Issue and the call is dropped on both ends. I get this error in the Asterisk Logfiles.

NOTICE[5644]: res_pjsip_sdp_rtp.c:187 rtp_check_timeout: Disconnecting channel ‘PJSIP/401-00000096’ for lack of audio RTP activity in 30 seconds

This issue also occurs when I hang up the call on the MicroSip. On the MicroSip the call ends, but on the other end of the call the call hangs and doesn’t get their call hung up for 30 seconds. In the Asterisk Logfiles I get the same RTP error as above after the hang up.

This is with a Microsip on the same network as the FreePBX console. Running Freepbx 16.0.40.7 Asterisk 13.38.3 and Microsip 3.21.3. I can also post the Microsip log file, but I am nervous about posting too much infrastructure information on a public forum if it is not needed.

Try setting Direct Media for the MicroSIP extension to No.
On MicroSIP, check that Public Address is Auto and STUN Server is unchecked.

Debuggging the BYE issue should be easier than transfers.

If no luck, at the Asterisk command prompt, type
pjsip set logger on
make a test call to another local extension, answer, hang up MicroSIP.

Paste the Asterisk log, redacted as desired, at pastebin.com and post the link here.
I’m not sure what private data you are concerned about. If it’s extension numbers, replace the caller with 101 and the callee with 102. If it’s internal IP addresses, replace the caller’s with 10.0.0.a, the callee’s with 10.0.0.b and Asterisk’s with 10.0.0.c. I don’t believe that any other sensitive info should appear in the log; please explain if you are still concerned.

Thanks for your help Stewart. I did set the Direct Media to no but that did not help. The STUN server and public address were already set to what you recommended.

Here is a pastebin of a call I made from a local extension to the MicroSIP.
I cannot post links as I have only recently made my account but you can get to it by putting “GX4sf8ec” after the pastebin url.

192.168.0.1 is Freepbx
192.168.8.8 is public Ip
192.168.1.1 is local extension 105
192.168.1.9 is MicroSip 401

On lines 412 and 415 of the paste, Asterisk incorrectly substituted its public IP address, even though it was contacting a host on the LAN. Usually this is caused by Local Networks not being correctly set.

I don’t know how to interpret your redaction. It seems to show FreePBX and the extensions on different subnets, unless you have 192.168.0.0 / 23 .

In Asterisk SIP Settings, General tab, the Local Networks entries should cover all local subnets. For example, you might have
192.168.0.0 / 24
192.168.1.0 / 24

If you change these settings, after Submit and Apply Config you must restart Asterisk.

1 Like

Thanks a lot for your help! You were right it was an issue with the local networks. I had given the computer on the MicroSip access through the firewall, but I didn’t think to check within the asterisks setting as well. I apologize for the confusing redactions. Thank you again for your help.

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