I was able to log in and make calls with both UDP and WSS/WebRTC clients (until asterisk 20.15), but with Asterisk 20.16 something changed.
I can still log in and everything works fine with WebRTC, but with UDP clients only audio is sent. Nothing is received. Basically, the called number listens to me, but I can’t hear them.
I ran a log and the SRTP packet has a negative length. But on the PBX with chanSpy I can hear audio in both directions.
i’ve read in the changelog that res_rtp_asterisk: Don’t send RTP before DTLS has negotiated.
but shouldn’t DTSL negotiation even start in UDP, or am I wrong?
This was never truly a supported configuration. The change put into place to prevent audio leakage was indeed likely the cause, since for normal UDP it is unlikely that DTLS is in use (you haven’t provided logging so I can only guess).
ty for the answer. DTLS isn’t used by the UDP client. So in asterisk (20.16) is it impossible to have the same endpoint to register both WebRTC and UDP clients?
It has never been supported, tested, or actually implemented properly. It worked by luck for you in your specific situation. Due to the given change it is not possible anymore. Further work would need to be done to actually properly support it.
It wasn’t a good idea to use two different endpoints. It’s complicated to receive inbound calls. I solved this by putting Kamailio in front of Asterisk for WebRTC recordings. If anyone is interested, I’d be happy to help set up Kamailio + Asterisk.