[SR-Users] Rtpproxy and UPDATEs

Daniel-Constantin Mierla miconda at gmail.com
Thu May 17 08:37:26 CEST 2012


Hello,

indeed, rtpproxy_manage() didn't handle UPDATE requests. I just pushed a 
patch in git master branch:

http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=24ff0d9aa060d183fbe40b1fcb5910d60940585b

If you can test the patch and report the results, I will backport to 3.2 
if all is fine.

rtpproxy_manage() is a wrapper around rtpproxy_offer() and 
rtpproxy_answer(), you can use these two functions for UPDATE request 
and reply as an alternative to rtpproxy_manage().

Cheers,
Daniel

On 5/16/12 7:56 PM, Spencer Thomason wrote:
> Hi Daniel,
> I have updated my script to ensure these UPDATEs call route(NATMANAGE) but it seems the problem is that rtpproxy_manage() does not handle UPDATEs.  Since the call is already passing through rtpproxy is there any way I can force these UPDATEs to keep it there?
>
> Thanks,
> Spencer
>
> On May 16, 2012, at 12:17 AM, Daniel-Constantin Mierla wrote:
>
>> Hello,
>>
>> be sure you call route(NATMANAGE) for UPDATE request and set an onreply_route where the reply will be handled and you have to call there route(NATMANAGE) as well.
>>
>> Cheers,
>> Daniel
>>
>> On 5/16/12 12:45 AM, Spencer Thomason wrote:
>>> Hello,
>>> I'm working on a residential type application where we are using Kamailio for NAT traversal and Freeswitch as a voicemail and media server.  When a UA that is behind NAT sends an INVITE to check voicemail everything works correctly until the user listens to the message.  The sdp in the initial INVITE is rewritten and rtp proxy is working but Freeswitch (on a public IP) then sends an UPDATE to display the caller name of the person who left the message.  The problem is that the UAC (in this case a Polycom phone) then responds with its private IP in the SDP.  Is there a was to handle these UPDATEs?  I'm using Kamailio 3.2.3 with a fairly stock config.  This is an excerpt of the config file with the NAT handling route:
>>>
>>> # RTPProxy control
>>> route[NATMANAGE] {
>>>      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();
>>>
>>>      if (is_request()) {
>>>          if (!has_totag()) {
>>>              add_rr_param(";nat=yes");
>>>          }
>>>      }
>>>
>>>      if (is_reply()) {
>>>          if(isbflagset(FLB_NATB)) {
>>>              fix_nated_contact();
>>>          }
>>>      }
>>>      return;
>>> }
>>>
>>>
>>> Thanks,
>>> Spencer
>>>
>>>
>>>
>>> _______________________________________________
>>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>>> sr-users at lists.sip-router.org
>>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>> -- 
>> Daniel-Constantin Mierla - http://www.asipto.com
>> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>>
>>
>>

-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda






More information about the sr-users mailing list