MT#59187 new kct scenario "invite_callforward_use_redirection"

This new scenario tests the new CF option "use redirection" meant to redirect a call
with a 302 reply.

Change-Id: Ifd24d7856a653aaca68acf1164efd92f961801af
mr12.4.1
Alessio Garzi 1 year ago
parent 75264334af
commit dbbb7bb3bc

@ -0,0 +1,169 @@
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_PSTN_SELECT_INBOUND_PEER:
- return|ROUTE_PSTN_SELECT_INBOUND_PEER:
- start|ROUTE_CLEAR_PEER_IN_PREF:
- return|ROUTE_CLEAR_PEER_IN_PREF:
- start|ROUTE_LOAD_PEER_IN_PREF:
- start|ROUTE_DLG_MANAGE:
- return|ROUTE_DLG_MANAGE:
- return|ROUTE_LOAD_PEER_IN_PREF:
- return|ROUTE_FIND_CALLER:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_FORWARDER_CLI:
- return|ROUTE_GET_FORWARDER_CLI:
- start|ROUTE_CLIR:
- return|ROUTE_CLIR:
- start|ROUTE_CALLER_BLOCK_CLI:
- return|ROUTE_CALLER_BLOCK_CLI:
- start|ROUTE_FIND_CALLEE:
- start|ROUTE_DETECT_LOOP:
- return|ROUTE_DETECT_LOOP:
- start|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- return|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- start|ROUTE_CLEAR_CALLEE_PREF:
- return|ROUTE_CLEAR_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- return|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- start|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- return|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- start|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_SET_CALLEE_DIALOG_BASE:
- return|ROUTE_SET_CALLEE_DIALOG_BASE:
- start|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_BLOCK_IN:
- return|ROUTE_BLOCK_IN:
- return|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_NCOS_CHECK:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_CHECK:
- start|ROUTE_BLOCK_OUT:
- return|ROUTE_BLOCK_OUT:
- start|ROUTE_CHECK_PBX:
- return|ROUTE_CHECK_PBX:
- start|ROUTE_CALLEE_DISPATCH:
- start|ROUTE_INVITE_TO_INT:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_CF_CFU:
- start|ROUTE_LOAD_CF_MAP:
- return|ROUTE_LOAD_CF_MAP:
- start|ROUTE_CHECK_CF:
- return|ROUTE_CHECK_CF:
- start|ROUTE_CF_WITH_REDIRECTION:
- start|ROUTE_ACC_CALLER:
- start|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_ACC_CALLER:
- start|ROUTE_ACC_CALLEE:
- start|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_ACC_CALLEE:
- start|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- start|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_LOCAL_REPLY:
$avp(announce_code): [302]
$avp(announce_reason): ["Moved Temporarily"]
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|dialog:failed:
- return|dialog:failed:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'INVITE sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]:[% scenarios.0.port %];alias=[^;]+>'
- 'User-Agent: KCT SIPP'
- 'Content-Type: application/sdp'
- 'Content-Length:\s+\d+'
- 'P-NGCP-Src-Ip: [% scenarios.0.ip %]'
- 'P-NGCP-Src-Port: [% scenarios.0.port %]'
- 'P-NGCP-Src-Proto: udp'
- 'P-NGCP-Src-Af: 4'
- 'P-Sock-Info: udp:[% server_ip %]:5060'
- 'P-LB-Uptime:\s+\d+'
- 'P-NGCP-Src-Nat: 1'
- 'v=0'
- 'o=user1 \d+ \d+ IN IP4 [% scenarios.0.ip %]'
- 's=-'
- 'c=IN IP4 [% scenarios.0.ip %]'
- 't=0 0'
- 'm=audio [% scenarios.0.mport %] RTP/AVP 8'
- 'a=rtpmap:8 PCMA/8000'
- 'a=ptime:50'
sip_out:
- [
'SIP/2.0 100 Trying',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]
- [
'SIP/2.0 302 Moved Temporarily',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'P-Callee-Uuid: [% invite_callforward_use_redirection_scenarios_test.testuser1001.uuid %]',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]',
'P-NGCP-Callee-Info: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=invite-callforward-use-redirection.scenarios.test;port=5060;primary=[% invite_callforward_use_redirection_scenarios_test.testuser1001.phone_number %]',
'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1003.phone_number %]@callerpeerdomainexample>',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]

