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.