2010/4/24 Iñaki Baz Castillo ibc@aliax.net:
So let's suppose Kamailio-1 (1.1.1.1) using RtpProxy-1 (9.9.9.1) and Kamailio-2 (2.2.2.2) using RtpProxy-2 (9.9.9.2), and also a transparent SIP proxy between them (Proxy-X with IP 5.5.5.5).
- Kamailio-1 receives an INVITE from a client and forces RtpProxy-1,
so the SDP address becomes 9.9.9.1:PORT.
- Kamailio-1 routes the INVITE to Proxy-X (5.5.5.5).
- Proxy-X routes the INVITE to Kamailio-2.
- Kamailio-2 invokes "force_rtp_proxy()" with no flags.
Then RtpProxy-2 would wait for incoming RTP from 5.5.5.5 (signalling source address) or from 9.9.9.1:PORT (the address in the INVITE's SDP). Similar would occur with the 200 OK so RtpProxy-1 would wait for RTP comming from 5.5.5.5 or 9.9.9.2:PORT (the address in 200's SDP).
Finally (correct me if I'm wrong) RtpProxy-1 would forward the RTP from its client to 9.9.9.2:PORT after some timeout as no RTP was received from 5.5.5.5 or 9.9.9.2:PORT. Then RtpProxy-2 already knows where to send its RTP (or the same timeout could occur with same result as well).
I could do a test with the same scenario and unfortunatelly I miss something as it doesn't work:
RtpProxy-2 doesn't receive RTP, neither from 5.5.5.5 or 9.9.9.1:PORT, so after some time it decides to send the RTP to 5.5.5.5:PORT !! (the pre-filled caller's address in rtpproxy log). So in this case I need "-r" flag. Then after the timeout RtpProxy-2 would send the RTP to 9.9.9.1:PORT. Right?
Regards.