@ -0,0 +1,20 @@
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_LOCAL:
- return|ROUTE_LOCAL:
sip_in:
- 'ACK sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length:\s+0'
sip_out: []

@ -0,0 +1,205 @@
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_PSTN_SELECT_INBOUND_PEER:
- return|ROUTE_PSTN_SELECT_INBOUND_PEER:
- start|ROUTE_CLEAR_PEER_IN_PREF:
- return|ROUTE_CLEAR_PEER_IN_PREF:
- start|ROUTE_LOAD_PEER_IN_PREF:
- start|ROUTE_DLG_MANAGE:
- return|ROUTE_DLG_MANAGE:
- return|ROUTE_LOAD_PEER_IN_PREF:
- return|ROUTE_FIND_CALLER:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_FORWARDER_CLI:
- return|ROUTE_GET_FORWARDER_CLI:
- start|ROUTE_CLIR:
- return|ROUTE_CLIR:
- start|ROUTE_CALLER_BLOCK_CLI:
- return|ROUTE_CALLER_BLOCK_CLI:
- start|ROUTE_FIND_CALLEE:
- start|ROUTE_DETECT_LOOP:
- return|ROUTE_DETECT_LOOP:
- start|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- return|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- start|ROUTE_CLEAR_CALLEE_PREF:
- return|ROUTE_CLEAR_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- return|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- start|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- return|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- start|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_SET_CALLEE_DIALOG_BASE:
- return|ROUTE_SET_CALLEE_DIALOG_BASE:
- start|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_BLOCK_IN:
- return|ROUTE_BLOCK_IN:
- return|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_NCOS_CHECK:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_CHECK:
- start|ROUTE_BLOCK_OUT:
- return|ROUTE_BLOCK_OUT:
- start|ROUTE_CHECK_PBX:
- return|ROUTE_CHECK_PBX:
- start|ROUTE_CALLEE_DISPATCH:
- start|ROUTE_INVITE_TO_INT:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_CF_CFU:
- return|ROUTE_CF_CFU:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_CHECK_LOCATIONS:
- start|ROUTE_LOOKUP_SUBSCRIBER_LOCATIONS:
- return|ROUTE_LOOKUP_SUBSCRIBER_LOCATIONS:
- start|ROUTE_OUTBOUND:
- start|ROUTE_SET_CALLER_DIALOG:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_SET_CALLER_DIALOG:
- start|ROUTE_ACC_CALLER:
- start|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_ACC_CALLER:
- start|ROUTE_ACC_CALLEE:
- start|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_ACC_CALLEE:
- start|ROUTE_ADD_AOC_HEADER:
- return|ROUTE_ADD_AOC_HEADER:
- start|BRANCH_ROUTE_SBC:
- start|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- return|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- start|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- return|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- start|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_SET_CALLEE_DIALOG_BASE:
- return|ROUTE_SET_CALLEE_DIALOG_BASE:
- start|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_SET_BRANCH_HDRS:
- start|ROUTE_PREPARE_UA:
- return|ROUTE_PREPARE_UA:
- return|ROUTE_SET_BRANCH_HDRS:
- start|ROUTE_SET_RUSER:
- return|ROUTE_SET_RUSER:
- start|ROUTE_BRANCH_ACC_RTP:
- return|ROUTE_BRANCH_ACC_RTP:
- start|ROUTE_FILTER_PRACK:
- return|ROUTE_FILTER_PRACK:
- start|ROUTE_PREPARE_SST:
- start|ROUTE_REMOVE_TIMER_SUPP_REQ:
- return|ROUTE_REMOVE_TIMER_SUPP_REQ:
- return|ROUTE_PREPARE_SST:
- start|ROUTE_PREPARE_MOH:
- return|ROUTE_PREPARE_MOH:
- start|ROUTE_SET_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- start|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_PREPARE_CALLER_CLI:
- return|ROUTE_SET_CALLER_CLI:
- start|ROUTE_SET_CALLEE:
- return|ROUTE_SET_CALLEE:
- start|ROUTE_ADD_CALLINFO:
- start|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- start|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- return|BRANCH_ROUTE_SBC:
- start|DEFAULT_SEND:
- exit|DEFAULT_SEND:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'INVITE sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]:[% scenarios.0.port %];alias=[^;]+>'
sip_out:
- [
'SIP/2.0 100 Trying',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]
- [
'INVITE sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'Contact: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]:[% scenarios.0.port %];alias=[^;]+>',
'Content-Type: application/sdp',
'Content-Length:\s+\d+',
'P-LB-Uptime:\s+\d+',
'P-Asserted-Identity: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'P-Caller-UUID: 0',
'P-Callee-UUID: [% invite_callforward_use_redirection_scenarios_test.testuser1004.uuid %]',
'P-Called-Party-ID: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'P-App-Param: ;calltimer=21600;aleg_sst_enable=no;sst_enable=no;hold_alter_b2b_bleg=no;hold_alter_b2b_aleg=no;fast_ack=no;b_park_domain=[% customer_test.id %]',
'P-App-Name: sbc',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]',
'P-NGCP-Callee-Info: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=[% scenarios.1.responders.0.ip %];port=[% scenarios.1.responders.0.port %];primary=[% invite_callforward_use_redirection_scenarios_test.testuser1004.phone_number %]',
]

