On 14.03.19 17:09, Daniel Tryba wrote:
On Thu, Mar 14, 2019 at 02:47:24PM +0200, Vitalii Aleksandrov wrote:
Well it's mostly rtpengine question but didn't know where should I send it and probably the answer will be more or less useful for kamailio users.
I get the feeling. You could open an issue in github, but sipwise/rtpengine devs frequent here.
It's not a bug. rtpengine works exactly as described in docs. Maybe a feature request issue.
By default if an offer has ICE candidates rtpengine leaves them untouched and just inserts itself as an additional low priority candidate and also rewrites c= line for the callee without ICE support. Using ICE=force-relay rtpengine inserts itself as a "relay" candidate what is great but doesn't touch c= line and callee without ICE have no chance to send RTP to rtpengine. Is it possible somehow to make a third behavior like force-relay + rtpengine IP in c= param? It would allow any callee to send media to rtpengine regardless of ICE support.
What is wrong with the default behavior? That adds ICE records and rewrites SDP c=.
When a call goes through multiple proxies and every proxy inserts itself SDP becomes really huge. What I like in "force-relay" is that it removes previously inserted "relay" candidates and inserts itself. Hope rtpengine will still talk to those relay candidates on incoming leg if "host" are not reachable. So I'm satisfied with "force-relay" when call to ICE supported phone, but when callee can't do ICE I'm in trouble.