On Thu, Mar 14, 2019 at 06:01:41PM +0200, Vitalii
Aleksandrov wrote:
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.
ICE is end to end.
rtpengine does nothing with other ICE candidates
(AFAIK). So removing those other candidates defeats the purpose IMHO.
You might as well remove any ICE and simply rewrite DSP
Oh, it actually does. If
you use ICE=force, rtpengine removes all ICE
candidates and inserts its own and both call participant can't to talk
to each other directly but still can use ICE to establish media streams
to rtpengine. ICE=force-relay does another cool thing. Using it call
participants try to talk directly and if they can't (both behind NAT)
they can still use "relay" candidate inserted by rtpengine and exchange
media via it. I just need a mixed behavior like default + force-relay
and don't want to hack rtpengine sources and then maintain my patches
when need to update it.