@ -0,0 +1,45 @@
flow:
- start|DEFAULT_ROUTE:
- start|ROUTE_ENTRY:
- return|ROUTE_ENTRY:
- start|ROUTE_LEG_B:
- start|ROUTE_INITVARS:
- return|ROUTE_INITVARS:
- start|DEFAULT_SEND:
- exit|DEFAULT_SEND:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'INVITE sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'P-LB-Uptime:\s+\d+'
- 'P-Asserted-Identity: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'P-Caller-UUID: 0'
- 'P-Callee-UUID: [% invite_callforward_use_redirection_scenarios_test.testuser1004.uuid %]'
- 'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]'
- 'P-NGCP-Callee-Info: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=[% scenarios.1.responders.0.ip %];port=[% scenarios.1.responders.0.port %];primary=[% invite_callforward_use_redirection_scenarios_test.testuser1004.phone_number %]'
sip_out:
- [
'SIP/2.0 100 Trying',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]
- [
'INVITE sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'P-LB-Uptime:\s+\d+',
'P-Asserted-Identity: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'P-Caller-UUID: 0',
'P-Callee-UUID: [% invite_callforward_use_redirection_scenarios_test.testuser1004.uuid %]',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]',
'P-NGCP-Callee-Info: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=[% scenarios.1.responders.0.ip %];port=[% scenarios.1.responders.0.port %];primary=[% invite_callforward_use_redirection_scenarios_test.testuser1004.phone_number %]',
]

@ -0,0 +1,46 @@
flow:
- start|DEFAULT_ONREPLY:
- start|REPLY_ROUTE_LEG_B:
- start|ROUTE_ENTRY:
- return|ROUTE_ENTRY:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
- start|FAILURE_ROUTE_LEG_B:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
- start|dialog:failed:
- return|dialog:failed:
sip_in:
- 'SIP/2.0 486 Busy'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %];transport=UDP>'
- 'Content-Length:\s+0'
- 'P-NGCP-Src-Ip: [% scenarios.0.responders.0.ip %]'
- 'P-NGCP-Src-Port: [% scenarios.1.responders.0.port %]'
- 'P-NGCP-Src-Proto: udp'
- 'P-NGCP-Src-Af: 4'
sip_out:
- [
'ACK sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ ACK',
'Content-Length:\s+0',
]
- [
'SIP/2.0 486 Busy',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ INVITE',
'Contact: <sip:[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %];transport=UDP>',
'Content-Length:\s+0',
'P-NGCP-Src-Ip: [% scenarios.0.responders.0.ip %]',
'P-NGCP-Src-Port: [% scenarios.1.responders.0.port %]',
'P-NGCP-Src-Proto: udp',
'P-NGCP-Src-Af: 4',
]

@ -0,0 +1,27 @@
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|FILTER_CODECS:
- return|FILTER_CODECS:
- start|ROUTE_OUTBOUND:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'ACK sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length:\s+0'
sip_out: []

