You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
219 lines
8.2 KiB
219 lines
8.2 KiB
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_AUTH_HELPER:
|
|
- return|ROUTE_AUTH_HELPER:
|
|
- start|ROUTE_ADD_CALLINFO_REPLY:
|
|
- start|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
|
|
- return|ROUTE_ADD_CALLINFO_CALLER_PRIMARY:
|
|
- return|ROUTE_ADD_CALLINFO_REPLY:
|
|
- return|ROUTE_AUTH:
|
|
- return|ROUTE_FIND_CALLER:
|
|
- start|ROUTE_LOAD_CALLER_PREF:
|
|
- start|ROUTE_CLEAR_CALLER_PREF:
|
|
- return|ROUTE_CLEAR_CALLER_PREF:
|
|
- start|ROUTE_CHECK_UA:
|
|
- return|ROUTE_CHECK_UA:
|
|
- start|ROUTE_LOAD_CALLER_CONTRACT_PREF:
|
|
- return|ROUTE_LOAD_CALLER_CONTRACT_PREF:
|
|
- return|ROUTE_LOAD_CALLER_PREF:
|
|
- start|ROUTE_DLG_MANAGE:
|
|
- return|ROUTE_DLG_MANAGE:
|
|
- start|ROUTE_APPLY_HEADER_RULES:
|
|
- return|ROUTE_APPLY_HEADER_RULES:
|
|
- 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_CHECK_USERPROV_CLI:
|
|
- start|ROUTE_CHECK_CLI_ALLOWED:
|
|
- return|ROUTE_CHECK_CLI_ALLOWED:
|
|
- return|ROUTE_CHECK_USERPROV_CLI:
|
|
- start|ROUTE_FIND_CALLEE:
|
|
- start|ROUTE_DETECT_LOOP:
|
|
- return|ROUTE_DETECT_LOOP:
|
|
- 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_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_PRE_ANNOUNCE:
|
|
- start|ROUTE_LOAD_APPSRV:
|
|
- start|ROUTE_CNT_DLG_CHECK:
|
|
- return|ROUTE_CNT_DLG_CHECK:
|
|
- return|ROUTE_LOAD_APPSRV:
|
|
- start|ROUTE_OUTBOUND:
|
|
- start|ROUTE_SET_CALLER_DIALOG:
|
|
- start|ROUTE_CNT_DLG_CHECK:
|
|
- return|ROUTE_CNT_DLG_CHECK:
|
|
- start|ROUTE_SET_CALLER_DIALOG_TOTAL:
|
|
- return|ROUTE_SET_CALLER_DIALOG_TOTAL:
|
|
- start|ROUTE_SET_CALLER_DIALOG_BASE:
|
|
- return|ROUTE_SET_CALLER_DIALOG_BASE:
|
|
- return|ROUTE_SET_CALLER_DIALOG:
|
|
- start|BRANCH_ROUTE_NO_SBC:
|
|
- start|ROUTE_BRANCH_ACC_RTP:
|
|
- return|ROUTE_BRANCH_ACC_RTP:
|
|
$var(rtpp_flags): "record-call"
|
|
- start|ROUTE_SET_BRANCH_HDRS:
|
|
- start|ROUTE_PREPARE_UA:
|
|
- return|ROUTE_PREPARE_UA:
|
|
- return|ROUTE_SET_BRANCH_HDRS:
|
|
- start|ROUTE_FILTER_PRACK:
|
|
- return|ROUTE_FILTER_PRACK:
|
|
- 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_NO_SBC:
|
|
- start|DEFAULT_SEND:
|
|
- exit|DEFAULT_SEND:
|
|
- start|ROUTE_EXIT:
|
|
- start|ROUTE_RUNTIME:
|
|
- return|ROUTE_RUNTIME:
|
|
- exit|ROUTE_EXIT:
|
|
sip_in:
|
|
- 'INVITE sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test SIP/2.0'
|
|
- 'From: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;tag=[\w-]+'
|
|
- 'To: <sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test>'
|
|
- 'CSeq: \d+ INVITE'
|
|
- 'Contact: <sip:[% scenarios.3.username %]@[% scenarios.3.ip %]:[% scenarios.3.port %];alias=[^;]+>'
|
|
- 'Proxy-Authorization: Digest username="[% scenarios.1.responders.0.username %]",realm="invite-record-call.scenarios.test",uri="sip:[% server_ip %]:5060",nonce="[^"]+",response="[^"]+",algorithm=MD5'
|
|
- 'Content-Type: application/sdp'
|
|
- 'Content-Length:\s+\d+'
|
|
- 'P-NGCP-Src-Ip: [% scenarios.0.ip %]'
|
|
- 'P-NGCP-Src-Port: [% scenarios.3.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.3.mport %] RTP/AVP 8'
|
|
- 'a=rtpmap:8 PCMA/8000'
|
|
- 'a=ptime:50'
|
|
sip_out:
|
|
- [
|
|
'SIP/2.0 100 Trying',
|
|
'From: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test>',
|
|
'CSeq: \d+ INVITE',
|
|
'P-Out-Socket: udp:[% server_ip %]:5060',
|
|
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
|
|
'P-NGCP-Auth-UA: <null>',
|
|
'Server: Sipwise NGCP Proxy',
|
|
'Content-Length:\s+0',
|
|
]
|
|
- [
|
|
'SIP/2.0 101 Connecting',
|
|
'From: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test>',
|
|
'CSeq: \d+ INVITE',
|
|
'P-Out-Socket: udp:[% server_ip %]:5060',
|
|
'P-NGCP-Auth-IP: [% scenarios.0.ip %]',
|
|
'P-NGCP-Auth-UA: <null>',
|
|
'P-NGCP-Authorization: testuser1004@invite-record-call.scenarios.test',
|
|
'P-NGCP-Authorized: 1',
|
|
'P-NGCP-Caller-Info: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;ip=[% scenarios.3.ip %];port=[% scenarios.3.port %];primary=[% invite_record_call_scenarios_test.testuser1004.phone_number %]',
|
|
'P-Caller-UUID: [% invite_record_call_scenarios_test.testuser1004.uuid %]',
|
|
'Server: Sipwise NGCP Proxy',
|
|
'Content-Length:\s+0',
|
|
]
|
|
- [
|
|
'INVITE sip:pre_announce@app.local SIP/2.0',
|
|
'From: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test>',
|
|
'CSeq: \d+ INVITE',
|
|
'Contact: <sip:[% scenarios.3.username %]@[% scenarios.3.ip %]:[% scenarios.3.port %];alias=[^;]+>',
|
|
'Content-Type: application/sdp',
|
|
'Content-Length:\s+\d+',
|
|
'P-LB-Uptime:\s+\d+',
|
|
'P-App-Param: force_early_announce=0;audio_id=[0-9]*;audio2_id=[0-9]*;audio3_id=[0-9]*;reply_180=no',
|
|
'P-App-Name: pre_announce',
|
|
'P-Caller-UUID: [% invite_record_call_scenarios_test.testuser1004.uuid %]',
|
|
'P-Callee-UUID: [% invite_record_call_scenarios_test.testuser1006.uuid %]',
|
|
'P-NGCP-Caller-Info: <sip:[% scenarios.1.responders.0.username %]@invite-record-call.scenarios.test>;ip=[% scenarios.3.ip %];port=[% scenarios.3.port %];primary=[% invite_record_call_scenarios_test.testuser1004.phone_number %]',
|
|
'P-NGCP-Callee-Info: <sip:[% scenarios.3.responders.0.username %]@invite-record-call.scenarios.test>;ip=127.0.0.1;port=5080;primary=[% invite_record_call_scenarios_test.testuser1006.phone_number %]',
|
|
'v=0',
|
|
's=-',
|
|
't=0 0',
|
|
'm=audio \d+ RTP/AVP 8 96',
|
|
'a=rtpmap:8 PCMA/8000',
|
|
'a=rtpmap:96 telephone-event/8000',
|
|
'a=fmtp:96 0-15',
|
|
'a=sendrecv',
|
|
'a=rtcp:\d+',
|
|
'a=ptime:50',
|
|
]
|