<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE scenario SYSTEM "sipp.dtd">

<!-- This program is free software; you can redistribute it and/or      -->
<!-- modify it under the terms of the GNU General Public License as     -->
<!-- published by the Free Software Foundation; either version 2 of the -->
<!-- License, or (at your option) any later version.                    -->
<!--                                                                    -->
<!-- This program is distributed in the hope that it will be useful,    -->
<!-- but WITHOUT ANY WARRANTY; without even the implied warranty of     -->
<!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the      -->
<!-- GNU General Public License for more details.                       -->
<!--                                                                    -->
<!-- You should have received a copy of the GNU General Public License  -->
<!-- along with this program; if not, write to the                      -->
<!-- Free Software Foundation, Inc.,                                    -->
<!-- 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA             -->
<!--                                                                    -->
<!--                 Sipp default 'uas' scenario.                       -->
<!--                                                                    -->

<scenario name="Forked INVITE, one of them require PRACK">
  <recv request="INVITE" crlf="true">
   <action>
    <ereg regexp="branch=([^;]*)"
          search_in="hdr"
          header="Via"
          assign_to="1,2"/>
    <assign assign_to="1" variable="2"/>
    <ereg regexp="CSeq: [ 0-9A-Z]+"
          search_in="msg"
          assign_to="4"/>
    </action>
  </recv>

  <send>
    <![CDATA[
      SIP/2.0 100 Trying
      [last_Via:]
      [last_From:]
      [last_To:]
      [last_Call-ID:]
      [$4]
    ]]>
  </send>

  <!-- Call leg 1 sends 180/Ringing -->
  <send retrans="500">
    <![CDATA[
      SIP/2.0 180 Ringing1
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_1
      [last_Call-ID:]
      [$4]
      Contact: <sip:UA_1@[local_ip]:[local_port]>
      Require: 100rel
      RSeq: 1000
      Content-Length: 0
    ]]>
  </send>

  <recv request="PRACK" crlf="true">
  </recv>

  <send>
    <![CDATA[
      SIP/2.0 200 OK
      [last_Via:]
      [last_From:]
      [last_To:]
      [last_Call-ID:]
      [last_CSeq:]
    ]]>
  </send>


  <pause milliseconds="2000" />

  <!-- Call leg 2: 180/Ringing -->
  <send retrans="500">
    <![CDATA[
      SIP/2.0 180 Ringing2
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_2
      [last_Call-ID:]
      [$4]
      Contact: <sip:UA_2@[local_ip]:[local_port]>
      Require: 100rel
      RSeq: 2000
      Content-Length: 0
    ]]>
  </send>

  <recv request="PRACK" crlf="true">
  </recv>

  <send>
    <![CDATA[
      SIP/2.0 200 OK
      [last_Via:]
      [last_From:]
      [last_To:]
      [last_Call-ID:]
      [last_CSeq:]
    ]]>
  </send>


  <pause milliseconds="2000" />

  <!-- Call leg 2: sends Ringing again with correct RSeq -->
  <send retrans="500">
    <![CDATA[
      SIP/2.0 180 Ringing2b
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_2
      [last_Call-ID:]
      [$4]
      Contact: <sip:UA_2@[local_ip]:[local_port]>
      Require: 100rel
      RSeq: 2001
      Content-Length: 0
    ]]>
  </send>

  <recv request="PRACK" crlf="true">
  </recv>

  <send>
    <![CDATA[
      SIP/2.0 200 OK
      [last_Via:]
      [last_From:]
      [last_To:]
      [last_Call-ID:]
      [last_CSeq:]
    ]]>
  </send>


  <pause milliseconds="2000" />

  <!-- Call leg 2: sends Ringing again with WRONG RSeq. There should be no PRACK -->
  <send>
    <![CDATA[
      SIP/2.0 180 Ringing2c
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_2
      [last_Call-ID:]
      [$4]
      Contact: <sip:UA_2@[local_ip]:[local_port]>
      Require: 100rel
      RSeq: 2004
      Content-Length: 0
    ]]>
  </send>

  <pause milliseconds="2000" />

  <!-- Then Call leg 1 sends 180/Ringing again -->
  <send retrans="500">
    <![CDATA[
      SIP/2.0 180 Ringing1b
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_1
      [last_Call-ID:]
      [$4]
      Contact: <sip:UA_1@[local_ip]:[local_port]>
      Require: 100rel
      RSeq: 1001
      Content-Length: 0
    ]]>
  </send>

  <recv request="PRACK" crlf="true">
  </recv>

  <send>
    <![CDATA[
      SIP/2.0 200 OK
      [last_Via:]
      [last_From:]
      [last_To:]
      [last_Call-ID:]
      [last_CSeq:]
    ]]>
  </send>


  <pause milliseconds="2000" />

  <!-- 603/Decline -->
  <send>
    <![CDATA[
      SIP/2.0 603 Decline
      Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;rport=5080;branch=[$2]
      [last_From:]
      [last_To:];tag=UA_1
      [last_Call-ID:]
      [$4]
      Content-Length: 0
    ]]>
  </send>


  <!-- Receive ACK -->
  <recv request="ACK"
        optional="false"
        rtd="true"
        crlf="true">
  </recv>

  <!-- definition of the response time repartition table (unit is ms)   -->
  <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>

  <!-- definition of the call length repartition table (unit is ms)     -->
  <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>

</scenario>

