From 21860b5c251ab37e82f977e6ffaf00c31c0d8622 Mon Sep 17 00:00:00 2001 From: Victor Seva Date: Thu, 17 Jun 2021 15:35:25 +0200 Subject: [PATCH] TT#125303 invite_stir * add new route to stir scenarios flow Change-Id: If2526652bfedfb5e9924b2182b751c854bd81ae2 --- scenarios/config.yml | 2 + .../incoming_peer_stir/0003_test.yml.tt2 | 4 + .../invite_peerout_stir/0003_test.yml.tt2 | 4 + scenarios/invite_stir/0005_test.yml.tt2 | 42 +++ scenarios/invite_stir/0007_test.yml.tt2 | 249 ++++++++++++++++++ scenarios/invite_stir/0009_test.yml.tt2 | 52 ++++ scenarios/invite_stir/0012_test.yml.tt2 | 22 ++ scenarios/invite_stir/0014_test.yml.tt2 | 44 ++++ scenarios/invite_stir/0015_test.yml.tt2 | 37 +++ scenarios/invite_stir/0017_test.yml.tt2 | 55 ++++ scenarios/invite_stir/0020_test.yml.tt2 | 28 ++ scenarios/invite_stir/0021_test.yml.tt2 | 42 +++ scenarios/invite_stir/0023_test.yml.tt2 | 245 +++++++++++++++++ scenarios/invite_stir/0025_test.yml.tt2 | 52 ++++ scenarios/invite_stir/0028_test.yml.tt2 | 22 ++ scenarios/invite_stir/0030_test.yml.tt2 | 44 ++++ scenarios/invite_stir/0031_test.yml.tt2 | 37 +++ scenarios/invite_stir/0033_test.yml.tt2 | 55 ++++ scenarios/invite_stir/0036_test.yml.tt2 | 28 ++ scenarios/invite_stir/cdr_test.yml.tt2 | 20 ++ scenarios/invite_stir/media181sec.pcap | 1 + scenarios/invite_stir/prefs.json.tt2 | 9 + scenarios/invite_stir/scenario.yml | 61 +++++ scenarios/invite_stir/sipp_scenario00.xml | 132 ++++++++++ scenarios/invite_stir/sipp_scenario01.xml | 132 ++++++++++ .../invite_stir/sipp_scenario_responder00.xml | 73 +++++ .../invite_stir/sipp_scenario_responder01.xml | 73 +++++ 27 files changed, 1565 insertions(+) create mode 100644 scenarios/invite_stir/0005_test.yml.tt2 create mode 100644 scenarios/invite_stir/0007_test.yml.tt2 create mode 100644 scenarios/invite_stir/0009_test.yml.tt2 create mode 100644 scenarios/invite_stir/0012_test.yml.tt2 create mode 100644 scenarios/invite_stir/0014_test.yml.tt2 create mode 100644 scenarios/invite_stir/0015_test.yml.tt2 create mode 100644 scenarios/invite_stir/0017_test.yml.tt2 create mode 100644 scenarios/invite_stir/0020_test.yml.tt2 create mode 100644 scenarios/invite_stir/0021_test.yml.tt2 create mode 100644 scenarios/invite_stir/0023_test.yml.tt2 create mode 100644 scenarios/invite_stir/0025_test.yml.tt2 create mode 100644 scenarios/invite_stir/0028_test.yml.tt2 create mode 100644 scenarios/invite_stir/0030_test.yml.tt2 create mode 100644 scenarios/invite_stir/0031_test.yml.tt2 create mode 100644 scenarios/invite_stir/0033_test.yml.tt2 create mode 100644 scenarios/invite_stir/0036_test.yml.tt2 create mode 100644 scenarios/invite_stir/cdr_test.yml.tt2 create mode 120000 scenarios/invite_stir/media181sec.pcap create mode 100644 scenarios/invite_stir/prefs.json.tt2 create mode 100644 scenarios/invite_stir/scenario.yml create mode 100644 scenarios/invite_stir/sipp_scenario00.xml create mode 100644 scenarios/invite_stir/sipp_scenario01.xml create mode 100644 scenarios/invite_stir/sipp_scenario_responder00.xml create mode 100644 scenarios/invite_stir/sipp_scenario_responder01.xml diff --git a/scenarios/config.yml b/scenarios/config.yml index 34216671..dfea243c 100644 --- a/scenarios/config.yml +++ b/scenarios/config.yml @@ -15,3 +15,5 @@ kamailio: private_key: /etc/kamailio/stir/invite-peerout-stir.scenarios.test.key - name: invite-trusted-peerout-stir.scenarios.test private_key: /etc/kamailio/stir/invite-peerout-stir.scenarios.test.key + - name: invite-stir.scenarios.test + private_key: /etc/kamailio/stir/invite-peerout-stir.scenarios.test.key diff --git a/scenarios/incoming_peer_stir/0003_test.yml.tt2 b/scenarios/incoming_peer_stir/0003_test.yml.tt2 index 40809148..90a1c3db 100644 --- a/scenarios/incoming_peer_stir/0003_test.yml.tt2 +++ b/scenarios/incoming_peer_stir/0003_test.yml.tt2 @@ -64,6 +64,10 @@ flow: $xavp(callee_real_prefs[0]=>stir_check[*]): [1] $x_fd: invite-peerout-stir.scenarios.test $sht(stir=>invite-peerout-stir.scenarios.test): "/etc/kamailio/stir/invite-peerout-stir.scenarios.test.key" + - start|ROUTE_STIR_PAI: + $var(idtt_attest): A + - return|ROUTE_STIR_PAI: + $avp(pai_params): [';verstat=TN-Validation-Passed-A'] - return|ROUTE_STIR_CHECK: $var(tmp): "/etc/kamailio/stir/invite-peerout-stir.scenarios.test.pubkey" $var(rc): 1 diff --git a/scenarios/invite_peerout_stir/0003_test.yml.tt2 b/scenarios/invite_peerout_stir/0003_test.yml.tt2 index f8895048..ff5374b7 100644 --- a/scenarios/invite_peerout_stir/0003_test.yml.tt2 +++ b/scenarios/invite_peerout_stir/0003_test.yml.tt2 @@ -150,6 +150,10 @@ flow: - start|ROUTE_STIR: $x_fU: [% invite_peerout_stir_scenarios_test.testuser1002.phone_number %] $x_fd: invite-peerout-stir.scenarios.test + - start|ROUTE_STIR_PAI: + $var(idtt_attest): A + - return|ROUTE_STIR_PAI: + $avp(pai_params): [';verstat=TN-Validation-Passed-A'] - return|ROUTE_STIR: - return|ROUTE_SET_CALLEE: - start|ROUTE_ADD_CALLINFO: diff --git a/scenarios/invite_stir/0005_test.yml.tt2 b/scenarios/invite_stir/0005_test.yml.tt2 new file mode 100644 index 00000000..3f696341 --- /dev/null +++ b/scenarios/invite_stir/0005_test.yml.tt2 @@ -0,0 +1,42 @@ +flow: + - start|DEFAULT_ROUTE: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_NET_INFO: + - return|ROUTE_NET_INFO: + - start|ROUTE_CHECK_TEL_URI: + - return|ROUTE_CHECK_TEL_URI: + - start|ROUTE_PRX_REQUEST: + - start|ROUTE_INITVARS: + - return|ROUTE_INITVARS: + - start|ROUTE_INVITE: + - start|ROUTE_LOAD_CALLEE_DOMAIN_PREF: + - start|ROUTE_CLEAR_CALLEE_DOMAIN_PREF: + - return|ROUTE_CLEAR_CALLEE_DOMAIN_PREF: + - return|ROUTE_LOAD_CALLEE_DOMAIN_PREF: + - start|ROUTE_FIND_CALLER: + - start|ROUTE_AUTH: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - exit|ROUTE_EXIT: +sip_in: + - '^INVITE' + - 'Contact: sip:[% scenarios.0.username %]@' + - 'To: ', + 'To: ' + ] + - [ + '^SIP/2.0 101 Connecting', + 'CSeq: 2 INVITE', + 'From: ', + 'To: ' + ] + - [ + '^INVITE sip:[% scenarios.0.responders.0.username %]@', + 'CSeq: 2 INVITE', + 'From: ', + 'To: ', + 'Content-Type: application/sdp', + 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]', + 'P-Callee-UUID: [% invite_stir_scenarios_test.testuser1003.uuid %]', + '_:NOT:_\r\nIdentity: ', + 'P-Asserted-Identity: ;verstat=TN-Validation-Passed-A', + 'P-Called-Party-ID: ;tag=[\w-]+' + - 'To: ' + - 'CSeq: \d+ INVITE' + - 'P-LB-Uptime: \d+' + - 'P-Asserted-Identity: ;verstat=TN-Validation-Passed-A' + - 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]' + - 'P-NGCP-Caller-Info: ;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %];primary=[% invite_stir_scenarios_test.testuser1002.phone_number %]' + - 'P-NGCP-Callee-Info: ;ip=127.0.0.1;port=5060;primary=[% invite_stir_scenarios_test.testuser1003.phone_number %]' + - 'P-D-Uri: sip:lb@127.0.0.1;lr;socket=sip:127.0.0.1:5060' + - 'Content-Type: application/sdp' + - 'Contact: ' + - 'Content-Length:\s+\d+' +sip_out: + - [ + 'SIP/2.0 100 Trying', + 'From: ;tag=[\w-]+', + 'To: ', + 'CSeq: \d+ INVITE', + 'Server: Sipwise NGCP Proxy', + 'Content-Length: 0', + ] + - [ + 'INVITE sip:[% scenarios.0.responders.0.username %]@[% scenarios.0.responders.0.ip %]:[% scenarios.0.responders.0.port %] SIP/2.0', + 'From: ;tag=[\w-]+', + 'To: ', + 'CSeq: \d+ INVITE', + 'P-LB-Uptime: \d+', + 'P-Asserted-Identity: ;verstat=TN-Validation-Passed-A', + 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]', + 'P-NGCP-Caller-Info: ;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %];primary=[% invite_stir_scenarios_test.testuser1002.phone_number %]', + 'P-NGCP-Callee-Info: ;ip=127.0.0.1;port=5060;primary=[% invite_stir_scenarios_test.testuser1003.phone_number %]', + 'P-D-Uri: sip:lb@127.0.0.1;lr;socket=sip:127.0.0.1:5060', + 'Content-Type: application/sdp', + 'Contact: ', + 'Content-Length:\s+\d+', + ] diff --git a/scenarios/invite_stir/0012_test.yml.tt2 b/scenarios/invite_stir/0012_test.yml.tt2 new file mode 100644 index 00000000..4ad98795 --- /dev/null +++ b/scenarios/invite_stir/0012_test.yml.tt2 @@ -0,0 +1,22 @@ +flow: + - start|DEFAULT_ONREPLY: + - start|REPLY_ROUTE_NAT: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_APPLY_HEADER_RULES: + - return|ROUTE_APPLY_HEADER_RULES: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|REPLY_ROUTE_NAT_CONTINUE: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - exit|ROUTE_EXIT: +sip_in: + - '^SIP/2.0 180 Ringing' + - 'CSeq: 2 INVITE' +sip_out: + - [ + '^SIP/2.0 180 Ringing', + 'CSeq: 2 INVITE', + ] diff --git a/scenarios/invite_stir/0014_test.yml.tt2 b/scenarios/invite_stir/0014_test.yml.tt2 new file mode 100644 index 00000000..ede1c6ff --- /dev/null +++ b/scenarios/invite_stir/0014_test.yml.tt2 @@ -0,0 +1,44 @@ +flow: + - start|DEFAULT_ONREPLY: + - start|REPLY_ROUTE_NAT: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_APPLY_HEADER_RULES: + - return|ROUTE_APPLY_HEADER_RULES: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|REPLY_ROUTE_RTPENGINE: + - return|REPLY_ROUTE_RTPENGINE: + - start|REPLY_ROUTE_NAT_CONTINUE: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - start|dialog:start: + - return|dialog:start: + $avp(lua_dlg_profile): [ + "accountout:[% customer_test.id %]", + "userout:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "account:[% customer_test.id %]", + "user:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "totalaccountout:[% customer_test.id %]", + "totaluserout:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "totalaccount:[% customer_test.id %]", + "totaluser:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "local", + "totalaccount:[% customer_test.id %]", + "totaluser:[% invite_stir_scenarios_test.testuser1003.uuid %]", + "total", + "account:[% customer_test.id %]", + "user:[% invite_stir_scenarios_test.testuser1003.uuid %]" + ] + - return|dialog:start: +sip_in: + - '^SIP/2.0 200 OK' + - 'CSeq: 2 INVITE' +sip_out: + - [ + '^SIP/2.0 200 OK', + 'CSeq: 2 INVITE', + 'From: ;tag=[\w-]+', + 'To: ;tag=[\w-]+' + ] diff --git a/scenarios/invite_stir/0015_test.yml.tt2 b/scenarios/invite_stir/0015_test.yml.tt2 new file mode 100644 index 00000000..53a5b3fc --- /dev/null +++ b/scenarios/invite_stir/0015_test.yml.tt2 @@ -0,0 +1,37 @@ +flow: + - start|DEFAULT_ROUTE: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_NET_INFO: + - return|ROUTE_NET_INFO: + - start|ROUTE_CHECK_TEL_URI: + - return|ROUTE_CHECK_TEL_URI: + - start|ROUTE_PRX_REQUEST: + - start|ROUTE_INITVARS: + - return|ROUTE_INITVARS: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|ROUTE_RESTORE_CLUSTERSET: + - return|ROUTE_RESTORE_CLUSTERSET: + - start|ROUTE_WITHINDLG_RTPENGINE: + - return|ROUTE_WITHINDLG_RTPENGINE: + - start|ROUTE_OUTBOUND: + - start|DEFAULT_SEND: + - exit|DEFAULT_SEND: + - exit|DEFAULT_SEND: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - exit|ROUTE_EXIT: +sip_in: + - '^ACK sip:127.0.0.1:5080;prxroute=1 SIP/2.0' + - 'CSeq: 2 ACK' + - 'From: ', + 'To: ' + ] + - [ + '^SIP/2.0 101 Connecting', + 'CSeq: 2 INVITE', + 'From: ', + 'To: ' + ] + - [ + '^INVITE sip:[% scenarios.1.responders.0.username %]@', + 'CSeq: 2 INVITE', + 'From: ', + 'To: ', + 'Content-Type: application/sdp', + 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]', + 'P-Callee-UUID: [% invite_stir_scenarios_test.testuser1004.uuid %]', + '_:NOT:_\r\nIdentity: ', + 'P-Asserted-Identity: \r\n', + 'P-Called-Party-ID: ;tag=[\w-]+' + - 'To: ' + - 'CSeq: \d+ INVITE' + - 'P-LB-Uptime: \d+' + - 'P-Asserted-Identity: \r\n' + - 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]' + - 'P-NGCP-Caller-Info: ;ip=[% scenarios.0.ip %];port=[% scenarios.1.port %];primary=[% invite_stir_scenarios_test.testuser1002.phone_number %]' + - 'P-NGCP-Callee-Info: ;ip=127.0.0.1;port=5060;primary=[% invite_stir_scenarios_test.testuser1004.phone_number %]' + - 'P-D-Uri: sip:lb@127.0.0.1;lr;socket=sip:127.0.0.1:5060' + - 'Content-Type: application/sdp' + - 'Contact: ' + - 'Content-Length:\s+\d+' +sip_out: + - [ + 'SIP/2.0 100 Trying', + 'From: ;tag=[\w-]+', + 'To: ', + 'CSeq: \d+ INVITE', + 'Server: Sipwise NGCP Proxy', + 'Content-Length: 0', + ] + - [ + 'INVITE sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0', + 'From: ;tag=[\w-]+', + 'To: ', + 'CSeq: \d+ INVITE', + 'P-LB-Uptime: \d+', + 'P-Asserted-Identity: \r\n', + 'P-Caller-UUID: [% invite_stir_scenarios_test.testuser1002.uuid %]', + 'P-NGCP-Caller-Info: ;ip=[% scenarios.0.ip %];port=[% scenarios.1.port %];primary=[% invite_stir_scenarios_test.testuser1002.phone_number %]', + 'P-NGCP-Callee-Info: ;ip=127.0.0.1;port=5060;primary=[% invite_stir_scenarios_test.testuser1004.phone_number %]', + 'P-D-Uri: sip:lb@127.0.0.1;lr;socket=sip:127.0.0.1:5060', + 'Content-Type: application/sdp', + 'Contact: ', + 'Content-Length:\s+\d+', + ] diff --git a/scenarios/invite_stir/0028_test.yml.tt2 b/scenarios/invite_stir/0028_test.yml.tt2 new file mode 100644 index 00000000..4ad98795 --- /dev/null +++ b/scenarios/invite_stir/0028_test.yml.tt2 @@ -0,0 +1,22 @@ +flow: + - start|DEFAULT_ONREPLY: + - start|REPLY_ROUTE_NAT: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_APPLY_HEADER_RULES: + - return|ROUTE_APPLY_HEADER_RULES: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|REPLY_ROUTE_NAT_CONTINUE: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - exit|ROUTE_EXIT: +sip_in: + - '^SIP/2.0 180 Ringing' + - 'CSeq: 2 INVITE' +sip_out: + - [ + '^SIP/2.0 180 Ringing', + 'CSeq: 2 INVITE', + ] diff --git a/scenarios/invite_stir/0030_test.yml.tt2 b/scenarios/invite_stir/0030_test.yml.tt2 new file mode 100644 index 00000000..26ca1416 --- /dev/null +++ b/scenarios/invite_stir/0030_test.yml.tt2 @@ -0,0 +1,44 @@ +flow: + - start|DEFAULT_ONREPLY: + - start|REPLY_ROUTE_NAT: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_APPLY_HEADER_RULES: + - return|ROUTE_APPLY_HEADER_RULES: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|REPLY_ROUTE_RTPENGINE: + - return|REPLY_ROUTE_RTPENGINE: + - start|REPLY_ROUTE_NAT_CONTINUE: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - start|dialog:start: + - return|dialog:start: + $avp(lua_dlg_profile): [ + "accountout:[% customer_test.id %]", + "userout:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "account:[% customer_test.id %]", + "user:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "totalaccountout:[% customer_test.id %]", + "totaluserout:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "totalaccount:[% customer_test.id %]", + "totaluser:[% invite_stir_scenarios_test.testuser1002.uuid %]", + "local", + "totalaccount:[% customer_test.id %]", + "totaluser:[% invite_stir_scenarios_test.testuser1004.uuid %]", + "total", + "account:[% customer_test.id %]", + "user:[% invite_stir_scenarios_test.testuser1004.uuid %]" + ] + - return|dialog:start: +sip_in: + - '^SIP/2.0 200 OK' + - 'CSeq: 2 INVITE' +sip_out: + - [ + '^SIP/2.0 200 OK', + 'CSeq: 2 INVITE', + 'From: ;tag=[\w-]+', + 'To: ;tag=[\w-]+' + ] diff --git a/scenarios/invite_stir/0031_test.yml.tt2 b/scenarios/invite_stir/0031_test.yml.tt2 new file mode 100644 index 00000000..a2ef7ee1 --- /dev/null +++ b/scenarios/invite_stir/0031_test.yml.tt2 @@ -0,0 +1,37 @@ +flow: + - start|DEFAULT_ROUTE: + - start|ROUTE_ENTRY: + - return|ROUTE_ENTRY: + - start|ROUTE_NET_INFO: + - return|ROUTE_NET_INFO: + - start|ROUTE_CHECK_TEL_URI: + - return|ROUTE_CHECK_TEL_URI: + - start|ROUTE_PRX_REQUEST: + - start|ROUTE_INITVARS: + - return|ROUTE_INITVARS: + - start|ROUTE_PREPARE_UA: + - return|ROUTE_PREPARE_UA: + - start|ROUTE_RESTORE_CLUSTERSET: + - return|ROUTE_RESTORE_CLUSTERSET: + - start|ROUTE_WITHINDLG_RTPENGINE: + - return|ROUTE_WITHINDLG_RTPENGINE: + - start|ROUTE_OUTBOUND: + - start|DEFAULT_SEND: + - exit|DEFAULT_SEND: + - exit|DEFAULT_SEND: + - start|ROUTE_EXIT: + - start|ROUTE_RUNTIME: + - return|ROUTE_RUNTIME: + - exit|ROUTE_EXIT: +sip_in: + - '^ACK sip:127.0.0.1:5080;prxroute=1 SIP/2.0' + - 'CSeq: 2 ACK' + - 'From: + + + + ;tag=[pid]SIPpTag00[call_number] + To: + Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id] + CSeq: 1 INVITE + Contact: sip:[field0 file="caller.csv"]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + ;tag=[pid]SIPpTag00[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id] + CSeq: 1 ACK + Contact: sip:[field0 file="caller.csv"]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + ;tag=[pid]SIPpTag00[call_number] + To: + Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id] + CSeq: 2 INVITE + Contact: sip:[field0 file="caller.csv"]@[local_ip]:[local_port] + Max-Forwards: 70 + [field1 file="caller.csv"] + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + + + ;tag=[pid]SIPpTag00[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id] + [routes] + CSeq: 2 ACK + Contact: sip:[field0 file="caller.csv"]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + + + + + + + + ;tag=[pid]SIPpTag00[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id] + CSeq: 3 BYE + Contact: sip:[field0 file="caller.csv"]@[local_ip]:[local_port] + [routes] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + + + + diff --git a/scenarios/invite_stir/sipp_scenario01.xml b/scenarios/invite_stir/sipp_scenario01.xml new file mode 100644 index 00000000..272b5116 --- /dev/null +++ b/scenarios/invite_stir/sipp_scenario01.xml @@ -0,0 +1,132 @@ + + + + + ;tag=[pid]SIPpTag01[call_number] + To: + Call-ID: NGCP%[field4 file="callee.csv" line=1]%///[call_id] + CSeq: 1 INVITE + Contact: sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + ;tag=[pid]SIPpTag01[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=1]%///[call_id] + CSeq: 1 ACK + Contact: sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + ;tag=[pid]SIPpTag01[call_number] + To: + Call-ID: NGCP%[field4 file="callee.csv" line=1]%///[call_id] + CSeq: 2 INVITE + Contact: sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port] + Max-Forwards: 70 + [field1 file="caller.csv" line=1] + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + + + ;tag=[pid]SIPpTag01[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=1]%///[call_id] + [routes] + CSeq: 2 ACK + Contact: sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + + + + + + + + ;tag=[pid]SIPpTag01[call_number] + To: [peer_tag_param] + Call-ID: NGCP%[field4 file="callee.csv" line=1]%///[call_id] + CSeq: 3 BYE + Contact: sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port] + [routes] + Max-Forwards: 70 + Content-Length: 0 + + ]]> + + + + + + + + + diff --git a/scenarios/invite_stir/sipp_scenario_responder00.xml b/scenarios/invite_stir/sipp_scenario_responder00.xml new file mode 100644 index 00000000..2197e9d6 --- /dev/null +++ b/scenarios/invite_stir/sipp_scenario_responder00.xml @@ -0,0 +1,73 @@ + + + + + + + + + Content-Length: 0 + + ]]> + + + + + + + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + + Content-Length: [len] + + ]]> + + + + + + + diff --git a/scenarios/invite_stir/sipp_scenario_responder01.xml b/scenarios/invite_stir/sipp_scenario_responder01.xml new file mode 100644 index 00000000..2197e9d6 --- /dev/null +++ b/scenarios/invite_stir/sipp_scenario_responder01.xml @@ -0,0 +1,73 @@ + + + + + + + + + Content-Length: 0 + + ]]> + + + + + + + Content-Type: application/sdp + Content-Length: [len] + + v=0 + o=user1 53655765 2353687637 IN IP[local_ip_type] [local_ip] + s=- + c=IN IP[media_ip_type] [media_ip] + t=0 0 + m=audio [media_port] RTP/AVP 8 + a=rtpmap:8 PCMA/8000 + a=ptime:50 + + ]]> + + + + + + + + Content-Length: [len] + + ]]> + + + + + + +