@ -0,0 +1,82 @@
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:
- start|tm:branch-failure:local:
- return|tm:branch-failure:local:
- start|FAILURE_ROUTE_LOCAL:
- start|ROUTE_INITVARS:
- return|ROUTE_INITVARS:
- start|ROUTE_STOP_RTPPROXY_BRANCH:
- start|ROUTE_RESTORE_CLUSTERSET:
- return|ROUTE_RESTORE_CLUSTERSET:
- return|ROUTE_STOP_RTPPROXY_BRANCH:
- start|ROUTE_CF_CFB:
- start|ROUTE_LOAD_CF_MAP:
- return|ROUTE_LOAD_CF_MAP:
- start|ROUTE_CHECK_CF:
- return|ROUTE_CHECK_CF:
- start|ROUTE_CF_WITH_REDIRECTION:
- start|ROUTE_ACC_CALLER:
- start|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_ACC_CALLER:
- start|ROUTE_ACC_CALLEE:
- start|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_ACC_CALLEE:
- start|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- start|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_LOCAL_REPLY:
$avp(announce_code): [302]
$avp(announce_reason): ["Moved Temporarily"]
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|dialog:failed:
- return|dialog:failed:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'SIP/2.0 486 Busy'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ INVITE'
- 'Content-Length:\s+0'
sip_out:
- [
'ACK sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ ACK',
'Content-Length:\s+0',
]
- [
'SIP/2.0 302 Moved Temporarily',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'P-Callee-Uuid: [% invite_callforward_use_redirection_scenarios_test.testuser1004.uuid %]',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]',
'P-NGCP-Callee-Info: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=invite-callforward-use-redirection.scenarios.test;port=5060;primary=[% invite_callforward_use_redirection_scenarios_test.testuser1004.phone_number %]',
'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@callerpeerdomainexample>',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]

@ -0,0 +1,20 @@
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_LOCAL:
- return|ROUTE_LOCAL:
sip_in:
- 'ACK sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length:\s+0'
sip_out: []

