Hello,
This is my last attempt at fixing this issue before downgrading Asterisk to v20 and re-enabling chan_sip for these devices, until I throw them away some time next year.
Since we upgraded our PBX to FreePBX 17 with Asterisk 21 and migrated from chan_sip to chan_pjsip, we are experiencing a random one-way audio issue with our Gigaset cordless phones.
During some calls, the Gigaset handset can receive audio (remote party is heard), but the remote party cannot hear the Gigaset user.
The issue seems random: some calls work fine, but most have one-way audio.
Hanging up the call from the Gigaset does not always generate a proper BYE.
Other phones (Yealink, both desk and cordless) do not show this problem.
Troubleshooting so far:
-
Tested with all codecs (G.711, G.726, G.729 with/without Annex B, G.722). The issue persists regardless of codec.
-
Tested also with an internal loopback function (999 extension → Echo() application). Even in this case, the handset can hear the echo only for a few seconds, then silence, with sporadic short bursts of audio. So the problem happens without any external carrier or NAT traversal.
-
RTP debug shows Asterisk sending and receiving RTP packets normally from the correct handset IP/port during the call.
-
RTP keepalive is set (rtp_keepalive=30). Tried lowering/raising it, no change.
-
With chan_sip (Asterisk 20, FreePBX 14) the exact same phones worked fine on the same network. The issue appeared only after the migration to chan_pjsip.
-
No firewall or NAT changes were made during the migration
Environment:
- PBX: FreePBX 17.0.21, Asterisk 21.10.2
- Network: PBX behind NAT, externip and localnet configured
- Phones: Gigaset C610 and C530 base stations, ~8 handsets
- Endpoint settings rtp_symmetric=yes, rewrite_contact=yes, force_rport=yes, direct_media=no
At this point it looks like a chan_pjsip compatibility issue with Gigaset SIP stacks, since the audio streams are present but not properly handled, and the same hardware works fine with chan_sip.
Has anyone experienced similar problems with Gigaset + chan_pjsip? Any known workarounds before I give up?
Thanks in advance.