<?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 'uac' scenario.                       -->
<!--                                                                    -->

<scenario name="Basic Sipstone publish">
  <!-- In client mode (sipp placing calls), the Call-ID MUST be         -->
  <!-- generated by sipp. To do so, use [call_id] keyword.                -->
  <send retrans="500">
    <![CDATA[

      PUBLISH sip:[service]@[remote_ip]:[remote_port] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:[service]@sip.example.org>;tag=[pid]SIPpTag00[call_number]
      To: sipp <sip:[service]@sip.example.org>
      Call-ID: [call_id]
      CSeq: 1 PUBLISH
      Max-Forwards: 70
      Expire: 60
      Event: presence
      Content-Type: application/pidf+xml
      Content-Length: [len]

      <?xml version="1.0" encoding="UTF-8"?>
      <presence xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="sip:[service]@sip.example.org" xmlns="urn:ietf:params:xml:ns:pidf">
            <tuple id="jjlson">
                  <status>
                        <basic>open</basic>
                  </status>
                  <contact priority="0.8">sip:[service]@[local_ip]:[local_port]</contact>
                  <timestamp>2015-09-28T15:49:00Z</timestamp>
            </tuple>
      </presence>
    ]]>
  </send>

  <recv response="100"
        optional="true">
  </recv>
 
  <recv response="407" auth="true">
  </recv>

 <send retrans="500">
    <![CDATA[

      PUBLISH sip:[service]@[remote_ip]:[remote_port] SIP/2.0
      Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
      From: sipp <sip:[service]@sip.example.org>;tag=[pid]SIPpTag00[call_number]
      To: sipp <sip:[service]@sip.example.org>
      Call-ID: [call_id]
      CSeq: 2 PUBLISH
      Max-Forwards: 70
      [authentication]
      Expire: 60
      Event: presence
      Content-Type: application/pidf+xml
      Content-Length: [len]

      <?xml version="1.0" encoding="UTF-8"?>
      <presence xmlns:dm="urn:ietf:params:xml:ns:pidf:data-model" xmlns:rpid="urn:ietf:params:xml:ns:pidf:rpid" entity="sip:[service]@sip.example.org" xmlns="urn:ietf:params:xml:ns:pidf">
            <tuple id="jjlson">
                  <status>
                        <basic>open</basic>
                  </status>
                  <contact priority="0.8">sip:[service]@[local_ip]:[local_port]</contact>
                  <timestamp>2015-09-28T15:49:00Z</timestamp>
            </tuple>
      </presence>
    ]]>
  </send>


  <!-- By adding rrs="true" (Record Route Sets), the route sets         -->
  <!-- are saved and used for following messages sent. Useful to test   -->
  <!-- against stateful SIP proxies/B2BUAs.                             -->
  <recv response="200" rrs="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>