@ -0,0 +1,175 @@
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_PSTN_SELECT_INBOUND_PEER:
- return|ROUTE_PSTN_SELECT_INBOUND_PEER:
- start|ROUTE_CLEAR_PEER_IN_PREF:
- return|ROUTE_CLEAR_PEER_IN_PREF:
- start|ROUTE_LOAD_PEER_IN_PREF:
- start|ROUTE_DLG_MANAGE:
- return|ROUTE_DLG_MANAGE:
- return|ROUTE_LOAD_PEER_IN_PREF:
- return|ROUTE_FIND_CALLER:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_CALLER_CLI:
- return|ROUTE_GET_CALLER_CLI:
- start|ROUTE_GET_FORWARDER_CLI:
- return|ROUTE_GET_FORWARDER_CLI:
- start|ROUTE_CLIR:
- return|ROUTE_CLIR:
- start|ROUTE_CALLER_BLOCK_CLI:
- return|ROUTE_CALLER_BLOCK_CLI:
- start|ROUTE_FIND_CALLEE:
- start|ROUTE_DETECT_LOOP:
- return|ROUTE_DETECT_LOOP:
- start|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- return|ROUTE_CALLEE_PROCESS_SPEEDDIALS:
- start|ROUTE_CLEAR_CALLEE_PREF:
- return|ROUTE_CLEAR_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- return|ROUTE_LOAD_CALLEE_CONTRACT_PREF:
- start|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- return|ROUTE_LOAD_CALLEE_RESELLER_PREF:
- start|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_SET_CALLEE_DIALOG_BASE:
- return|ROUTE_SET_CALLEE_DIALOG_BASE:
- start|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG_TOTAL:
- return|ROUTE_SET_CALLEE_DIALOG:
- start|ROUTE_BLOCK_IN:
- return|ROUTE_BLOCK_IN:
- return|ROUTE_LOAD_CALLEE_PREF:
- start|ROUTE_NCOS_CHECK:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- start|ROUTE_NCOS:
- return|ROUTE_NCOS:
- start|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_SET:
- return|ROUTE_NCOS_CHECK:
- start|ROUTE_BLOCK_OUT:
- return|ROUTE_BLOCK_OUT:
- start|ROUTE_CHECK_PBX:
- return|ROUTE_CHECK_PBX:
- start|ROUTE_CALLEE_DISPATCH:
- start|ROUTE_INVITE_TO_INT:
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|ROUTE_CF_CFU:
- return|ROUTE_CF_CFU:
- start|ROUTE_CNT_DLG_CHECK:
- return|ROUTE_CNT_DLG_CHECK:
- start|ROUTE_CHECK_LOCATIONS:
- start|ROUTE_LOOKUP_SUBSCRIBER_LOCATIONS:
- return|ROUTE_LOOKUP_SUBSCRIBER_LOCATIONS:
- start|ROUTE_CF_CFNA:
- start|ROUTE_LOAD_CF_MAP:
- return|ROUTE_LOAD_CF_MAP:
- start|ROUTE_CHECK_CF:
- return|ROUTE_CHECK_CF:
- start|ROUTE_CF_WITH_REDIRECTION:
- start|ROUTE_ACC_CALLER:
- start|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
- return|ROUTE_ACC_CALLER:
- start|ROUTE_ACC_CALLEE:
- start|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
- return|ROUTE_ACC_CALLEE:
- start|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
- start|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_CALLEE_PRIMARY:
- return|ROUTE_ADD_CALLINFO_REPLY:
- start|ROUTE_LOCAL_REPLY:
$avp(announce_code): [302]
$avp(announce_reason): ["Moved Temporarily"]
- start|ROUTE_APPLY_HEADER_RULES:
- return|ROUTE_APPLY_HEADER_RULES:
- start|dialog:failed:
- return|dialog:failed:
- start|ROUTE_EXIT:
- start|ROUTE_RUNTIME:
- return|ROUTE_RUNTIME:
- exit|ROUTE_EXIT:
sip_in:
- 'INVITE sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:@172.30.1.2:52602>'
- 'User-Agent: KCT SIPP'
- 'Content-Type: application/sdp'
- 'Content-Length:\s+\d+'
- 'P-NGCP-Src-Ip: [% scenarios.0.ip %]'
- 'P-NGCP-Src-Port: [% scenarios.0.port %]'
- 'P-NGCP-Src-Proto: udp'
- 'P-NGCP-Src-Af: 4'
- 'P-Sock-Info: udp:[% server_ip %]:5060'
- 'P-LB-Uptime:\s+\d+'
- 'v=0'
- 'o=user1 \d+ \d+ IN IP4 [% scenarios.0.ip %]'
- 's=-'
- 'c=IN IP4 [% scenarios.0.ip %]'
- 't=0 0'
- 'm=audio [% scenarios.0.mport %] RTP/AVP 8'
- 'a=rtpmap:8 PCMA/8000'
- 'a=ptime:50'
sip_out:
- [
'SIP/2.0 100 Trying',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]
- [
'SIP/2.0 302 Moved Temporarily',
'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+',
'CSeq: \d+ INVITE',
'P-Out-Socket: udp:[% server_ip %]:5060',
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
'P-NGCP-Auth-UA: KCT SIPP',
'P-Callee-Uuid: [% invite_callforward_use_redirection_scenarios_test.testuser1006.uuid %]',
'P-NGCP-Caller-Info: <sip:[% scenarios.0.username %]@[% scenarios.0.ip %]>;ip=[% scenarios.0.ip %];port=[% scenarios.0.port %]',
'P-NGCP-Callee-Info: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;ip=invite-callforward-use-redirection.scenarios.test;port=5060;primary=[% invite_callforward_use_redirection_scenarios_test.testuser1006.phone_number %]',
'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@callerpeerdomainexample>',
'Server: Sipwise NGCP Proxy',
'Content-Length:\s+0',
]

@ -0,0 +1,20 @@
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_LOCAL:
- return|ROUTE_LOCAL:
sip_in:
- 'ACK sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length:\s+0'
sip_out: []

@ -0,0 +1,70 @@
---
testuser1001@invite-callforward-use-redirection.scenarios.test:
destinations:
destinations:
- destination: sip:[% invite_callforward_use_redirection_scenarios_test.testuser1003.phone_number %]@invite-callforward-use-redirection.scenarios.test
priority: 0
timeout: 5
- destination: sip:testuser1003@invite-callforward-use-redirection.scenarios.test
priority: 1
timeout: 5
name: dest1001
mappings:
cfu:
- bnumberset: null
destinationset: dest1001
sourceset: null
timeset: null
enabled: true
use_redirection: true
cfb: []
cfna: []
cft: []
cfs: []
cfr: []
cfo: []
testuser1004@invite-callforward-use-redirection.scenarios.test:
destinations:
destinations:
- destination: sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@invite-callforward-use-redirection.scenarios.test
priority: 0
timeout: 5
- destination: sip:testuser1005@invite-callforward-use-redirection.scenarios.test
priority: 1
timeout: 5
name: dest1004
mappings:
cfu: []
cfb:
- bnumberset: null
destinationset: dest1004
sourceset: null
timeset: null
enabled: true
use_redirection: true
cfna: []
cft: []
cfs: []
cfr: []
cfo: []
testuser1006@invite-callforward-use-redirection.scenarios.test:
destinations:
destinations:
- destination: sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@invite-callforward-use-redirection.scenarios.test
priority: 0
timeout: 5
name: dest1004
mappings:
cfu: []
cfna:
- bnumberset: null
destinationset: dest1004
sourceset: null
timeset: null
enabled: true
use_redirection: true
cfb: []
cft: []
cfs: []
cfr: []
cfo: []

