1 Introduction
This document describes the SIP Trunking Application Server (ST AS) Number Normalization function and how it uses the Number Normalization Common Component to provide Number Normalization.
1.1 Prerequisites
It is assumed that the user of this document is familiar with the Operation and Maintenance (O&M) area, in general.
1.1.1 Documents
Before starting any procedure in this document, ensure that the following documents are available:
1.1.2 Conditions
The following condition must apply:
- An Ericsson Command-Line Interface (ECLI) session in Exec mode is in progress.
2 Overview
The ST Number Normalization function uses the Number Normalization Common Component to provide normalization (conversion to E.164) of a SIP or tel URI as received in the SIP message, for service logic procedures, and routing.
The ST Number Normalization Managed Object (MO) is defined by the MtasStNumNorm MO, and its attributes, mtasStNumNormPcContent, and mtasStNumNormPcRemoval. These attributes control what information is passed to the Number Normalization Common Component for normalizing the URI. The parameters passed to the Number Normalization Common Component are a URI and a context.
The following sections describe URIs, the different context types, normalization data, and how terminals address sent numbers.
3 URIs
This section details tel and SIP URIs.
3.1 Tel URI
A tel URI is either in a global number format or a local number format.
3.1.1 Global Tel URI
The tel URI for global numbers takes the following form:
tel:+<global-number-digits>; [;uri-Parameters], where <global-number-digits> is the telephone subscriber.
Globally unique numbers are unambiguous everywhere in the world and identified by a leading "+" character. The global number digits are composed of the Country Code (CC) and the National Significant Number (NSN). In a global tel URI, globally unique numbers are identified by the leading "+" character.
For example:
tel:+12015550123
3.1.2 Local Tel URI
The format of the local tel URI takes the following form:
tel:<local-number-digits>;<phone-context> [;uri-Parameters][headers];, where the <local-number-digits>;<phone-context> uniquely identifies the telephone-subscriber.
Other attributes not used are left out for clarity.
Local numbers are unique only within a certain geographical area or a certain part of the telephone network and thus the URI always includes a <phone-context> parameter that uniquely identifies the scope of their validity. A context consisting of the initial digits of a global number does not imply that adding these to the local number generates a valid E.164.
For example: tel:3568046;phone-context=+44121
This URI points to a phone number in Birmingham in the UK.
3.2 SIP URIs
The general form of a SIP URI is as follows:
sip:<user:password>@<host:port>;[;uri-parameters][headers], where <user:password> is referred to as user-info.
The following is a description of a SIP URI:
- user: The identifier of a particular resource at the host being addressed.
- password: A password associated with the user. While the SIP and the SIP URI syntax allow this field to be present, it is rarely used because of security issues.
- host: The host part contains either a fully qualified domain name or a numeric IPv4 or IPv6 address.
- port: The port number where the request is to be sent.
- Uri-parameters: Parameters affecting a request constructed from the URI. Uri-parameters are added after the port component. The URI parameter of particular interest to the Number Normalization is the URI parameter user=phone.
- headers: Not used.
3.2.1 Dialed Digits and User-Info
A User Agent (UA) programmed with a dialing plan and an appropriate digit map can produce the following SIP URI when 5551234 is dialed:
sip:5551234@example.net; user=phone
Some legacy terminals omit the mandatory user=phone parameter. The normalization function can be configured to execute a correction by setting the numNormProfileUserEqPhoneEr and including the domain of SIP URIs to be corrected in numNormProfileDomNameEr.
3.2.2 Embedded Tel URI
The format of the embedded tel URI takes the following form:
sip:<embedded tel URI>@<host:port>[;uri-Parameters][headers]
A UA can produce a SIP URI with the <global-number-digits> or <local-number-digits>;<phone-context> parts of a tel URI being embedded into the user-info part of the SIP URI, between the "sip:" and the "@".
When a UA produces such a SIP URI, the entire telephone subscriber of the tel URI, including any parameters, is placed in the user-info part of the SIP URI, and a parameter user=phone or user=dialstring is added. Absence of the user=phone parameter is handled as described in the following section, see Section 5.4.
Embedded tel URIs are shown in the following examples:
- tel:+12125551234 can be embedded
into the following SIP URI:
sip:+12125551234@example.net;user=phone
- tel:5551234;phone-context=nyc1.example.net can be embedded into the following SIP URI:
sip:5551234;phone-context=nyc1.example.net@example.net;user=phone
- tel:5551234;phone-context=+1212 can be embedded into the following SIP URI:
sip:5551234;phone-context=+1212@example.net;user=phone
4 UA and Produced URIs
The SIP and tel URIs generated by the UA depend on if the UA has digit map capabilities and if a local dial plan has been configured.
4.1 Local, National, and International SIP and Tel URIs
This section describes local, national, and international SIP and tel URIs.
4.1.1 Local Number
A local number is a number belonging to the same local area.
The following shows an example of basic data for a local dial plan:
|
Data |
Dial plan (context) |
|
International Country Code (CC) |
+44 (UK) |
|
Area Code (AC) |
121 (Birmingham) |
|
+441215551235 resides in the operator.co.uk domain or service provider. The UA has a context of Birmingham, defined by the birmingham.operator.co.uk URL. | |
|
+441215551235 |
When a local number and a Subscriber Number (SN) 5551234 is dialed, any of the following URIs can be produced:
- tel:+441215551234
- sip:+441215551234@operator.co.uk;user=phone
- sip:5551234@operator.co.uk;user=phone
- tel:5551234;phone-context=birmingham.operator.co.uk
- sip:5551234;phone-
- context=birmingham.operator.co.uk@operator.co.uk;user=phone
- tel:5551234;phone-context=+44121
- sip:5551234;phone-context=+44121@operator.co.uk;user=phone
All these tel URIs are normalized to the following:
sip:+441215551234@operator.co.uk;user=phone
4.1.2 National Number
A national number is a number within the same country.
The following shows an example of basic data for a national dial plan:
|
Data |
Dial plan (context) |
|
International CC |
+44 (UK) |
|
121 (Birmingham) | |
|
+441215551235 resides in the operator.co.uk domain or service provider. The UA has a context of Birmingham, defined by the birmingham.operator.co.uk URL. | |
|
+441215551235 |
Any of the following URIs can be produced when the national number 02412340461 is dialed:
- tel:+442412340461
- sip:+442412340461@ope.co.uk;user=phone
- sip:02412340461@operator.co.uk;user=phone
- tel:02412340461;phone-context=birmingham.operator.co.uk
- sip:02412340461;phone-context=
- birmingham.operator.co.uk@operator.co.uk;user=phone
- tel:02412340461;phone-context=+44121
- sip:02412340461;phone-
- context=+44121@operator.co.uk;user=phone
All these tel URIs are normalized by the ST Number Normalization function to the following:
tel:+442412340461
All these SIP URIs are normalized by the ST Number Normalization function to the following:
sip:+442412340461@operator.co.uk;user=phone
4.1.3 International Number
An international number is a number that resides outside the current country.
The following shows an example of basic data for an international dial plan:
|
Data |
Dial plan (context) |
|
International CC |
+44 (UK) |
|
121 (Birmingham) | |
|
The user dials an AOR +46812345678 of a user in Stockholm, with AC = 8, Sweden CC = 46 by dialing 0046812345678. | |
|
+441215551235 |
Any of the following URIs could be produced when the international number +46812345678 is dialed:
- tel:+46812345678
- sip:+46812345678@operator.co.uk;user=phone
- sip:0046812345678@operator.co.uk;user=phone
- tel:0046812345678;phone-context=birmingham.operator.co.uk
- sip:0046812345678;phone-context= birmingham.operator.co.uk@operator.co.uk;user=phone
- tel:0046812345678;phone-context=+44121
- sip:0046812345678;phone-context=+44121@operator.co.uk;user=phone
All these tel URIs are normalized by the ST Number Normalization function to the following:
tel:+46812345678
All these tel URIs are normalized by the ST Number Normalization function to the following:
sip:+46812345678@operator.co.uk;user=phone
4.1.4 National Significant Number
The NSN is a number that is only significant within a country.
The Number Normalization function returns the URI with a <phone-context> equal to a CC.
The following shows an example of basic data for an NSN dial plan:
|
Data |
Dial plan (context) |
|
International CC |
+44 (UK) |
|
121 (Birmingham) | |
|
+441215551235 resides in the operator.co.uk domain or service provider. The UA has a context of Birmingham, defined by the birmingham.operator.co.uk URL. | |
|
+441215551235 |
Any of the following URIs could be produced when the NSN number 100 is dialed:
- tel:+44100 sip:+44100@operator.co.uk;user=phone
- sip:0044100@operator.co.uk;user=phone
- tel:0044100;phone-context=birmingham.operator.co.uk
- tel:100
- sip:100@operator.co.uk
- tel:100;phone-context=birmingham.operator.co.uk
- sip:100; phone-context=birmingham.operator.co.uk@operator.co.uk;user=phone
- tel:100;phone-context=+44121
- sip:100;phone-context=+44121@operator.co.uk;user=phone
- tel:100; phone-context=+44
- sip:100; phone-context=+44@operator.co.uk;user=phone
- tel:100; phone-context=co.uk
- sip:100; phone-context=co.uk@operator.co.uk;user=phone
All these tel URIs are normalized by the ST Number Normalization function to the following:
tel:+44100 or
tel:100; phone-context=+CC or NSN domain, for example, tel:100; phone-context=+44
All these SIP URIs are normalized by the ST Number Normalization function to the following:
sip:+44100@operator.co.uk;user=phone or
sip:100;phone-context=+CC or NSN
domain@operator.co.uk;user=phone, for
example, sip:100; phone-context=+44@operator.co.uk;user=phone
4.1.5 Operator Service Number
The Operator Service Number (OSN) is a number with significance within an operator network. The Number Normalization function returns the URI with a <phone-context> equal to the OSN context. The OSN context can be set to an OSN domain name or a CC. If a digit map and a local dial plan are supported, the UA is configurable to generate any of the following URIs when the OSN number 133 is dialed.
The following shows an example of basic data for an OSN dial plan:
|
Data |
Dial plan (context) |
|
International CC |
+44 (UK) |
|
121 (Birmingham) | |
|
+441215551235 resides in the operator.co.uk domain or service provider. The UA has a context of Birmingham, defined by the birmingham.operator.co.uk URL. | |
|
+441215551235 |
Any of the following URIs could be produced when the OSN number 133 is dialed:
- tel:+44133 sip:+44133@operator.co.uk;user=phone
- sip:0044133@operator.co.uk;user=phone
- tel:0044133;phone-context=birmingham.operator.co.uk
- tel:133
- sip:133@operator.co.uk;user=phone
- tel:133;phone-context=birmingham.operator.co.uk
- sip:133;phone-
- context=birmingham.operator.co.uk@operator.co.uk;user=phone
- tel:133;phone-context=+44121
- sip:133;phone-context=+44121@operator.co.uk;user=phone
- tel:133; phone-context=+44
- sip:133; phone-context=+44@operator.co.uk;user=phone
- tel:133; phone-context=co.uk
- sip:133; phone-context=co.uk@operator.co.uk;user=phone
All these tel URIs are normalized by the ST Number Normalization function to the following:
tel:+44133 or tel:133;phone-context= OSN domain name, for example, tel:133;phone-context=operator.co.uk
All these SIP URIs are normalized by the ST Number Normalization function to the following:
sip:+44133@operator.co.uk;user=phone or sip:133;phone-context=OSN domain name@operator.co.uk;user=phone, for example, sip:133;phone-context=operator.co.uk@operator.co.uk;user=phone
5 Contexts
When a non-international number is dialed, there is always some context in which that number is to be interpreted. The following three types of contexts are supported:
- Domain name contexts
- Global number context
- Asserted-identity context
5.1 Domain Name Context
A domain name context can provide a hierarchical structure of contexts. The domain name does not necessarily resolve to a host address.
Geographical domain name context examples are as follows:
- stockholm.se
- dallas.tx.us
Other domain name context examples are as follows:
- ericsson.com
- mainoffice.company.com
5.2 Global Number Phone Context
A global number context can be the leading part of a full international number.
Global phone number context examples are as follows:
- +468 (partial number = Stockholm)
- +1 (partial number = USA)
The "+" is mandatory for a global phone context. If the "+" is not present, then the context is treated as a domain name context.
5.3 Asserted-Identity Context
User phone context can be derived from the following Asserted-Identities:
- Asserted-Identity = P-Asserted-Identity:
The SIP Asserted Identity P-Asserted-Identity header field. The Number Normalization function uses the P-Asserted-Identity context if input URI context is not present in the input URI passed to the Number Normalization.
- Asserted-Identity = <userIdentity>:
The CAI3G input arrives at XDMS CAI3G Agent with a <userIdentity> element on CAI3G.
5.4 Context based User=phone Error Correction
During the input validation, the host part of the SIP URI is checked against a list of domain names configured by the numNormProfileDomNameEr parameter. User equals phone error correction is done against these domain names, that is, the Number Normalization function inserts a missing user=phone parameter in the Input-URI when all conditions are fulfilled:
- The user part of the Input-URI contains a number.
- The error correction feature is enabled in the numNormProfileUserEqPhoneEr parameter.
- The host part of the Input-URI matches an entry in the numNormProfileDomNameEr parameter.
With this correction applied, the determination of the URI changes from name to number.
5.5 Context
The context is used for the following purposes in the Number Normalization:
- user=phone error correction:
Finding the context entry to apply user=phone error correction.
- Profile resolution:
Finding context entry to decide which profile to use.
- Normalize context resolution:
Finding a context entry to normalize the URI. When a phone context is found, a corresponding configured context must be found to determine how the number is normalized. Because each type of context has a different hierarchical structure, the context resolution procedure is different for each type of context.
5.5.1 User=Phone Error Correction Context
The context is used to check the contexts configured for known originating sources that have user=phone missing in the SIP URI. This is done to correct the user=phone missing parameter, see Table 1.
|
Configured user=phone Error Contexts |
|---|
|
operator.stockholm.se |
|
+468 |
|
someplace.somewhere.com |
Example 1 User=Phone Error Configuration
URI sip:02412340461;phone-context=+468@operator.stockholm.se
When the user=phone parameter is missing, the received URI context operator.stockholm.se is checked against the preconfigured contexts shown in Table 1. For the URI operator.stockholm.se context, the output SIP URI has the missing user=phone parameter added to it.
5.5.2 Profile Resolution
The Top-Level Domain Country Code (TLDcc) or the CC of the context is used to check the contexts configured against a profile, as shown in Table 2, Table 3, Example 2, Example 3, Example 4, and Example 5. This is done to select the correct profile.
|
Configured Profile 1 Context |
|---|
|
se |
|
+46 |
|
Configured Profile 2 Context |
|---|
|
uk |
|
+44 |
5.5.3 Normalize Context Resolution
To normalize context resolution:
- If the domain is present in a list of configured contexts, that context is used and the resolution stops.
- If there is a subdomain present, it is deleted, and step 1 is repeated.
- If there is no subdomain present, the resolution stops.
In the following examples, the contexts shown in Table 4 are configured.
|
Configured Domain Name Context |
|---|
|
se |
|
stockholm.se |
|
operatorX.com |
Example 6 Domain Name Configuration
'Domain Name Context = proxy.stockholm.se'; 'Context selected = stockholm.se'
Example 7 Domain Name Configuration
'Domain Name Context = operatorY.com'; 'Context selected = none'
Example 8 Domain Name Configuration
'Domain Name Context = users.operatorX.com'; 'Context selected = operatorX.com'
5.5.4 Reduce Context Resolution
To reduce context resolution:
- Delete all visual separators.
- If the context is in the list of configured contexts, use that context and resolution stops.
- Delete the most significant left part of the domain name context.
- If the resulting context is in the list of configured contexts, use that context and resolution stops.
- Repeat step 4, deleting the most significant left part of the domain name context until either a context is found, or there are no digits left in the context.
In Example 9, the context shown in Table 5 is configured.
|
Configured Phone Context |
|---|
|
operator.stockholm.se |
Example 9 Global Phone Configuration
'Global Phone Context = host1.operator.stockholm.se' ; 'Context selected = operator.stockholm.se'
5.6 Initial URI Error Correction
This correction is performed at the very beginning of URI processing and may be enabled independently of Context based User=phone Error Correction (see Section 5.4 Context based User=phone Error Correction and Section 5.5.1 User=Phone Error Correction Context) and Context based Number Normalization. If URI error correction is enabled by the mtasStNumNormApplyUriCorrection attribute set to 1, the following corrections are applied:
- "user=phone" parameter is added if it is missing in the SIP embedded Tel URI and the user part of the Input-URI contains a number.
- "phone-context" parameter is added if it is missing in the SIP embedded Tel URI or Tel URI that contains a local number. Value of inserted "phone-context" parameter is controlled by mtasStNumNormPcContent attribute. If set to 0, the domain name associated with the default IMPU of the served user is used. If set to 1, the user provisioned country code and area code is used.
- superfluous "phone-context" parameter is removed if URI contains a global number.
Initial URI error correction is executed before Context based user=phone Error Correction and thus it renders the latter ineffective or unnecessary if executed.
6 Normalization Data
When all the Number Normalization data is set, the table sync parameter must be set to TRUE. The cashed data is then updated and the table sync set to FALSE.
It is not allowed to set the table sync parameter to TRUE more frequently than every 15 seconds.
6.1 Configured Profile
The data that is configured for profile "sweden" is shown in Table 6.
|
Profile Name: numNormProfileName |
Profile Context: numNormProfileContext |
|---|---|
|
sweden |
se |
|
+46 |
The data that is configured for profile "United Kingdom" is shown in Table 7.
|
Profile Name: numNormProfileName |
Profile Context: numNormProfileContext |
|---|---|
|
United Kingdom |
uk |
|
+44 |
6.1.1 Profile User=Phone Configured Data
The data that is configured for profile "sweden" is shown in Table 8.
|
User=Phone Error: numNormProfileUserEqPhoneEr |
Configured User=Phone Error Contexts: numNormProfileDomNameEr |
numNormProfileWarningText |
|---|---|---|
|
1 (TRUE) |
0:operator.stockholm.se |
Number input not valid. |
|
1:+468 | ||
|
2:someplace.somewhere.se |
The data that is configured for profile "United Kingdom" is shown in Table 9.
|
User=Phone Error: numNormProfileUserEqPhoneEr |
Configured User=Phone Error Contexts: numNormProfileDomNameEr |
numNormProfileWarningText |
|---|---|---|
|
1 (TRUE) |
0:redding.operator.co.uk |
Number input not valid. |
|
1:+44141 | ||
|
2:someplace.somewhere.co.uk |
6.2 Algorithm Data
Each configured context used for normalizing the URI has the following data associated with it:
The substitution regular expressions, set of OSN numbers, and set of NSN numbers are associated with the context through indexing. The data associated with the contexts used for normalizing a URI is detailed in Table 10 and Table 11. The Substitution data is detailed in Table 12 and Table 13. The OSN and NSN data is detailed in Table 14 and Table 15.
|
Configured Context: numNormContextRule |
OSN Data Index: numNormContextOsnIndex |
NSN Data Index: numNormContextNsnIndex |
AC: numNormContextSubAreaCode |
Substitution Expression Index: numNormContextSubRulesIndex |
|
+46 |
osn_operator |
nsn_Sweden |
8 |
Sub_Index2 |
|
+468 |
osn_operator |
nsn_Sweden |
8 |
Sub_Index2 |
|
stockholm.se |
osn_operator |
nsn_Sweden |
8 |
Sub_Index2 |
|
operator.stockholm.se |
osn_operator |
nsn_Sweden |
8 |
Sub_Index2 |
|
gothenburg.se |
osn_operator |
nsn_Sweden |
3 |
Sub_Index2 |
|
se |
osn_operator |
nsn_Sweden |
8 |
|
Configured Context: numNormContextRule |
OSN Data Index: numNormContextOsnIndex |
NSN Data Index: numNormContextNsnIndex |
AC: numNormContextSubAreaCode |
Substitution Expression Index: numNormContextSubRulesIndex |
|---|---|---|---|---|
|
+44 |
osn__UK_operator |
nsn_UK |
Sub_Index1 | |
|
+44121 |
osn__UK_operator |
nsn_UK |
121 |
Sub_Index1 |
|
co.uk |
osn__UK_operator |
nsn_UK |
Sub_Index1 | |
|
birmingham.operator.co.uk |
osn__UK_operator |
nsn_UK |
121 |
Sub_Index1 |
|
coventry.operator.co.uk |
osn__UK_operator |
nsn_UK |
24 |
|
Index: numNormSubstitutionRuleIndex |
Order |
Substitution Expression |
|---|---|---|
|
Sub_Index1 |
0 |
0:/^00(.*)$/+\1/:TRUE |
|
1 |
1:/^0(.*)$/+44\1/:TRUE | |
|
2 |
2:/^(.*)$/+44$AC\1/:TRUE |
|
Index: numNormSubstitutionRuleIndex |
Order |
Substitution Expression |
|---|---|---|
|
Sub_Index2 |
0 |
0:/^00(.*)$/+\1/:TRUE |
|
1 |
1:/^0(.*)$/+46\1/:TRUE | |
|
2 |
2:/^(.*)$/+46$AC\1/:TRUE |
|
OSN Index: numNormOsnDataIndex |
OSN Context 0: numNormOsnDataContextAndNumbers |
OSN Number 1: numNormOsnDataContextAndNumbers |
OSN Number 2: numNormOsnDataContextAndNumbers |
OSN Number 3: numNormOsnDataContextAndNumbers |
OSN Number 4: numNormOsnDataContextAndNumbers |
|---|---|---|---|---|---|
|
osn_operator |
0:operator.se |
1:124 |
2:125 |
3:\+46124 |
4:/^0046124$/+46124/ |
|
osn_operator |
0:operator.co.uk |
1:152 |
2:153 |
- |
|
NSN Index: numNormNsnDataIndex |
NSN Context 0: numNormNsnDataNumbers |
NSN Number 1: numNormNsnDataNumbers |
NSN Number 2: numNormNsnDataNumbers |
|---|---|---|---|
|
nsn_Sweden |
0:+46 |
1:192 |
2:133 |
|
nsn_UK |
0:+44 |
1:156 |
2:157 |
6.3 Configuration Examples
This section shows examples on how to configure local, national, and international SIP and tel URIs.
6.3.1 Tel URI Local Number
This section shows an example on configuration using a local number, for more information see
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits do not match 00.
- Leading digits do not match 0.
- Match found. +46$AC is prepended to the local number.
6.3.2 Tel URI National Number
This section shows an example on a configuration using a national number, see Table 17.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits do not match 00.
- Leading digits match 0, replace 0 with "+46".
6.3.3 Tel URI International Number
This section shows an example on a configuration using an international number, see Table 18.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits match 00, replace 00 with "+".
6.3.4 SIP URI Embedded tel, Local Number
This section shows an example on a configuration using a local number, see Table 19.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits do not match 00, go to next rule.
- Leading digits do not match 0, go to next rule.
- Match found. +46$AC is prepended to the local number.
6.3.5 SIP URI Embedded tel, National Number
This section shows an example on a configuration using a national number, see Table 20.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = gothenburg.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "gothenburg.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits do not match 00, go to next rule.
- Match found, replace 0 with "+46".
6.3.6 SIP URI Embedded tel, International Number
This section shows an example of a configuration using an international number, see Table 21.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = osn_operator
NSN data index = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- Substitution rules "Sub_Index2" used to normalize, see Table 13.
- Leading digits match 00, replace 00 with "+".
6.3.7 OSN Number tel, Local Number
This section shows an example on a configuration using an operator OSN number 124, see Table 22.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = numNormOsnDataIndex = osn_operator
NSN data index
= numNormNsnDataIndex = nsn_Sweden
Context
OSN data index = numNormContextOsnIndex = osn_operator
Context NSN data index = numNormContextNsnIndex = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request digits match the OSN number 124.
- Context "operator.se" applied to output normalized URI.
6.3.8 OSN Number tel, International Number
This section shows an example on a configuration using an operator OSN number 124, see Table 23.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = numNormOsnDataIndex = osn_operator
NSN data index
= numNormNsnDataIndex = nsn_Sweden
Context
OSN data index = numNormContextOsnIndex = osn_operator
Context NSN data index = numNormContextNsnIndex = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request digits match the OSN number rules +46124 or 0046124, see Table 14.
- Context "operator.se" applied to output normalized URI.
6.3.9 NSN Number tel, Local URI
This section shows an example on a configuration using an operator NSN number 133, see Table 24.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = numNormOsnDataIndex = osn_operator
NSN data index
= numNormNsnDataIndex = nsn_Sweden
Context
OSN data index = numNormContextOsnIndex = osn_operator
Context NSN data index = numNormContextNsnIndex = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any OSN numbers configured, see Table 14.
- The incoming request digits match the NSN number 133.
- Context "+46" is applied to output normalized URI.
6.3.10 NSN Number SIP URI
This section shows an example on a configuration using an operator NSN number 133, see Table 25.
|
Incoming Request URI: |
|
After Normalization: |
Profile selected = sweden
Configured context = stockholm.se
Substitution expression = Sub_Index2
OSN data index = numNormOsnDataIndex = osn_operator
NSN data index
= numNormNsnDataIndex = nsn_Sweden
Context
OSN data index = numNormContextOsnIndex = osn_operator
Context NSN data index = numNormContextNsnIndex = nsn_Sweden
The following events occur:
- The incoming request context matches profile "sweden", see Table 6.
- The incoming request context matches context "stockholm.se", see Table 10.
- The incoming request leading digits do not match any NSN numbers configured, see Table 15.
- The incoming request digits match the NSN number 133.
- Context "+46" is applied to output normalized URI.
7 Example Logic for Parameters Passed to Number Normalization Common Component from ST AS
This section details the behavior of the Number Normalization Common Component based on what the ST AS passes to it. The following attributes are described:
- mtasStNumNormPcRemoval
- mtasStNumNormPcContent
The mtasNumNormPcRemoval attribute controls if the <phone-context> present in the Request URI is to be deleted or. If it is not deleted, the Request URI context is considered as a higher priority for normalization of the Request URI.
The mtasStNumNormPcContent attribute controls which context that is to be used to normalize the URI if set to 0, the context associated with the Main PBX Identity is used. If set to 1, the provisioned +CC-AC context of the subscriber is used to normalize the URI.
The following examples are described:
- Using <phone-context> in URI to Behavior
- Using Context of P-Asserted-Identity or Main PBX Identity to Normalize
- Using <phone-context> in Request URI, context = CC-AC also Provided
- Using CC-AC Provided to Normalize
When the ST AS is unable to normalize the number because the numNormProfileContext does not exist, it does not reject the call with 400 bad request. Other nodes in the network are able to normalize the number even if ST AS has failed.
The Number Normalization Common Component must be appropriately configured for the various examples, see Section 7.1 through Section 7.4.
For more information about the Number Normalization Common Component parameters, refer to Managed Object Model (MOM).
7.1 Phone-Context in URI to Behavior Use
The Number Normalization Common Component normalizes the Request URI using the <phone-context> present in the Request URI. The Number Normalization Common Component must have the context configured.
If the mtasStNumNormPcRemoval attribute is set to 0, the context present in the URI is not deleted. The R-URI is passed to the Number Normalization Common Component, the context is used by the Number Normalization to normalize the URI.
If the mtasNumNormPcContent attribute is set to 0, the P-Asserted-Identity (if the P-Asserted-Identity is SIP URI) or the Main PBX Identity (if the P-Asserted-Identity is not SIP URI) is passed to the Number Normalization Common Component. If no context is available in the Request URI, then the domain name in the P-Asserted-Identity or in the Main PBX Identity is used by Number Normalization to normalize the request.
7.2 Context of P-Asserted-Identity or Main PBX Identity to Normalize Use
The Number Normalization Common Component normalizes the Request URI using the context of the P-Asserted-Identity or Main PBX Identity passed to it. The Number Normalization Common Component must have the context configured in the P-Asserted-Identity or in the Main PBX identity.
If the mtasNumNormPcRemoval attribute is set to 1, the context present in the Request URI is deleted. The Request URI without the context is passed to Number Normalization Common Component.
If the mtasNumNormPcContent attribute is set to 0, the P-Asserted-Identity (if it is a SIP URI) or the Main PBX Identity (if the P-Asserted-Identity is not a SIP URI) is passed to the Number Normalization Common Component. The domain name in the P-Asserted-Identity or in the Main PBX Identity is used by Number Normalization to normalize the Request.
7.3 Phone-Context in Request URI, Context = CC-AC Also Provided Use
The Number Normalization Common Component normalizes the Request URI using the <phone-context> present in the URI. The Number Normalization Common Component must have the context configured.
If the mtasNumNormPcRemoval attribute is set to 0, the context present in the Request URI is not deleted in the Request URI. The context is used by Number Normalization to normalize the request URI.
If the mtasNumNormPcContent attribute is set to 1, the CC and AC (CC-AC) that was retrieved from the Home Subscriber Server (HSS) is passed to Number Normalization. If no context is available in Request URI, then the CC-AC is used to normalize the Request URI.
7.4 CC-AC Provided to Normalize Use
The Number Normalization Common Component normalizes the URI using the CC-AC. The Number Normalization Common Component must have the CC-AC context configured.
If the mtasNumNormPcRemoval attribute is set to 1, the context present in the Request URI is deleted in the Request URI. The Request URI without the context is passed to the Number Normalization to be normalized.
If the mtasNumNormPcContent attribute is set to 1, the CC-AC that was retrieved from the HSS (Get Data) is passed to the Number Normalization. The CC-AC is used to normalize the Request URI.

Contents