Sangoma Talk calls are now silent

I don’t know exactly when, but recently, SangomaTalk stopped working. The app registers the extension (which seems to take a long time), can start a call (to *43), and shows incoming calls (internal from the PBX extension), but after answering, no audio can be heard.

There have been no major changes to the “external” firewall rules (NAT and filter should still be correct, as they were a few months ago).

With sngrep, I can see that the phone sends the second “INVITE SDP” with credentials, the server responds with the usual “Trying” and “OK (SDP)”.

Normally at this point the phone/client would connect to some random UDP port of the server for RTP, but this doesn’t happen; the phone never replies after that. I checked in some very early firewall stage (prerouting) and there is any attempt from the phone to connect to any UDP port of the gateway.

I can also see that the phone apparently only requests “a=rtpmap:103 opus/48000/2” among the codecs,

and the server offers PCMU/PCMA/Opus.

Please note that the server sends 127.0.0.1 in the Contact header, and doesn’t offer G722 (usually it does). Is this correct?

Another notable fact is that the PBX establishes the RTP session (after 2 seconds) using the phone’s CGNAT address (as per the Via header) instead of the phone’s public address.

This issue doesn’t seem directly related to the following thread, other than the fact that it happened recently.

Sangoma Talk app not working after 14 > 16 upgrade