@ -0,0 +1,37 @@
cdr:
- source_user: '004321001'
source_domain: '[% scenarios.0.ip %]'
source_cli: '[% scenarios.0.username %]'
destination_user: '[% invite_callforward_use_redirection_scenarios_test.testuser1003.phone_number %]'
destination_domain: 'callerpeerdomainexample'
destination_user_dialed: '[% invite_callforward_use_redirection_scenarios_test.responders.0.username %]'
call_type: 'cfu'
call_status: 'other'
call_code: '302'
- source_user: '004321001'
source_domain: [% scenarios.0.ip %]
source_cli: '[% scenarios.0.username %]'
destination_user: '[% invite_callforward_use_redirection_scenarios_test.responders.0.username %]'
destination_domain: 'callerpeerdomainexample'
destination_user_dialed: '[% invite_callforward_use_redirection_scenarios_test.responders.1.username %]'
call_type: 'cfb'
call_status: 'other'
call_code: '302'
- source_user: '004321001'
source_domain: [% scenarios.0.ip %]
source_cli: '[% scenarios.0.username %]'
destination_user: '[% invite_callforward_use_redirection_scenarios_test.responders.1.username %]'
destination_domain: 'invite-callforward-use-redirection.scenarios.test'
destination_user_dialed: '[% invite_callforward_use_redirection_scenarios_test.responders.1.username %]'
call_type: 'call'
call_status: 'other'
call_code: '302'
- source_user: '004321001'
source_domain: [% scenarios.0.ip %]
source_cli: '[% scenarios.0.username %]'
destination_user: '[% invite_callforward_use_redirection_scenarios_test.responders.3.username %]'
destination_domain: 'callerpeerdomainexample'
destination_user_dialed: '[% invite_callforward_use_redirection_scenarios_test.responders.2.username %]'
call_type: 'cfna'
call_status: 'other'
call_code: '302'

@ -0,0 +1,33 @@
---
invite_callforward_use_redirection:
contact:
company: peer_invite_hm_peerout
email: peer_00@host0.not
contract:
billing_profile_id: 1
status: active
type: sippeering
groups:
- name: peer_invite_callforward_use_redirection_group
priority: 1
description:
rules:
- group_id: peer_invite_callforward_use_redirection_group
callee_prefix: ""
callee_pattern: ''
caller_pattern: '^sip:.+@invite-callforward-use-redirection.scenarios.test'
description: ""
inboundrules:
- group_id: peer_invite_callforward_use_redirection_group
field: "ruri_uri"
pattern: '.*'
priority: 50
enabled: 1
hosts:
- group_id: peer_invite_callforward_use_redirection_group
name: peer_invite_callforward_use_redirection_host0
ip: 127.0.2.1
port: 51602
host: callerpeerdomainexample
transport: 1
weight: 1

@ -0,0 +1,6 @@
{
"@invite-callforward-use-redirection.scenarios.test": {
"nat_sipping": "no",
"ua_reject_missing" : 1
}
}

