<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    <br>
    in the onreply_route block use rtpproxy_manage(), not
    fix_nated_sdp().<br>
    <br>
    Cheers,<br>
    Daniel<br>
    <br>
    <div class="moz-cite-prefix">On 10/9/12 10:57 AM, MARINA SERRANO
      MONTES wrote:<br>
    </div>
    <blockquote
      cite="mid:8654B3E2294AB0439D60F0A7245577C80421D4@EX10-MB2-MAD.hi.inet"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">Hi Daniel,</div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px"><br>
        </div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">Thanks. But, I think there is any think I have
          not understand.</div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">I have my route[MCU] module with the following
          code:</div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><br>
          </div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px">route [MCU]{</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>if
            (uri=~"^sip:[7,8][0-9]+@"){</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>xlog("Forward to MCU");</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px">              <span class="Apple-tab-span"
              style="white-space:pre">
            </span>rewritehost("10.95.94.142"); </div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>rewriteport("5070");</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>rtpproxy_manage();</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span></div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>t_relay();</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span></div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span> t_on_reply("CHANGE_SDP");</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>xlog("after forward to
            MCU");</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><span class="Apple-tab-span"
              style="white-space:pre"></span>exit;</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px">        }</div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px"><br>
          </div>
          <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
            font-size:14px">}</div>
          <div><br>
          </div>
        </div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">
          <div>onreply_route[CHANGE_SDP] {</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span></div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>xlog("CHANGE_SDP");</div>
          <div><br>
          </div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>if(t_check_status("(200)|(183)"))</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>{</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>if(has_body("application/sdp"))</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>{</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>if(search("IN
            IP4 10.95.94.142"))</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>{</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>xlog("search
            IN IP4 .142");</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span><b>fix_nated_sdp("2",
              "195.235.93.8"); </b>//where 195.235.93.8 --&gt;public IP
            of sip server with rtpproxy</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>}</div>
          <div><br>
          </div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>}</div>
          <div><span class="Apple-tab-span" style="white-space:pre"></span>}</div>
          <div><br>
          </div>
          <div>}</div>
        </div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px"><br>
        </div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px"><br>
        </div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px">If I comment t_on_reply("CHANGE_SDP") line, I
          can observe traffic from MCU to rtpproxy is received (testing
          using tcpdump), but traffic from endpoint to rtpproxy is not
          received and therefore, input traffic MCU is null. In this
          case, using only: rtpproxy_manage(),<b> the IP in SDP are not
            replaced by rtpproxy IP.</b></div>
        <div style="color:rgb(0,0,0); font-family:Calibri,sans-serif;
          font-size:14px"><br>
        </div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">If I
            don't comment </font><span class="Apple-style-span"
            style="font-size:14px; font-family:Calibri,sans-serif"> t_on_reply("CHANGE_SDP"),
            in this case, I force to replace IP using "fix_<span
              style="font-style:italic">nated_</span>sdp("2", publicIP)"
            and I can observe using tcpdump in server than traffic from
            endpoint from rtpproxy is received, but traffic from
            rtpproxy to MCU is not received and traffic from MCU to
            rtpproxy is not received.</span></div>
        <div style="font-family:Calibri; font-size:medium"><span
            class="Apple-style-span" style="font-size:14px;
            font-family:Calibri,sans-serif"><br>
          </span></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">My
            question is, how can I set up using "rtpproxy_manage(),…."to
            allow all there traffic will be routed rightly through
            rtpproxy?</font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">Should I
            add any new line in my config file? Anything to change?</font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif"><br>
          </font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">Many
            thanks.</font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif"><br>
          </font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif"><br>
          </font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">I attach
            part of the full route file:</font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif"><span
              class="Apple-style-span" style="font-size:14px">
              <div>
                <div># Main SIP request routing logic</div>
                <div># - processing of any incoming SIP request starts
                  with this route</div>
                <div># - note: this is the same as route { ... }</div>
                <div>request_route {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># NAT detection</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(NATDETECT);</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>### only initial
                  requests (no To tag)</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_check_trans();</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># record routing for
                  dialog forming requests (in case they are routed)</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># - remove preloaded
                  route headers</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>remove_hf("Route");</div>
                <div><br>
                </div>
                <div>        if (is_method("INVITE"))</div>
                <div>             
                   record_route_preset("195.235.93.8:5070;transport=TCP");</div>
                <div><br>
                </div>
                <div> </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (is_method("INVITE|SUBSCRIBE"))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>record_route();</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># account only
                  INVITEs</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (is_method("INVITE"))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>setflag(FLT_ACC); #
                  do accounting</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div>        #ggb: TCP connection reuse</div>
                <div>        if (proto != UDP) {</div>
                <div>                add_contact_alias();</div>
                <div>        }</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># dispatch requests
                  to foreign domains</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(SIPOUT);</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>### requests for my
                  local domains</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if ($rU==$null)</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># request with no
                  Username in RURI</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>sl_send_reply("484","Address
                  Incomplete");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>exit;</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(MCU);</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(RELAY);</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><br>
                </div>
                <div>}</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div>route[RELAY] {</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># enable additional
                  event routes for forwarded requests</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># - serial forking,
                  RTP relaying handling, a.s.o.</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (is_method("INVITE|SUBSCRIBE")) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_on_branch("MANAGE_BRANCH");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_on_reply("MANAGE_REPLY");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (is_method("INVITE")) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_on_failure("MANAGE_FAILURE");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (!t_relay()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>sl_reply_error();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>exit;</div>
                <div>}</div>
                <div><br>
                </div>
                <div># Caller NAT detection route</div>
                <div>route[NATDETECT] {</div>
                <div>#!ifdef WITH_NAT</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>force_rport();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (nat_uac_test("19")) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (is_method("REGISTER")) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("fix_nated_register");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>fix_nated_register();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>} else {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("fix_nated_contact");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>fix_nated_contact();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>setflag(FLT_NATS);</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div>#!endif</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>return;</div>
                <div>}</div>
                <div><br>
                </div>
                <div># RTPProxy control</div>
                <div>route[NATMANAGE] {</div>
                <div>#!ifdef WITH_NAT</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (is_request()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(has_totag()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(check_route_param("nat=yes"))
                  {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>setbflag(FLB_NATB);</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>return;</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span> rtpproxy_manage("",
                  "195.235.93.8");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (is_request()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (!has_totag()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>add_rr_param(";nat=yes");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (is_reply()) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(isbflagset(FLB_NATB))
                  {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>fix_nated_contact();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div>#!endif</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>return;</div>
                <div>}</div>
                <div><br>
                </div>
                <div># Routing to foreign domains</div>
                <div>route[SIPOUT] {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (!uri==myself)</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>append_hf("P-hint:
                  outbound\r\n");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(RELAY);</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div>}</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div># manage outgoing branches</div>
                <div>branch_route[MANAGE_BRANCH] {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xdbg("new branch
                  [$T_branch_idx] to $ru\n");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(NATMANAGE);</div>
                <div>}</div>
                <div><br>
                </div>
                <div># manage incoming replies</div>
                <div>onreply_route[MANAGE_REPLY] {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xdbg("incoming
                  reply\n");</div>
                <div><br>
                </div>
                <div>        #ggb: TCP connection reuse</div>
                <div>        add_contact_alias();</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(status=~"[12][0-9][0-9]")</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(NATMANAGE);</div>
                <div>}</div>
                <div><br>
                </div>
                <div>onreply_route[CHANGE_SDP] {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("CHANGE_SDP");</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(t_check_status("(200)|(183)"))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(has_body("application/sdp"))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if(search("IN IP4
                  10.95.94.142"))</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("search IN IP4
                  .142");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>fix_nated_sdp("2",
                  "195.235.93.8");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><br>
                </div>
                <div>}</div>
                <div><br>
                </div>
                <div># manage failure routing cases</div>
                <div>failure_route[MANAGE_FAILURE] {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>route(NATMANAGE);</div>
                <div><br>
                </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if (t_is_canceled())
                  {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>exit;</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div><br>
                </div>
                <div>#!ifdef WITH_BLOCK3XX</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span># block call redirect
                  based on 3xx replies.</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (t_check_status("3[0-9][0-9]")) {</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_reply("404","Not
                  found");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>exit;</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>}</div>
                <div>#!endif</div>
                <div><br>
                </div>
                <div>}</div>
                <div>route [MCU]{</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>if
                  (uri=~"^sip:[7,8][0-9]+@"){</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("Forward to
                  MCU");</div>
                <div>              <span class="Apple-tab-span"
                    style="white-space:pre"> </span>rewritehost("10.95.94.142"); </div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>rewriteport("5070");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>rtpproxy_manage();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>t_relay();</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span></div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span> t_on_reply("CHANGE_SDP");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>xlog("after forward
                  to MCU");</div>
                <div><span class="Apple-tab-span"
                    style="white-space:pre"></span>exit;</div>
                <div>        }</div>
                <div><br>
                </div>
                <div>}</div>
              </div>
              <div><b><br>
                </b></div>
            </span></font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif"><br>
          </font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">Br,</font></div>
        <div style="font-family:Calibri; font-size:medium"><font
            class="Apple-style-span" face="Calibri,sans-serif">Marina</font></div>
      </div>
      <div><br>
      </div>
      <span id="OLK_SRC_BODY_SECTION">
        <div style="font-family:Calibri; font-size:11pt;
          text-align:left; color:black; border-bottom:medium none;
          border-left:medium none; padding-bottom:0in; padding-left:0in;
          padding-right:0in; border-top:#b5c4df 1pt solid;
          border-right:medium none; padding-top:3pt">
          <span style="font-weight:bold">From: </span>Daniel-Constantin
          Mierla &lt;<a moz-do-not-send="true"
            href="mailto:miconda@gmail.com">miconda@gmail.com</a>&gt;<br>
          <span style="font-weight:bold">Reply-To: </span>"<a
            moz-do-not-send="true" href="mailto:miconda@gmail.com">miconda@gmail.com</a>"
          &lt;<a moz-do-not-send="true" href="mailto:miconda@gmail.com">miconda@gmail.com</a>&gt;<br>
          <span style="font-weight:bold">Date: </span>martes 9 de
          octubre de 2012 00:18<br>
          <span style="font-weight:bold">To: </span>Marina Serrano
          Montes &lt;<a moz-do-not-send="true"
            href="mailto:marinas@tid.es">marinas@tid.es</a>&gt;<br>
          <span style="font-weight:bold">Cc: </span>"SIP Router -
          Kamailio (OpenSER) and SIP Express Router (SER) - Users
          Mailing List" &lt;<a moz-do-not-send="true"
            href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a>&gt;,
          Vicente Hernando &lt;<a moz-do-not-send="true"
            href="mailto:vhernando@systemonenoc.com">vhernando@systemonenoc.com</a>&gt;<br>
          <span style="font-weight:bold">Subject: </span>Re: [SR-Users]
          how to use fix_nated_sdp("2") with multiple media types<br>
        </div>
        <div><br>
        </div>
        <div>
          <div bgcolor="#FFFFFF">Hello,<br>
            <br>
            you should not set the second parameter of
            rtpproxy_manage(...), let it be the one returned by
            rtpproxy.<br>
            <br>
            And yes, all the occurrences of IP addresses in c= lines
            will be replaced by the rtpproxy ip, but providing different
            ports for each media stream.<br>
            <br>
            Practically the rtp streams are going from end device to
            rtpproxy and then based on port will be delivered to
            different IPs of the MCU. Also, the MCU will send from
            different IPs to RTPProxy on different ports and from there
            to the end device.<br>
            <br>
            Cheers,<br>
            Daniel<br>
            <br>
            <div class="moz-cite-prefix">On 10/8/12 6:05 PM, MARINA
              SERRANO MONTES wrote:<br>
            </div>
            <blockquote type="cite">
              <div>Hi Daniel,</div>
              <div><br>
              </div>
              <div>I have tested using "rtpproxy_manage("", public IP),
                but in this case, it replaces all the c= lines with this
                public IP, included c=lines in media descriptions and
                then, the rtp traffic is not routing to the right IP in
                MCU. </div>
              <div><br>
              </div>
              <div>Have I to set up any value/param….to route rtp
                traffic through rtpproxy in sip server and then it will
                dispatch RTP packets to MCU?</div>
              <div><br>
              </div>
              <div>Thanks.</div>
              <div><br>
              </div>
              <div>Br,</div>
              <div>Marina</div>
              <div><br>
              </div>
              <span id="OLK_SRC_BODY_SECTION">
                <div style="font-family:Calibri; font-size:11pt;
                  text-align:left; color:black; border-bottom:medium
                  none; border-left:medium none; padding-bottom:0in;
                  padding-left:0in; padding-right:0in;
                  border-top:#b5c4df 1pt solid; border-right:medium
                  none; padding-top:3pt">
                  <span style="font-weight:bold">From: </span>Daniel-Constantin
                  Mierla &lt;<a moz-do-not-send="true"
                    href="mailto:miconda@gmail.com">miconda@gmail.com</a>&gt;<br>
                  <span style="font-weight:bold">Reply-To: </span>"<a
                    moz-do-not-send="true"
                    href="mailto:miconda@gmail.com">miconda@gmail.com</a>"
                  &lt;<a moz-do-not-send="true"
                    href="mailto:miconda@gmail.com">miconda@gmail.com</a>&gt;<br>
                  <span style="font-weight:bold">Date: </span>lunes 8
                  de octubre de 2012 16:04<br>
                  <span style="font-weight:bold">To: </span>"SIP Router
                  - Kamailio (OpenSER) and SIP Express Router (SER) -
                  Users Mailing List" &lt;<a moz-do-not-send="true"
                    href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a>&gt;<br>
                  <span style="font-weight:bold">Cc: </span>Vicente
                  Hernando &lt;<a moz-do-not-send="true"
                    href="mailto:vhernando@systemonenoc.com">vhernando@systemonenoc.com</a>&gt;,
                  Marina Serrano Montes &lt;<a moz-do-not-send="true"
                    href="mailto:marinas@tid.es">marinas@tid.es</a>&gt;<br>
                  <span style="font-weight:bold">Subject: </span>Re:
                  [SR-Users] how to use fix_nated_sdp("2") with multiple
                  media types<br>
                </div>
                <div><br>
                </div>
                <div>
                  <div bgcolor="#FFFFFF">Hello,<br>
                    <br>
                    I understood that Marina is looking for the option
                    of being able to use different IP addresses for
                    updating various c= lines in SDP.
                    <br>
                    <br>
                    fix_nated_sdp(...) can work only with one IP address
                    given as second parameter (or taken for source
                    address of the packet).<br>
                    <br>
                    Perhaps fix_nated_sdp(...) can be easily extended to
                    support a list of ip addresses in the second
                    parameter. For now the solution is to use rtpproxy
                    to rewrite all the IP addresses in c= lines with the
                    IP address of the rtpproxy. RTPProxy will then
                    dispatch RTP to the right IP address assigned for
                    each media stream.<br>
                    <br>
                    Regarding the patch sent by Vicente, I just replied
                    on sr-dev mailing list.<br>
                    <br>
                    Cheers,<br>
                    Daniel<br>
                    <br>
                    <div class="moz-cite-prefix">On 10/8/12 3:25 PM,
                      Vicente Hernando wrote:<br>
                    </div>
                    <blockquote type="cite">
                      <div class="moz-cite-prefix">Hello Marina,<br>
                        <br>
                        there is a bug in sdp parser about c IPs which
                        are not correctly reset for non existent c
                        values in streams.<br>
                        <br>
                        I have still not uploaded it to master branch,
                        sorry.<br>
                        <br>
                        May be it is related to your issue, in this link
                        you have the attached patch.<br>
                        <br>
                        <a moz-do-not-send="true"
                          class="moz-txt-link-freetext"
href="http://lists.sip-router.org/pipermail/sr-dev/2012-September/016440.html">http://lists.sip-router.org/pipermail/sr-dev/2012-September/016440.html</a><br>
                        <br>
                        <br>
                        Kind regards,<br>
                        Vicente.<br>
                        <br>
                        On 10/08/2012 01:18 PM, MARINA SERRANO MONTES
                        wrote:<br>
                      </div>
                      <blockquote type="cite">
                        <div><span class="Apple-style-span"
                            style="font-family:Consolas; font-size:14px">Hi,</span></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas"><br>
                          </font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">I
                            have a doubt about how to use "fix_<span
                              style="font-style:italic">nated_</span>sdp("2")"
                            function when we have an scenario with
                            multiple media types (audio and video) and
                            the param "c" in sdp for each media type has
                            a different IP.</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">We
                            are using a SCOPIA 400 MCU to multi-party in
                            a call, and it will set up different IP to
                            send RTP depend on media type.</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas"><br>
                          </font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">I
                            have tested this function, but it rewrites
                            always all the "c" parameter with the same
                            value.</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas"><br>
                          </font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">Is
                            there any option to use the function or to
                            rewrite "c" value for each media type
                            independently?</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas"><br>
                          </font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">Many
                            thanks.</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas"><br>
                          </font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">Br,</font></div>
                        <div style="font-size:14px"><font
                            class="Apple-style-span" face="Consolas">Marina</font></div>
                        <br>
                        <hr>
                        <font size="1" color="Gray" face="Arial"><br>
                          Este mensaje se dirige exclusivamente a su
                          destinatario. Puede consultar nuestra política
                          de envío y recepción de correo electrónico en
                          el enlace situado más abajo.<br>
                          This message is intended exclusively for its
                          addressee. We only send and receive email on
                          the basis of the terms set out at:<br>
                          <a moz-do-not-send="true"
                            class="moz-txt-link-freetext"
                            href="http://www.tid.es/ES/PAGINAS/disclaimer.aspx">http://www.tid.es/ES/PAGINAS/disclaimer.aspx</a><br>
                        </font><br>
                        <fieldset class="mimeAttachmentHeader"></fieldset>
                        <br>
                        <pre>_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a><a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a></pre>
                      </blockquote>
                      <br>
                      <br>
                      <fieldset class="mimeAttachmentHeader"></fieldset>
                      <br>
                      <pre>_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a><a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a></pre>
                    </blockquote>
                    <br>
                    <pre class="moz-signature" cols="72">-- 
Daniel-Constantin Mierla - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a><a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://twitter.com/#%21/miconda">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Berlin, Nov 5-8, 2012 - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://asipto.com/u/kat">http://asipto.com/u/kat</a>
Kamailio Advanced Training, Miami, USA, Nov 12-14, 2012 - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://asipto.com/u/katu">http://asipto.com/u/katu</a></pre>
                  </div>
                </div>
              </span><br>
              <hr>
              <font size="1" color="Gray" face="Arial"><br>
                Este mensaje se dirige exclusivamente a su destinatario.
                Puede consultar nuestra política de envío y recepción de
                correo electrónico en el enlace situado más abajo.<br>
                This message is intended exclusively for its addressee.
                We only send and receive email on the basis of the terms
                set out at:<br>
                <a moz-do-not-send="true" class="moz-txt-link-freetext"
                  href="http://www.tid.es/ES/PAGINAS/disclaimer.aspx">http://www.tid.es/ES/PAGINAS/disclaimer.aspx</a><br>
              </font></blockquote>
            <br>
            <pre class="moz-signature" cols="72">-- 
Daniel-Constantin Mierla - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a><a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://twitter.com/#%21/miconda">http://twitter.com/#!/miconda</a> - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Berlin, Nov 5-8, 2012 - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://asipto.com/u/kat">http://asipto.com/u/kat</a>
Kamailio Advanced Training, Miami, USA, Nov 12-14, 2012 - <a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://asipto.com/u/katu">http://asipto.com/u/katu</a></pre>
          </div>
        </div>
      </span><br>
      <hr>
      <font size="1" color="Gray" face="Arial"><br>
        Este mensaje se dirige exclusivamente a su destinatario. Puede
        consultar nuestra política de envío y recepción de correo
        electrónico en el enlace situado más abajo.<br>
        This message is intended exclusively for its addressee. We only
        send and receive email on the basis of the terms set out at:<br>
        <a class="moz-txt-link-freetext" href="http://www.tid.es/ES/PAGINAS/disclaimer.aspx">http://www.tid.es/ES/PAGINAS/disclaimer.aspx</a><br>
      </font>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Daniel-Constantin Mierla - <a class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a>
Kamailio Advanced Training, Berlin, Nov 5-8, 2012 - <a class="moz-txt-link-freetext" href="http://asipto.com/u/kat">http://asipto.com/u/kat</a>
Kamailio Advanced Training, Miami, USA, Nov 12-14, 2012 - <a class="moz-txt-link-freetext" href="http://asipto.com/u/katu">http://asipto.com/u/katu</a></pre>
  </body>
</html>