This feature
parses P-Visited-Network-ID
(PVNI), P-Access-Network-Info
(PANI) headers and International Mobile Subscriber Identity
(IMSI) to extract Mobile Country Code
(MCC) and Mobile Network Code
(MNC) values for the subscriber into session state fields.
This data can then be included in Credit Control Requests (CCR)s by mappers and Call Detail Records (CDR)s by the AVP CDR feature.
Feature cheat sheet
Feature script name | Prerequisite features | Feature execution points | POJO Feature or SBB Feature |
---|---|---|---|
IPSMGWExtractNetworkInfo |
N/A |
All SubscriberCheck post feature scripts: Post_SipAccess_SubscriberCheck Post_SubscriptionSubscriberCheck Post_SipTransaction_SubscriberCheck Post_SipThirdPartyAccess_SubscriberCheck |
POJO |
Session state inputs and outputs
Inputs
Name | Type | Purpose |
---|---|---|
PvniMccMnc |
com.opencloud.sentinel.common.MccMnc |
If already set, the feature will not attempt to do |
PaniMccsMncs |
List<com.opencloud.sentinel.common.MccMnc> |
If already set, the feature will not attempt to do |
ImsiMccMnc |
com.opencloud.sentinel.common.MccMnc |
The feature stores |
RegistrationRecords |
List<RegistrationRecord> |
|
Outputs
Name | Type | Description |
---|---|---|
PvniMccMnc |
com.opencloud.sentinel.common.MccMnc |
The |
PaniMccsMncs |
List<com.opencloud.sentinel.common.MccMnc> |
A list of |
ImsiMccMnc |
com.opencloud.sentinel.common.MccMnc |
A list of |
Behaviour
The IPSMGWExtractNetworkInfo feature extracts MCC
and MNC
from:
-
PANI
andPVNI
headers found in the SIP trigger or Registration Records to determine theMCC
andMNC
for the subscriber -
IMSI
found in the correlation data afterSend Routing Info for Short Message
operation
The resulting information is recorded in session state for use by the AVP CDR Feature feature when writing a CDR, as well as the charging features when forming charging requests.
The following OpenCloud extension AVPs are used to communicate MCC and MNC information in CCRs and CDRs:
-
OC-ACCESS-NETWORK-MCC-MNC
-
OC-VISITED-NETWORK-MCC-MNC
-
OC-IMSI-NETWORK-MCC-MNC
-
3GPP-IMSI-NETWORK-MCC-MNC
For Sentinel AVP definitions, please refer to Sentinel AVP Definitions in the Sentinel Administration guide.
Statistics
IPSMGWExtractNetworkInfo 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 → IPSMGWExtractNetworkInfo
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.IPSMGWExtractNetworkInfo"
Name | Description |
---|---|
AccessNetworkMccMncFoundInRegistrationData |
Incremented when AccessNetwork MCC and MNC found in registration data |
VisitedNetworkMccMncFoundInRegistrationData |
Incremented when VisitedNetwork MCC and MNC found in registration data |
AccessNetworkMccMncFoundInTrigger |
Incremented when AccessNetwork MCC and MNC found in trigger |
VisitedNetworkMccMncFoundInTrigger |
Incremented when VisitedNetwork MCC and MNC found in trigger |
ImsiMccMncFound |
Incremented when MCC and MNC is found in IMSI |
UnableToDetermineImsiMccMnc |
Incremented when IMSI is not avaliable |
UnableToDetermineAccessNetworkMccMnc |
Incremented when AccessNetwork MCC and MNC not found in registration data or trigger |
UnableToDetermineVisitedNetworkMccMnc |
Incremented when VisitedNetwork MCC and MNC not found in registration data or trigger |
SipRequestTrigger |
Incremented when trigger is SIP Request |
TcapTrigger |
Incremented when trigger is a TCAP MESSAGE |
IgnoringTrigger |
Incremented when trigger is not a TCAP Message or SIP Request |
Configuration
When parsing MNC’s from digit strings (such as an IMSI), the MobileCountryCodeInformation
profile table is used to determine whether the MNC is two or three digits.
The table maps an MCC to a list of that country’s MNC’s which are then compared against the digit string to determine length. At present, other fields are for administrative use only.
Parameter | Type | Description |
---|---|---|
MCC |
String |
The three digit Mobile Country Code each profile represents |
Country |
String |
The name of the country the MCC belongs to (for documentation purposes only) |
ISOCountryCode |
String[] |
An ordered list of two character string representing the ISOCountryCode - each entry corresponds to an MNC. Use "UNKNOWN" for missing values. |
CountryDialCode |
String |
A digit string representing the actual dial code for this country |
MNCs |
String[] |
An ordered list of the two or three digit Mobile Network Codes for this MCC |
Brands |
String[] |
An ordered list of brand names corresponding to each MNC. Use "UNKNOWN" for missing values. |
Operators |
String[] |
An ordered list of operator names corresponding to each MNC. Use "UKNOWN" for missing values. |
An example MobileCountryCodeInformation
profile:
MCC: "530" Country: "New Zealand" ISOCountryCode: "nz" CountryDialCode: "64" MNCs: !array type: java.lang.String values: - "00" - "01" ... Brands: !array type: java.lang.String values: - "Telecom" - "Vodafone" ... Operators: !array type: java.lang.String values: - "Telecom New Zealand" - "Vodafone New Zealand" ...
The value at at a given index of each of the following array attributes corresponds to the value at the same index of any other:
-
MNC
(01) -
Brands
(Vodafone) -
Operators
(Vodafone New Zealand)
Configuration profile naming
Configuration Profile Table Name | Description | Profile Naming |
---|---|---|
MobileCountryCodeInformation |
The Mobile Network Codes associated with a given Mobile Country Code |
SentinelSelectionKey with three digit Mobile Country Code suffix (for example, |
Provisioning interfaces
The feature is provisioned using the Sentinel IP-SM-GW feature REST API.