[OpenSIPS-Users] B2BUA and BYE message generated from sipp

Ben Newlin Ben.Newlin at genesys.com
Mon Mar 4 14:20:50 EST 2019

I think what you are looking for in SIPp is:

* the rrs (Record Route Set) parameter on the 200 OK
* the [next_url] and [routes] parameters for sequential requests (like the BYE)

<recv response="200" response_txn="INVITE" rrs="true">
<send retrans="500" start_txn="bye">

      BYE [next_url] SIP/2.0


Ben Newlin

From: Users <users-bounces at lists.opensips.org> on behalf of Konrad Malewski <konrad.malewski at motorolasolutions.com>
Reply-To: OpenSIPS users mailling list <users at lists.opensips.org>
Date: Monday, March 4, 2019 at 1:04 PM
To: "users at lists.opensips.org" <users at lists.opensips.org>
Subject: Re: [OpenSIPS-Users] B2BUA and BYE message generated from sipp

I think I found a solution so posting it here.
SIPP sent BYE to wrong address. I had to change uac.xml.

capture contact field field from 200Ok:
  <recv response="200" rtd="true">
               <ereg regexp="<sip:([[:digit:].:]*)" search_in="hdr" header="Contact:" check_it="true" assign_to="1,2" />
               <ereg regexp="(;did=.*)>" search_in="hdr" header="Contact:" check_it="false" assign_to="5,6" />
And use it in BYE:
<!-- The 'crlf' option inserts a blank line in the statistics report. -->
  <!-- BYE sip:[service]@[remote_ip]:[remote_port] SIP/2.0 -->
  <send retrans="500">

      BYE sip:[service]@[$2][$6] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:sipp@[local_ip]:[local_port]>;tag=[call_number]
      To: sut <sip:[service]@[remote_ip]:[remote_port]>[peer_tag_param]
      Call-ID: [call_id]
      CSeq: 2 BYE
      Contact: sip:sipp@[local_ip]:[local_port]
      Max-Forwards: 70
      Subject: Performance Test
      Content-Length: 0

sipp -t tn -rsa opensips -trace_logs -sf uac.xml -r 1 sipp-uas
works every time

Also when I modified modules/b2b_entities/dlg.c

- method_value = msg->first_line.u.request.method_value;
- if(method_value == METHOD_ACK)
- {
- goto search_dialog;
- }
+ method_value = msg->first_line.u.request.method_value;
+ if((method_value == METHOD_ACK) || (method_value == METHOD_BYE))
+ {
+ goto search_dialog;
+ }
it started working as well, but I dont think this is the right fix.

On Thu, Feb 7, 2019 at 4:17 PM Konrad Malewski <konrad.malewski at motorolasolutions.com<mailto:konrad.malewski at motorolasolutions.com>> wrote:

I am new to opensips. I went through proxy tutorials and now I am trying to configure opensips in b2bua mode. I am using 3 dockers (UAS, UAC and opensips).

I have problems with BYE message sent by UAC. Opensips is not able to match it to whole dialog (this is my interpretation) and returns 500 internal error (due to t_relay call, but without it there is no response at all).

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20190304/12fc5166/attachment-0001.html>

More information about the Users mailing list