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.
272 lines
11 KiB
272 lines
11 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:
|
|
- start|ROUTE_DLG_MANAGE:
|
|
- return|ROUTE_DLG_MANAGE:
|
|
- 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_TOTAL:
|
|
- return|ROUTE_SET_CALLEE_DIALOG_TOTAL:
|
|
- start|ROUTE_SET_CALLEE_DIALOG_ACTIVE:
|
|
- return|ROUTE_SET_CALLEE_DIALOG_ACTIVE:
|
|
- 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_PLAY_ANNOUNCE_BEFORE_CF:
|
|
- return|ROUTE_PLAY_ANNOUNCE_BEFORE_CF:
|
|
- start|ROUTE_ACC_CF:
|
|
- 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:
|
|
- return|ROUTE_ACC_CF:
|
|
- start|ROUTE_EXECUTE_CF_LOOP:
|
|
- 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_ACTIVE:
|
|
- return|ROUTE_SET_CALLER_DIALOG_ACTIVE:
|
|
- return|ROUTE_SET_CALLER_DIALOG:
|
|
- start|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
|
|
- return|ROUTE_SET_ACC_CALLER_CALL_COUNTERS:
|
|
- start|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
|
|
- return|ROUTE_SET_ACC_CALLEE_CALL_COUNTERS:
|
|
- start|ROUTE_ADD_AOC_HEADER:
|
|
- return|ROUTE_ADD_AOC_HEADER:
|
|
- start|BRANCH_ROUTE_FWD_LOOP:
|
|
- start|ROUTE_SET_HIH_CF:
|
|
- return|ROUTE_SET_HIH_CF:
|
|
- start|ROUTE_APPEND_CF_HDRS:
|
|
- start|ROUTE_ADD_DEVALIAS_HEADERS:
|
|
- return|ROUTE_ADD_DEVALIAS_HEADERS:
|
|
- return|ROUTE_APPEND_CF_HDRS:
|
|
- 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_FWD_LOOP:
|
|
- start|DEFAULT_SEND:
|
|
- exit|DEFAULT_SEND:
|
|
- start|ROUTE_EXIT:
|
|
- start|ROUTE_RUNTIME:
|
|
- return|ROUTE_RUNTIME:
|
|
- exit|ROUTE_EXIT:
|
|
sip_in:
|
|
- 'INVITE sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.test SIP/2.0'
|
|
- 'Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=[^;]+;ngcplb=yes;nat=yes;socket=udp:[% server_ip %]:5060>'
|
|
- 'Record-Route: <sip:[% server_ip %];r2=on;lr=on;ftag=[^;]+;ngcplb=yes;nat=yes;socket=udp:[% server_ip %]:5060>'
|
|
- 'From: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;tag=[\w-]+'
|
|
- 'To: <sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.test>'
|
|
- 'CSeq: \d+ INVITE'
|
|
- 'Contact: <sip:[% scenarios.1.username %]@[% scenarios.1.ip %]:[% scenarios.1.port %];alias=[^;]+>'
|
|
- 'Proxy-Authorization: Digest username="[% scenarios.1.username %]",realm="invite-manager.scenarios-pbx.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.1.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.1.mport %] RTP/AVP 8'
|
|
- 'a=rtpmap:8 PCMA/8000'
|
|
- 'a=ptime:50'
|
|
sip_out:
|
|
- [
|
|
'SIP/2.0 100 Trying',
|
|
'From: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.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.username %]@invite-manager.scenarios-pbx.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.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: testuser1003@invite-manager.scenarios-pbx.test',
|
|
'P-NGCP-Authorized: 1',
|
|
'P-NGCP-Caller-Info: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;ip=[% scenarios.1.ip %];port=[% scenarios.1.port %];primary=[% invite_manager_scenarios_pbx_test.testuser1003.pbx_phone_number %]',
|
|
'P-Caller-UUID: [% invite_manager_scenarios_pbx_test.testuser1003.uuid %]',
|
|
'Server: Sipwise NGCP Proxy',
|
|
'Content-Length:\s+0',
|
|
]
|
|
- [
|
|
'PUBLISH sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test SIP/2.0',
|
|
'To: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>',
|
|
'From: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;tag=[\w-]+',
|
|
'CSeq: \d+ PUBLISH',
|
|
'Content-Length:\s+\d+',
|
|
'User-Agent: Sipwise NGCP Proxy',
|
|
'Event: dialog',
|
|
'Content-Type: application/dialog-info\+xml',
|
|
]
|
|
- [
|
|
'INVITE sip:[% invite_manager_scenarios_pbx_test.secretary.pbx_phone_number %]@invite-manager.scenarios-pbx.test SIP/2.0',
|
|
'Record-Route: <sip:127.0.0.1:5062;lr=on;ftag=[^;]+;did=[^;]+>',
|
|
'Record-Route: <sip:127.0.0.1;r2=on;lr=on;ftag=[^;]+;ngcplb=yes;nat=yes;socket=udp:[% server_ip %]:5060>',
|
|
'Record-Route: <sip:[% server_ip %];r2=on;lr=on;ftag=[^;]+;ngcplb=yes;nat=yes;socket=udp:[% server_ip %]:5060>',
|
|
'From: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;tag=[\w-]+',
|
|
'To: <sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.test>',
|
|
'CSeq: \d+ INVITE',
|
|
'Contact: <sip:[% scenarios.1.username %]@[% scenarios.1.ip %]:[% scenarios.1.port %];alias=[^;]+>',
|
|
'Proxy-Authorization: Digest username="[% scenarios.1.username %]",realm="invite-manager.scenarios-pbx.test",uri="sip:[% server_ip %]:5060",nonce="[^"]+",response="[^"]+",algorithm=MD5',
|
|
'Content-Type: application/sdp',
|
|
'Content-Length:\s+\d+',
|
|
'P-LB-Uptime:\s+\d+',
|
|
'P-HIH-Cause: 302',
|
|
'P-App-Param: ;profile=ngcp_cf',
|
|
'P-App-Name: sbc',
|
|
'P-D-Uri: sip:127.0.0.1:5062',
|
|
'P-NGCP-Sems-Instance: sbc',
|
|
'P-Caller-UUID: [% invite_manager_scenarios_pbx_test.manager.uuid %]',
|
|
'P-MS-Forward-Active: 1',
|
|
'P-First-Caller-UPN: [% invite_manager_scenarios_pbx_test.manager.phone_number %]1003',
|
|
'P-First-Caller-NPN: [% invite_manager_scenarios_pbx_test.manager.phone_number %]1003',
|
|
'P-First-Caller-UPD: invite-manager.scenarios-pbx.test',
|
|
'P-First-Caller-NPD: invite-manager.scenarios-pbx.test',
|
|
'P-Acc-Caller-User: manager',
|
|
'P-Acc-Caller-Domain: invite-manager.scenarios-pbx.test',
|
|
'P-Acc-State: cfu',
|
|
'P-From-Peer: 0',
|
|
'P-First-V46-RTP: auto',
|
|
'P-First-RTP: ice_strip_candidates',
|
|
'P-First-RTP-Transport: transparent',
|
|
'P-First-Caller-CLIR: 0',
|
|
'P-CF-Depth: 1',
|
|
'P-First-Caller-UA-Mode: strip',
|
|
'P-First-Caller-Cloud-PBX: [% invite_manager_customerpbx_test.id %]',
|
|
'P-First-Caller-PBX-Ext: [% invite_manager_scenarios_pbx_test.testuser1003.pbx_extension %]',
|
|
'P-Callee-Ext-Subs-ID: ',
|
|
'P-Callee-Ext-Contr-ID: ',
|
|
'P-Callee-Account-ID: [% invite_manager_customerpbx_test.id %]',
|
|
'P-Orig-Callee-Dialed: manager',
|
|
'P-Prev-Caller-UUID: [% invite_manager_scenarios_pbx_test.testuser1003.uuid %]',
|
|
'P-First-Caller-RTP-Interface: ext',
|
|
'P-First-Caller-RTP-Interface-Source: default',
|
|
'P-NGCP-Presence-Caller: sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test',
|
|
'P-NGCP-Alias-DevId: 0',
|
|
'P-NGCP-Caller-Info: <sip:[% scenarios.1.username %]@invite-manager.scenarios-pbx.test>;ip=[% scenarios.1.ip %];port=[% scenarios.1.port %];primary=[% invite_manager_scenarios_pbx_test.testuser1003.pbx_phone_number %]',
|
|
'P-NGCP-Forward-Info: <sip:[% scenarios.0.responders.0.username %]@invite-manager.scenarios-pbx.test>;ip=127.0.0.1;port=5080;primary=[% invite_manager_scenarios_pbx_test.manager.phone_number %]',
|
|
'P-NGCP-Callee-Info: <sip:[% invite_manager_scenarios_pbx_test.secretary.pbx_phone_number %]@invite-manager.scenarios-pbx.test>;ip=127.0.0.1;port=5080',
|
|
'v=0',
|
|
'o=user1 \d+ \d+ IN IP4 [% scenarios.0.ip %]',
|
|
's=-',
|
|
'c=IN IP4 [% scenarios.0.ip %]',
|
|
't=0 0',
|
|
'm=audio [% scenarios.1.mport %] RTP/AVP 8',
|
|
'a=rtpmap:8 PCMA/8000',
|
|
'a=ptime:50',
|
|
]
|