[Kamailio-Devel] About usage of multiple RtpProxies
Iñaki Baz Castillo
ibc at aliax.net
Thu Apr 16 21:38:01 CEST 2009
Hi, I wonder how to manage various RtpProxies. rtpproxy module already allows
using various of them but AFAIK there is a limitation since there is no easy
way to reuse the same rtpproxy when handling re-INVITE's, I mean:
- Initla INVITE arrives and our Kamailio invokes "force_rtpproxy()".
- rtpproxy module selects RtpProxy node 1 (random).
- 180/200 arrives, how to force the same RtpProxy? I expect that transaction
data already contains the used node so it's applied to the reply.
- But later a re-INVITE (on hold) arrives. How to re-use the same RtpProxy? I
don't like/want solutions based on From domain and so.
If I'm wrong in the above please tell me. If not, I'd like to propose/code a
feature in rtpproxy module:
- When the initial INVITE arrives, we run "force_rtpproxy()" (I think there is
now a new/other similar function).
- After running this function, rtpproxy module sets a pseudo-variable with the
id of the selected node (randomly), i.e:
$rtpproxy_id => 3
- Then we can append a parameter to Record-Route headers:
- In this way, when receiving a re-INVITE we can inspect that parameter from
Route header and invoke "force_rtpproxy" passing as parameter the value 3 (to
force the usage of the third node).
Do you consider this a good idea? any suggestion?
BTW: I think that for SIP-Router there is a new RtpProxy project using the
Kernel conntrack to manage sockets and connections (as MediaProxy 2 does). Is
it true? will it require a different rtpproxy module for SIP-Router?
Iñaki Baz Castillo <ibc at aliax.net>
More information about the Devel