@ -0,0 +1,97 @@
---
test_uuid: invite_callforward_use_redirection
domains:
invite-callforward-use-redirection.scenarios.test:
reseller_id: 1
customers:
'customer.test':
contacts:
- email: "customer.test@spce.test"
reseller_id: 1
details:
status: 'active'
type: 'sipaccount'
billing_profile_id: 1
reseller_id: 1
subscribers:
invite-callforward-use-redirection.scenarios.test:
testuser1003:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1003
testuser1002:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1002
testuser1001:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1001
testuser1004:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1004
testuser1005:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1005
testuser1006:
customer: 'customer.test'
password: testuser
cc: 43
ac: 1
sn: 1006
scenarios:
- ip: 127.126.0.1
number: "004321001"
username: "004321001"
peer_host: peer_invite_callforward_use_redirection_host0
domain: invite-callforward-use-redirection.scenarios.test
responders:
- ip: 127.1.0.1
username: testuser1001
domain: invite-callforward-use-redirection.scenarios.test
register: 'no'
active: 'no'
- ip: 127.1.0.3
username: testuser1003
domain: invite-callforward-use-redirection.scenarios.test
register: 'yes'
ua: 'KCT SIPP'
- ip: 127.126.0.1
number: "004321001"
username: "004321001"
peer_host: peer_invite_callforward_use_redirection_host0
domain: invite-callforward-use-redirection.scenarios.test
responders:
- ip: 127.1.0.4
username: testuser1004
domain: invite-callforward-use-redirection.scenarios.test
register: 'yes'
ua: 'KCT SIPP'
- ip: 127.1.0.5
username: testuser1005
domain: invite-callforward-use-redirection.scenarios.test
register: 'yes'
ua: 'KCT SIPP'
- ip: 127.126.0.1
number: "004321001"
username: "004321001"
peer_host: peer_invite_callforward_use_redirection_host0
domain: invite-callforward-use-redirection.scenarios.test
responders:
- ip: 127.1.0.4
username: testuser1006
domain: invite-callforward-use-redirection.scenarios.test
register: 'no'
ua: 'KCT SIPP'

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<scenario name="Sipwise NGCP Benchmark UAC Caller">
<send>
<![CDATA[
INVITE sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: <sip:[field0 file="caller.csv" line=0]@[field2 file="caller.csv" line=0]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0]>
Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id]
CSeq: 1 INVITE
Contact: <sip:[field0 file="caller.csv" line=0]@[local_ip]:[local_port]>
User-Agent: KCT SIPP
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
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="180" optional="true">
</recv>
<recv response="183" optional="true">
</recv>
<recv response="302" rrs="true">
</recv>
<send>
<![CDATA[
ACK sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0]:[remote_port] SIP/2.0
[last_Via:]
From: <sip:[field0 file="caller.csv" line=0]@[field2 file="caller.csv" line=0]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0]>[peer_tag_param]
Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id]
CSeq: 1 ACK
Contact: <sip:[field0 file="caller.csv" line=0]@[local_ip]:[local_port]>
Max-Forwards: 70
Content-Length: 0
]]>
</send>
<ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200, 500, 1000"/>
<!-- <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/> -->
</scenario>

@ -0,0 +1,14 @@
messages:
- - 'SIP/2.0 100 Trying'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Server: Sipwise NGCP LB'
- 'Content-Length:\s+0'
- - 'SIP/2.0 302 Moved Temporarily'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.0.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1003.phone_number %]@callerpeerdomainexample>'
- 'Server: Sipwise NGCP Proxy'
- 'Content-Length:\s+0'

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<scenario name="Sipwise NGCP Benchmark UAC Caller">
<send>
<![CDATA[
INVITE sip:[field0 file="callee.csv" line=2]@[field3 file="callee.csv" line=2] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: <sip:[field0 file="caller.csv" line=1]@[field2 file="caller.csv" line=1]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=2]@[field3 file="callee.csv" line=2]>
Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id]
CSeq: 1 INVITE
Contact: <sip:[field0 file="caller.csv" line=1]@[local_ip]:[local_port]>
User-Agent: KCT SIPP
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
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="180" optional="true">
</recv>
<recv response="302" rrs="true" rtd="3">
</recv>
<send>
<![CDATA[
ACK sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0]:[remote_port] SIP/2.0
[last_Via:]
From: <sip:[field0 file="caller.csv" line=0]@[field2 file="caller.csv" line=0]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=0]@[field3 file="callee.csv" line=0]>[peer_tag_param]
Call-ID: NGCP%[field4 file="callee.csv" line=0]%///[call_id]
CSeq: 1 ACK
Contact: <sip:[field0 file="caller.csv" line=0]@[local_ip]:[local_port]>
Max-Forwards: 70
Content-Length: 0
]]>
</send>
<ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200, 500, 1000"/>
<!-- <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/> -->
</scenario>

