This feature fetches the Correlation MSISDN from the HSS, using the Sh Cache Microservice. It can be invoked during Third Party Registration and INVITE session processing.
Prerequisite features
SCC Decode Companion Device Info Feature if companion device CRSNs are to be derived.
Description
This feature fetches the Correlation MSISDN from the HSS, using the Sh Cache Microservice. It can be invoked during Third Party Registration and INVITE session processing. In addition, it tries to derive a CSRN from the CMSISDN.
The feature issues a query to the Sh Cache Microservice for the Correlation MSISDN, unless a value is already set in session state. When building the request to the HSS, it uses a User Data Request with Sh Data Reference 17 - MSISDN or MSISDN + ExtendedMSISDN. The query access key is the default Public Identity, or the default Public Identity plus the IMS Private Identity. The access chosen is based on the feature configuration attribute "UDRIncludedIdentities".
The Sh Cache Microservice may return either a failure response, or an Sh document.
If the feature is configured to look for the Correlation MSISDN in MSISDN, it uses the first MSISDN in the returned set at Sh-Data/PublicIdentifiers/MSISDN
in the Sh UDA response.
If the feature is configured to look for the Correlation MSISDN in Extended-MSISDNs, it uses the first MSISDN in the returned Extended MSISDNs set at Sh-Data/PublicIdentifiers/Extension/Extension/Extension/ExtendedMSISDN
in the Sh UDA response.
If the feature is able to find an MSISDN in the returned set, it increments the SuccessfullyRetrievedCMSISDN counter, and modifies the output session state variables.
If the returned set is empty, the feature increments the FailedToRetrieveCMSISDN counter, and does not modify any output session state variables.
If the Sh Cache Microservice returns a failure response, the feature increments the ShCacheError counter, and does not modify any output session state variables.
When the session state field UseHLRBasedCSRN
is false
-
the feature derives a CSRN by prefixing the MSISDN with the configured prefix. If a CMSISDN could not be found, and
EnableCSRoutingFromRequestUri
is enabled, the feature attempts to extract a phone number from the Request-URI, and sets the CSRN in session state as this phone number prefixed with the configured prefix. -
if session state has companion devices, the feature sets
CompanionDeviceCSRNs
andHasCompanionDeviceCSRNs
by prefixing the MSISDNs inCompanionDevices
session state field with the configured prefix.
Session input variables
Variable name | Type | Comments |
---|---|---|
PublicIds |
String array |
The IMS Public Ids for the Served User, used when triggered on a REGISTER |
PrivateId |
String |
Contains the subscriber’s private identity, used when triggered on a REGISTER |
RegistrationRecords |
List<RegistrationRecord> |
The registration records for the Served User, used when triggered on an INVITE |
CompanionDevices |
List<CompanionDevice> |
The list of companion devices decoded from the |
UseHLRBasedCSRN |
boolean |
When |
Session output variables
Variable name | Type | Comments |
---|---|---|
CMSISDN |
String |
Set to the Correlation MSISDN if the feature could retrieve it |
HasCMSISDN |
boolean |
Set to true if the feature could retrieve the CMSISDN |
CSRN |
String |
The CSRN of the served user, if the feature could derive it. |
HasCSRN |
boolean |
Indicating whether the CSRN session state field has been populated. |
CompanionDeviceCSRNs |
List<String> |
The CSRNs of the companion devices |
HasCompanionDeviceCSRNs |
boolean |
indicating whether the CompanionDeviceCSRNs session state field has been populated |
Statistics
There are two sets of statistics, one as the feature is invoked during Registration, and another during INVITE processing.
Both sets of statistics share the same interface. They are located in different SLEE services.
Parameter | Type | Description |
---|---|---|
Started |
Counter |
Incremented each time the feature runs |
FailedToStart |
Counter |
Incremented when a fatal error occurs before feature execution |
IssuedWarning |
Counter |
Incremented when a non-fatal error occurs during feature execution |
FailedDuringExecution |
Counter |
Incremented when a fatal error occurs during feature execution |
TimedOut |
Counter |
Incremented when feature execution does not complete within a reasonable time frame |
FailedToRetrieveCMSISDN |
Counter |
Incremented when the ShCM query returns a document that does not contain the CMSISDN in the expected location. |
SuccessfullyRetrievedCMSISDN |
Counter |
Incremented when the ShCM query returns a document that does contain a CMSISDN in the expected location. |
ShCacheError |
Counter |
Incremented when the ShCM query returns a non-success response code. |
InvalidConfig |
Counter |
Incremented when unsupported CMSISDN source is configured. |
CSRNNotDetermined |
Counter |
Incremented when the CSRN could not be determined |
CSRNDetermined |
Counter |
Incremented when the CSRN could be determined |
CompanionDeviceCSRNsDetermined |
Counter |
Incremented when the |
ResponseLatency |
Sampled |
Records elapsed time between requesting data from the Sh Cache Microservice RA and getting a response (in milliseconds). |
Statistics as part of Registration
These statistics are tracked by the sentinel.registrar SBB and can be found using the parameter set SLEE-Usage.Services.ServiceID[name=sentinel.registrar,vendor=OpenCloud,version=3.1.0].SbbID[name=sentinel.registrar,vendor=OpenCloud,version=3.1.0].feature.FetchCMSISDN
Or in REM under the following parameter set:
SLEE-Usage → sentinel.registrar service → sentinel.registrar SBB → feature → FetchCMSISDN
Statistics as part of INVITE processing
These statistics are tracked by the sentinel.volte.sip SBB and can be found using the parameter set
SLEE-Usage.Services.ServiceID[name=sentinel.volte.sip,vendor=OpenCloud,version=3.1.0].SbbID[name=sentinel.volte.sip,vendor=OpenCloud,version=3.1.0].feature.FetchCMSISDN
Or in REM under the following parameter set:
SLEE-Usage → sentinel.volte.sip service → sentinel.volte.sip SBB → feature → FetchCMSISDN
Configuration
The configuration is scoped according to the Sentinel Selection key, and is stored in the FetchCMSISDNFeatureConfigProfileTable
profile.
There are four configuration attributes, as follows:
Attribute name | Type | Valid values |
---|---|---|
CMSISDNSource |
String |
|
UDRIncludedIdentities |
String |
|
CSRNPrefix |
String |
|
EnableCSRoutingFromRequestURI |
boolean |
Note: If the CMSISDN source is set to EXTENDED_MSISDN
then the UDRIncludedIdentities must be set to IMPU_AND_IMPI
.