Hi,
It is not very clear to me how to handle serial forking scenarios with
rtpengine where there are multiple RTP listeners attached to multiple
network interfaces.
That is to say, given:
rtpengine ... -i net1/xxx.xxx.xxx.xxx -i net2/yyy.yyy.yyy.yyy
1. I attempt to reach SIP gateway 1 via net1, calling rtpengine_manage()
in the process:
rtpengine_manage("replace-origin replace-session-connection
ICE=remove direction=$avp(rtp_src) direction=$avp(rtp_dest)");
2. The call to gateway 1 fails, and I roll over to gateway 2, reached
via net2, with dispatcher.
I have some logic that checks how $rd has changed and sets
$avp(rtp_dest) accordingly in the dispatcher failure_route[].
3. In that failure_route[], I call:
rtpengine_manage("replace-origin replace-session-connection
ICE=remove direction=$avp(rtp_src) direction=$avp(rtp_dest)");
4. When looking at the SDP for the INVITE on branch #2 going out to
gateway 2, it does not appear to utilise media endpoint yyy.yyy.yyy.yyy,
but rather continues to represent itself outwardly as xxx.xxx.xxx.xxx,
even to gateway #2.
I can't figure out what I'm doing wrong here, and the 'rtpengine'
documentation only has one mention of serial forking, in the context of
the discussion of the 'via-branch' parameter. As far as I can tell, this
is not relevant to my use-case; I am not concerned about deleting the
whole call from rtpengine, but rather about updating the SDP offer
consonantly with serial forking to gateway #2.
Any help would be deeply appreciated!
Thanks,
-- Alex
--
Alex Balashov | Principal | Evariste Systems LLC
303 Perimeter Center North, Suite 300
Atlanta, GA 30346
United States
Tel: +1-800-250-5920 (toll-free) / +1-678-954-0671 (direct)
Web:
http://www.evaristesys.com/,
http://www.csrpswitch.com/