<div dir="ltr"><img width="0" height="0" class="mailtrack-img" style="float:right;" alt="" src="https://mailtrack.io/trace/mail/732dab1109121e4aa1349cae38e121551e9b7107.png?u=1422671"><br style="font-size:12.8px"><span style="font-size:12.8px">"You have to change a bit the OpenSIPS script to move the offer and answer on 200 OK and ACK if the INVITE has no SDP attached."</span><br><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">If you could provide some pointers on this that would be great.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">I'm guessing the t_on_reply ("handle_nat") stays as is</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">While the branch_route[handle_nat] logic needs to be moved to ACK. But how do I differentiate this ACK which is in response to the 200 ok to the invite compared to a different one?</span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jul 4, 2017 at 6:57 PM, Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    Yeah, sorry, missed that one .<br>
    <br>
    Well, it seems that OmniPCX is doing late SDP negotiation (via 200OK
    + ACK, instead of INVITE+200OK) and the tutorial script does not
    handle this case (for simplicity and clarity reasons).<br>
    <br>
    So, right now the RTPengine interaction (the offer and answer) are
    done at INVITE and 200 OK time.<br>
    <br>
    You have to change a bit the OpenSIPS script to move the offer and
    answer on 200 OK and ACK if the INVITE has no SDP attached.<br>
    <br>
    Let me know if you need any assistance.<span class=""><br>
    <br>
    Regards,<br>
    <pre class="m_-9132953963520424633moz-signature" cols="72">Bogdan-Andrei Iancu
  OpenSIPS Founder and Developer
  <a class="m_-9132953963520424633moz-txt-link-freetext" href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<wbr>com</a>

OpenSIPS Bootcamp 2017, Houston, US
  <a class="m_-9132953963520424633moz-txt-link-freetext" href="http://opensips.org/training/OpenSIPS_Bootcamp_2017.html" target="_blank">http://opensips.org/training/<wbr>OpenSIPS_Bootcamp_2017.html</a>
</pre>
    </span><div><div class="h5"><div class="m_-9132953963520424633moz-cite-prefix">On 07/04/2017 06:22 PM, Alex
      Megalokonomos wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr"><img class="m_-9132953963520424633mailtrack-img" style="float:right" alt="" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" height="0" width="0">As you may have noticed in my last reply,
        I reached that far as well but got stuck later on on what
        appears to be the rtp engine configuration.
        <div><br>
        </div>
        <div>Not strictly an Opensips issue but you might be able to
          help me.<br>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Tue, Jul 4, 2017 at 6:07 PM,
          Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org" target="_blank"></a><a class="m_-9132953963520424633moz-txt-link-abbreviated" href="mailto:bogdan@opensips.org" target="_blank">bogdan@opensips.org</a>></span> wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000"> <tt>Hi Alex,<br>
                <br>
                Thank you for the offlist provided data. Shortly, the
                ACK received by OpenSIPS from OmniPCX is broken as it is
                missing all the Route headers. According to the pcap, it
                looks like:<span><br>
                  <br>
                  ACK <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext">sip:udoioiia@10.0.1.106:49246;<wbr>transport=ws</a>
                  SIP/2.0<br>
                  Record-Route: <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-rfc2396E"><sip:10.0.1.200:5059;ftag=d5de<wbr>999de446df5165d773dac1f369ec;<wbr>lr=on></a><br>
                  Contact: "Megalokonomos A." <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-rfc2396E"><sip:694@10.0.1.200:45698></a><br>
                  User-Agent: OxO_SPG_103/012.001<br>
                  Content-Type: application/sdp<br>
                  To: <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext">sip:694@10.0.1.200;tag=4em4m1a<wbr>h9r</a><br>
                  From: "Megalokonomos A." <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-rfc2396E"><sip:610@10.0.1.200></a>;tag=d5de9<wbr>99de446df5165d773dac1f369ec<br>
                  Call-ID: <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-abbreviated" href="mailto:af3cc9085db1c8dd86050eb91d747249@10.0.1.200" target="_blank">af3cc9085db1c8dd86050eb91d7472<wbr>49@10.0.1.200</a><br>
                  CSeq: 659214613 ACK<br>
                  Via: SIP/2.0/UDP
                  10.0.1.200:5059;branch=z9hG4bK<wbr>f3de.2fc1fc65cece765af47f9baf8<wbr>bf0906e.0;i=c<br>
                  Via: SIP/2.0/TCP
                  10.0.1.200:5080;rport=45698;br<wbr>anch=z9hG4bK89fca3417cd4e227b4<wbr>315145d96657c7<br>
                  Max-Forwards: 69<br>
                  Content-Length: 2960<br>
                  <br>
                </span> v=0<br>
                o=default 14<br>
                .....<br>
                <br>
                <br>
                As OpenSIPS does not find the Route (former
                Record-Route) it inserted into the dialog, the routing
                logic in the script does not work as expected. According
                to RFC3261, the RR headers MUST be mirrored back in 2xx
                replies.<br>
                <br>
                Let's try to hack to cope with the broken SIP stack on</tt><tt><tt>
                  OmniPCX. In script you have something like:<br>
                  <br>
                </tt></tt>
              <pre class="m_-9132953963520424633m_-865090424726876519escaped">                          } else {
                                        # ACK without matching transaction ->
                                        # ignore and discard
                                        exit;
                                }

