SIP Privacy: Difference between revisions
No edit summary |
(remove page under construction) |
||
| (26 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
=== Supported Standards === | === Supported Standards === | ||
| Line 37: | Line 31: | ||
| '''SI''' | | '''SI''' | ||
| ''Screening Idicator'' (ISUP or ISDN) | | ''Screening Idicator'' (ISUP or ISDN) | ||
|- | |||
| '''{param}''' | |||
| [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|Scripting call parameters]] | |||
|} | |} | ||
==== ISUP | |||
= Script call parameter privacy mapping = | |||
== ISUP/ISDN == | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | {| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | ||
|- | |- | ||
| '''SS7 param''' | ! style="background: none repeat scroll 0% 0% rgb(200, 200, 200);"| '''SS7 param''' | ||
| CLI digits | | CLI digits | ||
| CLI APRI | | CLI APRI | ||
| Line 52: | Line 51: | ||
| GN SI | | GN SI | ||
|- | |- | ||
| '''Routing script param''' | !style="background: none repeat scroll 0% 0% rgb(200, 200, 200);" | '''Routing script param''' | ||
| {calling} | | [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{calling}]] | ||
| {calling_presentation} | | [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{calling_presentation}]] | ||
| {calling_screening} | | [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{calling_screening}]] | ||
| ''not mapped'' | | ''not mapped'' | ||
| ''not mapped'' | | ''not mapped'' | ||
| Line 61: | Line 60: | ||
|} | |} | ||
==== | The CLI APRI is mapped according to the following table. | ||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''{calling_presentation} to ISUP/ISDN''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''{calling_presentation}''' | |||
| '''CLI APRI''' | |||
|- | |||
| "not_available" | |||
| ''Address/Number not available'' | |||
|- | |||
| "restricted", "addr_restricted", "name_restricted" | |||
| ''Presentation Restricted'' | |||
|- | |||
| "unspecified", "allowed" | |||
| ''Presentation Allowed'' | |||
|} | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''ISUP/ISDN to {calling_presentation}''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''CLI APRI''' | |||
| '''{calling_presentation}''' | |||
|- | |||
| ''Address/Number not available'' | |||
| "not_available" | |||
|- | |||
| ''Presentation Restricted'' | |||
| "restricted" | |||
|- | |||
| ''Presentation Allowed'' | |||
| "allowed" | |||
|- | |||
| Other value | |||
| "unspecified" | |||
|} | |||
The | The CLI SI is mapped according to the following table. | ||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | {| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | ||
|- | |- | ||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''{calling_screening} to/from ISUP/ISDN''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''{calling_screening}''' | | '''{calling_screening}''' | ||
| '''RPID '' | | '''CLI SI''' | ||
|- | |||
| "pass" | |||
| ''User provided, verified and passed'' | |||
|- | |||
| "fail" | |||
| ''User provided, verified and failed'' | |||
|- | |||
| "no" | |||
| ''User provided, not screened/verified'' | |||
|- | |||
| "network_provided" | |||
| ''Network Provided'' | |||
|} | |||
<br/><br/> | |||
---- | |||
== SIP 'Remode-Party-ID' header == | |||
The Remote-Party-ID header field is defined as: | |||
Remote-Party-ID: "display-name" | |||
=== RPID URI === | |||
The RPID URI display-name is filled from [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{private_display}]]. <br \> | |||
The RPID URI address-spec is filled from [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{private_address}]]. | |||
=== RPID rpi-screen param === | |||
The RPID rpi-screen param is filled according to the following table. | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''{calling_screening} to SIP''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''{calling_screening}''' | |||
| '''RPID rpi-screen param''' | |||
|- | |- | ||
| "unspecified", "pass", "network_provided" | | "unspecified", "pass", "network_provided" | ||
| screen= | | screen=yes | ||
|- | |- | ||
| "fail", "no" | | "fail", "no" | ||
| screen="no" | | screen=no | ||
|} | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''SIP to {calling_screening}''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''RPID rpi-screen param''' | |||
| '''{calling_screening}''' | |||
|- | |||
| screen=yes | |||
| "pass" | |||
|- | |||
| screen=no | |||
| "no" | |||
|- | |||
| no ''screen'' param | |||
| "unspecified" | |||
|} | |} | ||
The RPID | === RPID rpi-privacy param === | ||
The RPID rpi-privacy param is filled according to the following table. | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''{calling_presentation} to SIP''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''{calling_presentation}''' | |||
| '''RPID rpi-privacy param''' | |||
|- | |||
| "unspecified", "not_available", "allowed" | |||
| privacy=off | |||
|- | |||
| "restricted" | |||
| privacy=full | |||
|- | |||
| "addr_restricted" | |||
| privacy=uri | |||
|- | |||
| "name_restricted"" | |||
| privacy=name | |||
|} | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | {| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | ||
|- | |- | ||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''SIP to {calling_presentation}''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''RPID rpi-privacy param''' | |||
| '''{calling_presentation}''' | | '''{calling_presentation}''' | ||
|- | |- | ||
| | | privacy=off | ||
| | | "allowed" | ||
|- | |- | ||
| privacy=full | |||
| "restricted" | | "restricted" | ||
|- | |- | ||
| privacy=uri | |||
| "addr_restricted" | | "addr_restricted" | ||
|- | |- | ||
| privacy=name | |||
| "name_restricted"" | | "name_restricted"" | ||
| privacy="name" | |- | ||
| no ''privacy'' param | |||
| "unspecified"" | |||
|} | |||
=== RPID rpi-pty-type param === | |||
The RPID rpi-pty-type param is harcoded to: | |||
party=calling | |||
<br/><br/> | |||
---- | |||
== SIP 'P-Asserted-Identity' and 'Privacy' headers == | |||
The P-Asserted-Identity and Privacy header field are defined as: | |||
P-Asserted-Identity: "display-name" | |||
Privacy: priv-value | |||
=== PAID URI === | |||
The PAID URI display-name is filled from [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{private_display}]]. <br \> | |||
The PAID URI address-spec is filled from [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|{private_address}]]. | |||
=== 'Privacy' header === | |||
The 'Privacy' header is filled according to the following table. | |||
{| cellpadding="5" border="1" style="width:800px;text-align:left;" class="wikitable" | |||
|- | |||
| style="background: none repeat scroll 0% 0% rgb(200, 200, 200);text-align:center;" colspan="3" | '''{calling_presentation} to SIP''' | |||
|- style="background: none repeat scroll 0% 0% rgb(239, 239, 239);" | |||
| '''{calling_presentation}''' | |||
| '''Privacy priv-value param''' | |||
|- | |||
| "unspecified", "not_available", "allowed" | |||
| none | |||
|- | |||
| "restricted", "addr_restricted", "name_restricted" | |||
| id | |||
|} | |} | ||
Latest revision as of 11:54, 17 March 2016
Supported Standards
- draft-ietf-sip-privacy-04.txt for support of Remote-Party-ID.
- RFC3323 A Privacy Mechanism for the Session Initiation Protocol (SIP)1
- RFC3325 Private Extensions to the Session Initiation Protocol (SIP) for Asserted Identity within Trusted Networks2
- ITU Q.1912.5 Interworking between SIP and BICC/ISUP
[1] Partial support. Support Section 4.1. Constructing Private Messages
[2] Partial support. Doesn't support P-Preferred-Identity.
Acronyms
| RPID | Remode-Party-ID header |
| PAID | P-Asserted-Identity header |
| CLI | Calling Party Number (ISUP or ISDN) |
| GN | Generic Number for additional calling party number (ISUP ITU) |
| APRI | Address Presentation Restricted Indicator (ISUP) or Presentation indicator (ISDN) |
| SI | Screening Idicator (ISUP or ISDN) |
| {param} | Scripting call parameters |
Script call parameter privacy mapping
ISUP/ISDN
| SS7 param | CLI digits | CLI APRI | CLI SI | GN digits | GN APRI | GN SI |
|---|---|---|---|---|---|---|
| Routing script param | {calling} | {calling_presentation} | {calling_screening} | not mapped | not mapped | not mapped |
The CLI APRI is mapped according to the following table.
| {calling_presentation} to ISUP/ISDN | ||
| {calling_presentation} | CLI APRI | |
| "not_available" | Address/Number not available | |
| "restricted", "addr_restricted", "name_restricted" | Presentation Restricted | |
| "unspecified", "allowed" | Presentation Allowed | |
| ISUP/ISDN to {calling_presentation} | ||
| CLI APRI | {calling_presentation} | |
| Address/Number not available | "not_available" | |
| Presentation Restricted | "restricted" | |
| Presentation Allowed | "allowed" | |
| Other value | "unspecified" | |
The CLI SI is mapped according to the following table.
| {calling_screening} to/from ISUP/ISDN | ||
| {calling_screening} | CLI SI | |
| "pass" | User provided, verified and passed | |
| "fail" | User provided, verified and failed | |
| "no" | User provided, not screened/verified | |
| "network_provided" | Network Provided | |
SIP 'Remode-Party-ID' header
The Remote-Party-ID header field is defined as:
Remote-Party-ID: "display-name";rpi-pty-type;rpi-privacy;rpi-screen
RPID URI
The RPID URI display-name is filled from {private_display}.
The RPID URI address-spec is filled from {private_address}.
RPID rpi-screen param
The RPID rpi-screen param is filled according to the following table.
| {calling_screening} to SIP | ||
| {calling_screening} | RPID rpi-screen param | |
| "unspecified", "pass", "network_provided" | screen=yes | |
| "fail", "no" | screen=no | |
| SIP to {calling_screening} | ||
| RPID rpi-screen param | {calling_screening} | |
| screen=yes | "pass" | |
| screen=no | "no" | |
| no screen param | "unspecified" | |
RPID rpi-privacy param
The RPID rpi-privacy param is filled according to the following table.
| {calling_presentation} to SIP | ||
| {calling_presentation} | RPID rpi-privacy param | |
| "unspecified", "not_available", "allowed" | privacy=off | |
| "restricted" | privacy=full | |
| "addr_restricted" | privacy=uri | |
| "name_restricted"" | privacy=name | |
| SIP to {calling_presentation} | ||
| RPID rpi-privacy param | {calling_presentation} | |
| privacy=off | "allowed" | |
| privacy=full | "restricted" | |
| privacy=uri | "addr_restricted" | |
| privacy=name | "name_restricted"" | |
| no privacy param | "unspecified"" | |
RPID rpi-pty-type param
The RPID rpi-pty-type param is harcoded to:
party=calling
SIP 'P-Asserted-Identity' and 'Privacy' headers
The P-Asserted-Identity and Privacy header field are defined as:
P-Asserted-Identity: "display-name"Privacy: priv-value
PAID URI
The PAID URI display-name is filled from {private_display}.
The PAID URI address-spec is filled from {private_address}.
'Privacy' header
The 'Privacy' header is filled according to the following table.
| {calling_presentation} to SIP | ||
| {calling_presentation} | Privacy priv-value param | |
| "unspecified", "not_available", "allowed" | none | |
| "restricted", "addr_restricted", "name_restricted" | id | |