Media timeout handling is not dependent on RTCP. (And also RTCP is not dependent on the presence of `a=rtcp` in the SDP...)
So if your call is terminated due to media timeout despite media flowing, then something else must be going on. Perhaps media is not actually passing through rtpengine? Or something else is triggering the timeout and terminating the call?
Cheers

--
You received this message because you are subscribed to the Google Groups "rtpengine" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rtpengine+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rtpengine/56ba8ea8-5a77-4e2b-83a1-8211d28c888an%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Hi Richard,
I upgraded the server to 9.5.4.2 however the issue is still happening. I increased the log level to 7 and made a call. The log trace is attached here. The Call-Id in question is c8f9530e-571b-4e34-bc17-369eb8c8cb70. Call-Id gVECPKr6aZmndhM8TO0AtzQYKuzdcG3f is the the stream from the caller to rtpengine.
Just by way of some context; below is what the architecture looks like. Callers come in from the public internet and send RTP to the rtpengine public interface. The SIP carrier is on a private link and so the RTP interface is the private one.
CALLER --- KAMAILIO_1 ------- ASTERISK ----- KAMAILIO_2 ------ SIP CARRIER
\ /--------------------------------- RTPENGINE -------------------------------
Any insights would be greatly appreciated.
I notice that you're offering ICE to your B-party (ICE=force in your offer) which the responds with an SDP that contains ICE attributes (ufrag and pwd) but not a single ICE candidate. So your B-party is accepting the ICE offer but isn't providing any candidates to talk to. (This is valid under trickle ICE, where candidates are provided later, but this case isn't trickle ICE.) And this is why your call times out, because ICE fails due to lack of candidates.
In fact your B-party seems to simply mirror back the provided ICE attributes (their content is the same) without understanding what they mean. (UAs like sems tend to do stupid things like that.)
So either fix your B-party so it doesn't erroneously accept ICE
when it doesn't actually speak ICE, or don't offer ICE to that
B-party to begin with.
Cheers