Hello,
On 12/23/11 12:58 PM, Arif Tuhin wrote:
Hi, I'm using the new kamailio 3.2 which has some changes in rtpproxy module. And i'm finding it hard to implement a certain configuration.
Because of our network infrastructure i have to repackage rtp streams in one direction. Now in kamailio 3.1.5 i used to do this in this way: *In main route* route[RTPPROXY]{ if(is_method("BYE"){ unforce_rtp_proxy(); else if(is_method("INVITE")){ force_rtp_proxy(); } *in onreply_route* force_rtp_proxy("z160");
Now in kamailio 3.2 the *force_rtp_proxy()* is replaced by *rtpproxy_manage(). *Here the script reads like: *main route* route[NATMANAGE] { #!ifdef WITH_NAT if (is_request()) { if(has_totag()) { if(check_route_param("nat=yes")) { setbflag(FLB_NATB); } } } if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB))) return; rtpproxy_manage("z150"); if (is_request()) { if (!has_totag()) { add_rr_param(";nat=yes"); } } if (is_reply()) { if(isbflagset(FLB_NATB)) { fix_nated_contact(); } } #!endif return;
*onreply_route* this block is called route[NATMANAGE].
Now if i put rtpproxy_manage("z150"), it tries to repackage in both direction which i do not want. So i need to write a separate block for onreply_route instead of calling route[NATMANAGE]. So please help me to write a block for onreply_route. Thanks in advance.
just copy&paste route[NATMANGE] to a new name like route[NATMANGEREPLY], update it to fit your needs and call it from the reply route.
Also, as you can see, there is an is_reply() function that you can use in route[NATMANGE] to make an IF condition around rtpproxy_mange() function to call it with different parameters.
Cheers, Daniel