Try replacing it with

                                } else {
                                        # ACK without matching transaction ->
                                        # ignore and discard
                                        t_relay();
                                        exit;
                                }

Let's see if this does the trick. If yes, I can suggest a even better way to fix the broken signaling, using the dialog support in OpenSIPS.

Best regards,
</pre>
              <span>
                <pre class="m_-9132953963520424633m_-865090424726876519moz-signature" cols="72">Bogdan-Andrei Iancu
  OpenSIPS Founder and Developer
  <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext" href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<wbr>com</a>

OpenSIPS Bootcamp 2017, Houston, US
  <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext" href="http://opensips.org/training/OpenSIPS_Bootcamp_2017.html" target="_blank">http://opensips.org/training/O<wbr>penSIPS_Bootcamp_2017.html</a>
</pre>
    </span><div><div class="m_-9132953963520424633h5"><div class="m_-9132953963520424633m_-865090424726876519moz-cite-prefix">On 07/03/2017 01:08 PM, Bogdan-Andrei
      Iancu wrote:

    </div>
    <blockquote type="cite">
      
      <tt>Hi Alex,

        

        As suspected, the ACK is not properly routed  - see the
        retransmissions of the 200OK + ACK. SImply based on the logs I
        cannot see what the problem is - probably some missing
        fix_nated_contact() for the replies coming from the WS party.

        

        Please make a pcap capture + opensips log (level 4) and send
        them to me *offlist* !

        

        Best regards,

      </tt>
      <pre class="m_-9132953963520424633m_-865090424726876519moz-signature" cols="72">Bogdan-Andrei Iancu
  OpenSIPS Founder and Developer
  <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext" href="http://www.opensips-solutions.com" target="_blank">http://www.opensips-solutions.<wbr>com</a>

OpenSIPS Bootcamp 2017, Houston, US
  <a class="m_-9132953963520424633m_-865090424726876519moz-txt-link-freetext" href="http://opensips.org/training/OpenSIPS_Bootcamp_2017.html" target="_blank">http://opensips.org/training/O<wbr>penSIPS_Bootcamp_2017.html</a>
</pre>
      <div class="m_-9132953963520424633m_-865090424726876519moz-cite-prefix">On 06/30/2017 05:37 PM, Alex
        Megalokonomos wrote:

      </div>
      <blockquote type="cite">
        <div dir="ltr"><img class="m_-9132953963520424633m_-865090424726876519mailtrack-img" style="float:right" alt="" height="0" width="0">I have attached the debug log so you
          get a fuller picture. I hope that's ok
          <div>

          </div>
          <div>(Incoming call to WS client 694 is the WS extension...610
            is my normal desk phone which is connected to OmniPCX)
            (10.0.1.63-> OpenSIPS ,10.0.1.200-> OmniPCX)
            <div>

            </div>
            <div>

            </div>
          </div>
        </div>
        <div class="gmail_extra">
</div></blockquote></blockquote></div></div></div></blockquote></div></div></blockquote>
</div></div></div></blockquote></div><br></div>