This feature uses an MSISDN to fetch the IMSI from the HLR via a SendRoutingInfoForSMRequest
Feature cheat sheet
Feature Name | Network Operator Data | Used in PlanId(s) | Stateful or Stateless | POJO Feature or SBB Feature |
---|---|---|---|---|
IPSMGWFetchIMSI |
No |
SMMA, Sh_PNR, register |
Stateless |
POJO |
Feature parameters
The Fetch IMSI feature supports the following parameters that may be passed in a feature execution script run statement:
Name | Allowed Values | Description |
---|---|---|
mode |
|
This is used to determine what action the feature should take when run. |
Session Input variables
The feature reads the following fields in Session State
Session State variable name | Variable type | Comments |
---|---|---|
MSISDN |
String |
The MSISDN to use in the SendRoutingInfoForSM operation |
Session Output variables
The feature sets the following fields in Session State
Session State variable name | Variable type | Comments |
---|---|---|
IMSI |
String |
The IMSI retrieved from the SendRoutingInfoForSM response |
SRI4SMResult |
enum |
Indicates if the SendRoutingInfoForSM request has succeeded. Allowed values are |
SRI4SMError |
TcapError |
The TcapError received in response to the SendRoutingInfoForSMRequest |
Statistics
IPSMGWFetchIMSI statistics are tracked by the sentinel.ipsmgw SBB
and can be found under the following parameter set in REM:
SLEE-Usage → sentinel.ipsmgw service → sentinel.ipsmgw SBB → feature → IPSMGWFetchIMSI
or with rhino-stats:
"SLEE-Usage.Services.ServiceID[name=sentinel.ipsmgw,vendor=OpenCloud,version=2.7.0].SbbID[name=sentinel.ipsmgw,vendor=OpenCloud,version=2.7.0].feature.IPSMGWFetchIMSI"
Name | Description |
---|---|
SavedIMSI |
Incremented when we successfully retrieve the IMSI from the HLR |
SentSRIForSM |
Incremented when the SRIForSM is sent to the HLR |
FailedToSendSRIForSM |
Incremented when the SRIForSM fails to be sent to the HLR |
Configuration
The feature is configured with configuration scoped according to a Sentinel Selection Key.
The Profile Table used to hold feature configuration is IPSMGWSharedConfigProfileTable
.
The following attributes are available
Attributes | Type | Meaning |
---|---|---|
HlrAddress |
String |
Address of the HLR to request the IMSI from, used when establishing the MAP dialog if |
UseMsisdnAsHlrAddress |
Boolean |
Controls whether to address the outbound HLR leg using a GT address formed from the subscriber MSISDN, instead of using the configured |
SentinelOriginatingAddress |
String |
Address of Sentinel used when establishing the MAP dialog |
SentinelIPSMGWAddress |
String |
The IP-SM-GW address that the feature will include it in MAP SendRoutingInfoForSMRequest request to send to HLR |
SriSmDeliveryNotIntended |
Boolean |
If true, specify the SmDeliveryNotIntended flag when performing an SRI for SM IMSI-only query (i.e. during SMMA callflows). |
Using MSISDN as HLR Address
The Fetch IMSI feature can optionally address the HLR leg using a GT address formed from the inbound subscriber MSISDN, as opposed to using the destination addresses configured in the IPSMGWMapProxyConfigProfileTable
profile table described above.
This behaviour can be enabled or disabled by setting the UseMsisdnAsHlrAddress
attribute in the Shared Configuration Profile
.
MAP Application Context
The feature uses MAP Application Context shortMsgGatewayContext_v2_ac
.
This application context was added in GSM MAP Phase 2.
Behaviour
When run with mode fetch
the FetchIMSI feature will read the MSISDN out of session state. It is then used to send a SendRoutingInfoForSMRequest
to the HLR.
The request always has the SM-RP-PRI flag set to TRUE, and optionally has smDeliveryNotIntended set to "only IMSI requested" (based on the SriSmDeliveryNotIntended configuration flag).
When run with mode response
the feature will look for the receipt of the SendRoutingInfoForSMResponse, it extracts the IMSI and sets it in session state.
If the SendRoutingInfoForSMRequest results in an error response then it will
set the SRI4SMResult and SRI4SMError session state fields instead.
If the feature is run without a mode
parameter it returns a Feature Error.