@ -0,0 +1,14 @@
messages:
- - 'SIP/2.0 100 Trying'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Server: Sipwise NGCP LB'
- 'Content-Length:\s+0'
- - 'SIP/2.0 302 Moved Temporarily'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@callerpeerdomainexample>'
- 'Server: Sipwise NGCP Proxy'
- 'Content-Length:\s+0'

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<scenario name="Sipwise NGCP Benchmark UAC Caller">
<send>
<![CDATA[
INVITE sip:[field0 file="callee.csv" line=4]@[field3 file="callee.csv" line=4] SIP/2.0
Via: SIP/2.0/[transport] [local_ip]:[local_port];branch=[branch]
From: <sip:[field0 file="caller.csv" line=2]@[field2 file="caller.csv" line=2]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=4]@[field3 file="callee.csv" line=4]>
Call-ID: NGCP%[field4 file="callee.csv" line=4]%///[call_id]
CSeq: 1 INVITE
Contact: <sip:[field0 file="caller.csv" line=4]@[local_ip]:[local_port]>
User-Agent: KCT SIPP
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
]]>
</send>
<recv response="100" optional="true">
</recv>
<recv response="180" optional="true">
</recv>
<recv response="183" optional="true">
</recv>
<recv response="302" rrs="true">
</recv>
<send>
<![CDATA[
ACK sip:[field0 file="callee.csv" line=4]@[field3 file="callee.csv" line=4]:[remote_port] SIP/2.0
[last_Via:]
From: <sip:[field0 file="caller.csv" line=2]@[field2 file="caller.csv" line=2]>;tag=[pid]SIPpTag00[call_number]
To: <sip:[field0 file="callee.csv" line=4]@[field3 file="callee.csv" line=4]>[peer_tag_param]
Call-ID: NGCP%[field4 file="callee.csv" line=4]%///[call_id]
CSeq: 1 ACK
Contact: <sip:[field0 file="caller.csv" line=4]@[local_ip]:[local_port]>
Max-Forwards: 70
Content-Length: 0
]]>
</send>
<ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200, 500, 1000"/>
<!-- <CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/> -->
</scenario>

@ -0,0 +1,14 @@
messages:
- - 'SIP/2.0 100 Trying'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'Server: Sipwise NGCP LB'
- 'Content-Length:\s+0'
- - 'SIP/2.0 302 Moved Temporarily'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.2.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ INVITE'
- 'Contact: <sip:[% invite_callforward_use_redirection_scenarios_test.testuser1005.phone_number %]@callerpeerdomainexample>'
- 'Server: Sipwise NGCP Proxy'
- 'Content-Length:\s+0'

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8" ?>
<scenario name="Sipwise NGCP Benchmark UAS Responder">
<recv request="INVITE" crlf="true" rtd="true">
</recv>
<send>
<![CDATA[
SIP/2.0 486 Busy
[last_Via:]
[last_From:]
[last_To:];tag=[pid]SIPpTag01[call_number]
[last_Call-ID:]
[last_CSeq:]
Contact: <sip:[local_ip]:[local_port];transport=[transport]>
Content-Length: 0
]]>
</send>
<recv request="ACK"
crlf="true">
</recv>
<ResponseTimeRepartition value="10, 20, 30, 40, 50, 100, 150, 200"/>
<CallLengthRepartition value="10, 50, 100, 500, 1000, 5000, 10000"/>
</scenario>

@ -0,0 +1,24 @@
messages:
- - 'INVITE sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'CSeq: \d+ INVITE'
- 'P-Asserted-Identity: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>'
- 'Content-Type: application/sdp'
- 'Content-Length:\s+\d+'
- 'Contact: <sip:ngcp-lb@[% server_ip %]:5060;ngcpct=[^;]+>'
- 'v=0'
- 'o=user1 53655765 2353687637 IN IP4 192.168.8.178'
- 's=-'
- 'c=IN IP4 192.168.8.178'
- 't=0 0'
- 'm=audio \d+ RTP/AVP 8'
- 'a=rtpmap:8 PCMA/8000'
- 'a=sendrecv'
- 'a=rtcp:\d+'
- 'a=ptime:50'
- - 'ACK sip:[% scenarios.1.responders.0.username %]@[% scenarios.1.responders.0.ip %]:[% scenarios.1.responders.0.port %] SIP/2.0'
- 'From: <sip:[% scenarios.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'To: <sip:[% scenarios.1.responders.0.username %]@invite-callforward-use-redirection.scenarios.test>;tag=[\w-]+'
- 'CSeq: \d+ ACK'
- 'Content-Length:\s+0'
Loading…
Cancel
Save