Hi,

I am currently testing a SIPp scenario and I am experiencing problems
with rrs=true and next=... when receiving optional responses. You can
find the relevant parts of the scenario below.

In my scenario I want to consider some "exceptional" cases, for example
a 480 response to an INVITE request. After receiving such a response I
want to end the SIP dialog in a proper way, in this case by sending an
ACK message.

Now the problem is that this ACK message (at label #12) is never sent
(it is skipped without any error message!) as soon as I use either
[next_url] or [routes]. Unfortunately I have to use both keywords, since
all SIP messages have to be routed via a proxy.

The other ACK message in the scenario (at label #9) also uses the
keywords [next_url] and [routes], but it is processed and sent flawlessly.

Could somebody tell me why the ACK message at label #12 is not sent at
all and there is no error message? (Yes, the message is not sent for
sure, I traced the SIP messages using Wireshark.)

It seems to me as if SIPp is unable to process [next_url] and [routes]
if rrs=true is used in conjunction with next=... when receiving an
optional response. Is this behavior by design or is it a bug?

Any suggestions how I could properly end the SIP dialog in this case?

Bye,
Andreas Winkelbauer



<?xml version="1.0" encoding="ISO-8859-1" ?>
<scenario name="swkn sipp scenario">
  <label id="5" />
  <send retrans="500">
    <![CDATA[
      INVITE sip:[field5] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: "[field3]" <sip:[fiel...@[field0]>;tag=[call_number]
      To: "[field4]" <sip:[field5]>
      Contact: <sip:[fiel...@[local_ip]:[local_port]>
      Call-ID: [call_id]
      CSeq: [cseq] INVITE
      Max-Forwards: 70
      User-Agent: [field6]
      Content-Type: application/sdp
      Content-Length: [len]

      ... SDP ...
    ]]>
  </send>

  <!-- consider exceptional cases -->
  ...
  <recv response="480" optional="true" next="12" rrs="true">
    <action>
      <exec command="echo Error: ...>> sipp.log" />
    </action>
  </recv>
  ...

  <!-- receive 100 trying (optional) -->
  <label id="6" />
  <recv response="100" optional="true" rrs="true">
  </recv>

  <!-- receive 180 ringing (optional) -->
  <label id="7" />
  <recv response="180" optional="true" rrs="true">
  </recv>

  <!-- receive 200 OK -->
  <label id="8" />
  <recv response="200" rrs="true">
  </recv>

  <!-- send ACK -->
  <label id="9" />
  <send>
    <![CDATA[
      ACK [next_url] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: "[field3]" <sip:[fiel...@[field0]>;tag=[call_number]
      To: "[field4]" <sip:[field5]>[peer_tag_param]
      Contact: <sip:[fiel...@[local_ip]:[local_port]>
      [routes]
      Call-ID: [call_id]
      CSeq: [cseq] ACK
      Max-Forwards: 70
      User-Agent: [field6]
      Content-Length: 0
    ]]>
  </send>

  ... play pcap files ...

  <!-- send BYE -->
  <label id="10" />
  <send retrans="500">
    <![CDATA[
      BYE [next_url] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: "[field3]" <sip:[fiel...@[field0]>;tag=[call_number]
      To: "[field4]" <sip:[field5]>[peer_tag_param]
      Contact: <sip:[fiel...@[local_ip]:[local_port]>
      [routes]
      Call-ID: [call_id]
      CSeq: [cseq] BYE
      Max-Forwards: 70
      User-Agent: [field6]
      Content-Length: 0
    ]]>
  </send>

  <!-- receive 200 OK -->
  <label id="11" />
  <recv response="200" next="13">
  </recv>

  <!-- send ACK -->
  <!-- ERROR: this message is never sent! -->
  <label id="12" />
  <send>
    <![CDATA[
      ACK [next_url] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: "[field3]" <sip:[fiel...@[field0]>;tag=[call_number]
      To: "[field4]" <sip:[field5]>[peer_tag_param]
      Contact: <sip:[fiel...@[local_ip]:[local_port]>
      [routes]
      Call-ID: [call_id]
      CSeq: [cseq] ACK
      Max-Forwards: 70
      User-Agent: [field6]
      Content-Length: 0
    ]]>
  </send>

  <label id="13" />
</scenario>

------------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It is the best place to buy or sell services for
just about anything Open Source.
http://p.sf.net/sfu/Xq1LFB
_______________________________________________
Sipp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sipp-users

Reply via email to