uas-forked-100rel.xml 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. <?xml version="1.0" encoding="ISO-8859-1" ?>
  2. <!DOCTYPE scenario SYSTEM "sipp.dtd">
  3. <!-- This program is free software; you can redistribute it and/or -->
  4. <!-- modify it under the terms of the GNU General Public License as -->
  5. <!-- published by the Free Software Foundation; either version 2 of the -->
  6. <!-- License, or (at your option) any later version. -->
  7. <!-- -->
  8. <!-- This program is distributed in the hope that it will be useful, -->
  9. <!-- but WITHOUT ANY WARRANTY; without even the implied warranty of -->
  10. <!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -->
  11. <!-- GNU General Public License for more details. -->
  12. <!-- -->
  13. <!-- You should have received a copy of the GNU General Public License -->
  14. <!-- along with this program; if not, write to the -->
  15. <!-- Free Software Foundation, Inc., -->
  16. <!-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -->
  17. <!-- -->
  18. <!-- Sipp default 'uas' scenario. -->
  19. <!-- -->
  20. <scenario name="Forked INVITE, one of them require PRACK">
  21. <recv request="INVITE" crlf="true">
  22. <action>
  23. <ereg regexp="branch=([^;]*)"
  24. search_in="hdr"
  25. header="Via"
  26. assign_to="1,2"/>
  27. <assign assign_to="1" variable="2"/>
  28. <ereg regexp="CSeq: [ 0-9A-Z]+"
  29. search_in="msg"
  30. assign_to="4"/>
  31. </action>
  32. </recv>
  33. <send>
  34. <![CDATA[
  35. SIP/2.0 100 Trying
  36. [last_Via:]
  37. [last_From:]
  38. [last_To:]
  39. [last_Call-ID:]
  40. [$4]
  41. ]]>
  42. </send>
  43. <!-- Call leg 1 sends 180/Ringing -->
  44. <send retrans="500">
  45. <![CDATA[
  46. SIP/2.0 180 Ringing1
  47. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
  48. [last_From:]
  49. [last_To:];tag=UA_1
  50. [last_Call-ID:]
  51. [$4]
  52. Contact: <sip:UA_1@[local_ip]:[local_port]>
  53. Require: 100rel
  54. RSeq: 1000
  55. Content-Length: 0
  56. ]]>
  57. </send>
  58. <recv request="PRACK" crlf="true">
  59. </recv>
  60. <send>
  61. <![CDATA[
  62. SIP/2.0 200 OK
  63. [last_Via:]
  64. [last_From:]
  65. [last_To:]
  66. [last_Call-ID:]
  67. [last_CSeq:]
  68. ]]>
  69. </send>
  70. <pause milliseconds="2000" />
  71. <!-- Call leg 2: 180/Ringing -->
  72. <send retrans="500">
  73. <![CDATA[
  74. SIP/2.0 180 Ringing2
  75. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
  76. [last_From:]
  77. [last_To:];tag=UA_2
  78. [last_Call-ID:]
  79. [$4]
  80. Contact: <sip:UA_2@[local_ip]:[local_port]>
  81. Require: 100rel
  82. RSeq: 2000
  83. Content-Length: 0
  84. ]]>
  85. </send>
  86. <recv request="PRACK" crlf="true">
  87. </recv>
  88. <send>
  89. <![CDATA[
  90. SIP/2.0 200 OK
  91. [last_Via:]
  92. [last_From:]
  93. [last_To:]
  94. [last_Call-ID:]
  95. [last_CSeq:]
  96. ]]>
  97. </send>
  98. <pause milliseconds="2000" />
  99. <!-- Call leg 2: sends Ringing again with correct RSeq -->
  100. <send retrans="500">
  101. <![CDATA[
  102. SIP/2.0 180 Ringing2b
  103. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
  104. [last_From:]
  105. [last_To:];tag=UA_2
  106. [last_Call-ID:]
  107. [$4]
  108. Contact: <sip:UA_2@[local_ip]:[local_port]>
  109. Require: 100rel
  110. RSeq: 2001
  111. Content-Length: 0
  112. ]]>
  113. </send>
  114. <recv request="PRACK" crlf="true">
  115. </recv>
  116. <send>
  117. <![CDATA[
  118. SIP/2.0 200 OK
  119. [last_Via:]
  120. [last_From:]
  121. [last_To:]
  122. [last_Call-ID:]
  123. [last_CSeq:]
  124. ]]>
  125. </send>
  126. <pause milliseconds="2000" />
  127. <!-- Call leg 2: sends Ringing again with WRONG RSeq. There should be no PRACK -->
  128. <send>
  129. <![CDATA[
  130. SIP/2.0 180 Ringing2c
  131. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
  132. [last_From:]
  133. [last_To:];tag=UA_2
  134. [last_Call-ID:]
  135. [$4]
  136. Contact: <sip:UA_2@[local_ip]:[local_port]>
  137. Require: 100rel
  138. RSeq: 2004
  139. Content-Length: 0
  140. ]]>
  141. </send>
  142. <pause milliseconds="2000" />
  143. <!-- Then Call leg 1 sends 180/Ringing again -->
  144. <send retrans="500">
  145. <![CDATA[
  146. SIP/2.0 180 Ringing1b
  147. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;branch=[$2]
  148. [last_From:]
  149. [last_To:];tag=UA_1
  150. [last_Call-ID:]
  151. [$4]
  152. Contact: <sip:UA_1@[local_ip]:[local_port]>
  153. Require: 100rel
  154. RSeq: 1001
  155. Content-Length: 0
  156. ]]>
  157. </send>
  158. <recv request="PRACK" crlf="true">
  159. </recv>
  160. <send>
  161. <![CDATA[
  162. SIP/2.0 200 OK
  163. [last_Via:]
  164. [last_From:]
  165. [last_To:]
  166. [last_Call-ID:]
  167. [last_CSeq:]
  168. ]]>
  169. </send>
  170. <pause milliseconds="2000" />
  171. <!-- 603/Decline -->
  172. <send>
  173. <![CDATA[
  174. SIP/2.0 603 Decline
  175. Via: SIP/2.0/UDP 127.0.0.1;received=127.0.0.1;rport=5080;branch=[$2]
  176. [last_From:]
  177. [last_To:];tag=UA_1
  178. [last_Call-ID:]
  179. [$4]
  180. Content-Length: 0
  181. ]]>
  182. </send>
  183. <!-- Receive ACK -->
  184. <recv request="ACK"
  185. optional="false"
  186. rtd="true"
  187. crlf="true">
  188. </recv>
  189. <!-- definition of the response time repartition table (unit is ms) -->
  190. <ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
  191. <!-- definition of the call length repartition table (unit is ms) -->
  192. <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
  193. </scenario>