This feature reads Third Party Registration information stored in the HSS as Transparent Data, and writes it into session state. Information is read during INVITE processing. It reads the Third Party Registration information via the Sh Cache RA. For more information refer to Data Stored by the Third Party Registrar in HSS.
Feature cheat sheet
B2BUA Instance | Originating / Terminating | Point in Session Plan | Network Operator Data | Subscriber Data | Stateful or Stateless | POJO Feature or SBB Feature |
---|---|---|---|---|---|---|
Both or either of MMTEL or SCC |
Originating, Forwarding, and Terminating |
SIP Access Session Pre-Credit Check |
No |
No |
Stateless |
SBB |
Prerequisite features
These features must run before IMSIDLookup:
-
SIP Subscriber Determination — in order to know who the subscriber is for the call.
Source Code
This feature’s source code is available in the Sentinel VoLTE SDK in the volte-imsid-lookup
module pack.
It can be viewed by using the create-module
command in the SDK with that module pack, for example:
> create-module new-imsid-module opencloud#volte-imsid-lookup#volte/2.7.0;2.7.0.0
This command will prompt you for information needed to create the new modules, once completed the original source for the feature can be found in the new modules.
The module-pack includes a single module:
Module Name | Description |
---|---|
volte-imsid-lookup |
Contains the feature’s code. |
Session input and output variables
Session input variables
Session State variable name | Variable type |
---|---|
Subscriber |
String |
This is the IMS Public Identity for the Served User, and is extracted from the SIP INVITE. |
Session output variables
Session State variable name | Variable type | Comments |
---|---|---|
RegistrationRecords |
List<RegistrationRecord> |
The list of registration records for the subscriber |
IsLoggedIn |
boolean |
True, if the feature was able to set both IDs |
CMSISDN |
String |
The correlation MSISDN registered for the subscriber |
HasCMSISDN |
boolean |
True if the CMSISDN is set |
Statistics
IMSIDLookup statistics are tracked by the IMSIDLookup SBB and can be found under the following parameter set:
SLEE-Usage ▶ volte.sentinel.sip service ID ▶ IMSIDLookup SBB ID.
Name | Type | Description |
---|---|---|
Invoked |
Counter |
Incremented when the feature runs. |
FeatureError |
Counter |
Incremented when a fatal error occurs during feature execution. |
NoSubscriberSpecified |
Counter |
Incremented when the feature is unable to determine which subscriber to retrieve IDs for. |
IMSIDRetrieveSuccess |
Counter |
Incremented when IDs are successfully retrieved and decoded. |
IMSIDRetrieveFail |
Counter |
Incremented when ID retrieval or decoding fails. |
CacheQueried |
Counter |
Incremented when a query is made to the Sh-Cache. |
CacheIndicatedQuerySuccess |
Counter |
Incremented when a success response is received from the Sh-Cache. |
CacheIndicatedQueryFailure |
Counter |
Incremented when a failure response is received from the Sh-Cache. |
SubscriberNotRegistered |
Counter |
Incremented when the searched subscriber is not present in the Sh-Cache or has no valid registration. |
RegistrationOutOfSync |
Counter |
Incremented when the searched subscriber information is not consistent between the network and the Sh-Cache. |
ResponseLatency |
Sampled |
Records elapsed time between requesting data from the Sh-Cache RA and getting a response (in milliseconds). |
Behaviour
The feature queries the HSS using an Access Key of the IMS Public Identity of the Served User and the Service Indication of opencloud-3rd-party-registrar
.
User logged in
The RegistrationRecords
session state field is set to a List
of RegistrationRecord
. Each element in the list indicates a device, with public and private IDs, that the subscriber is registered on.
If the subscriber is registered on only one device, there is only one element in the list. If the subscriber is simultaneously registered on (say) four devices, there will be four elements in the list.
The CMSISDN
field will be set if it is present in the data registered for the user. If the subscriber is simultaneously registered on multiple devices, this value will not be set.