This feature is for CDMA networks. |
The CDMAFetchTLDN feature retrieves the TLDN (Temporary Local Directory Number) from the HLR. The CDMAFetchTLDN derives the Circuit Switched Routing Number (CSRN) from the TLDN and stores the CSRN in session state.
Feature Cheat Sheet
B2BUA Instance | Originating / Terminating | Point(s) in Session Plan | Network Operator Data | Subscriber Data | Stateful or Stateless | POJO Feature or SBB Feature | Other notes |
---|---|---|---|---|---|---|---|
SCC |
Terminating |
|
Yes |
No |
Stateless |
POJO |
Session input variables
Variable name | Type | Comments |
---|---|---|
RegistrationRecords |
List<RegistrationRecord> |
The list of registration records for the subscriber, used to find the subscriber’s identity. |
Subscriber |
String |
Used to obtain the subscriber’s identity if it could not be determined from the registration data. |
FetchedTLDN |
boolean |
True, if the TLDN has been fetched successfully. |
RoutingMode |
TADSRoutingMode (Enum) |
Determines whether CS and/or PS routing is enabled and the preferred attempt order. |
TADSCurrentLegType |
LegType (Enum) |
One of NONE, CS or PS |
LastRequestSendTime |
Long |
The last time a request was sent for the TLDN, or null if a request has not been made. |
SentinelSelectionKey |
SentinelSelectionKey |
Used to retrieve configuration data for the feature. |
Subscriber |
String |
Used to obtain the subscriber’s identity if it could not be determined from the registration data. |
Session output variables
Variable name | Type | Comments |
---|---|---|
CSRN |
String |
The CSRN of the served user, if the feature could derive it. |
HasCSRN |
boolean |
Indicates whether the CSRN session state field has been populated. |
FetchedTLDN |
boolean |
Indicates whether the TLDN was fetched successfully. |
LastRequestSendTime |
Long |
The last time a request was made for the TLDN. |
The CSRN is the TLDN , with an optional prefix (defined in feature configuration)
|
Network Operator Data
The CDMAFetchTLDN feature depends on network operator data in two configuration profile tables. One is for feature specific configuration, the other is for general HLR connection configuration.
Feature Configuration
Feature specific configuration is set in a profile table called: SCCCDMAFetchTLDNConfigProfileTable
.
Profiles are scoped on Sentinel Selection Key.
SCCCDMAFetchTLDNConfigProfileTable
Attribute | Type | Default Value | Meaning |
---|---|---|---|
ForceSipUserEqualsPhone |
boolean |
false |
If true, when attempting to extract a number from a SIP URI, the feature will extract a number even if the URI does not have the |
CSRNPrefix |
String |
null |
The (optional) prefix to be added to the TLDN to form the CSRN |
SubscriberTypeOfDigits |
String |
DIALED_OR_CALLED_PARTY_NUMBER |
The type of digits field of the subscriber 'DigitsType' included in the LOCREQ. |
SubscriberNatureOfNumber |
String |
INTERNATIONAL |
The nature field of the subscriber 'DigitsType' included in the LOCREQ. |
SubscriberNumberingPlan |
String |
TELEPHONY |
The numbering plan field of the subscriber 'DigitsType' included in the LOCREQ. |
HLR Connection Configuration
The CDMAFetchTLDN feature uses the HLR configuration in a profile table called: CDMAHLRConfigProfileTable
.
Profiles are scoped on Sentinel Selection Key.
CDMAHLRConfigProfileTable
Attribute | Type | Default Value | Meaning |
---|---|---|---|
HLRSccpAddressAsString |
String |
|
SCCP Address of the HLR, used when establishing the MAP dialog |
SentinelSccpAddressAsString |
String |
|
SCCP Address of Sentinel, used when establishing the MAP dialog |
HLRInvokeTimeout |
long |
4000 |
The timeout (ms) for waiting the HLR response. Used in the TCAP layer for the invoke timeout. |
MarketID |
int |
1 |
The value of the market id field in the |
SwitchNumber |
int |
1 |
The value of the switch number field in the |
See: SCCP Address Format to understand the String format of SCCP addresses. |
Statistics
CDMAFetchTLDN statistics are tracked by the sentinel.volte.sip SBB and can be found under the following parameter set:
SLEE-Usage → [sentinel.volte.sip service name] → [sentinel.volte.sip SBB name] → feature.CDMAFetchTLDN
Parameter | Type | Description |
---|---|---|
RequestSent |
Counter |
Incremented when a request is sent to the HLR. |
FailedToSendRequest |
Counter |
Incremented when a request failed to be sent to the HLR. |
RequestFailed |
Counter |
Incremented when a TLDN is not received from the HLR. |
CSRNNotDetermined |
Counter |
Incremented if the CSRN could not be derived. |
CSRNDetermined |
Counter |
Incremented when the CSRN is derived. |
UnableToDetermineSubscriber |
Counter |
Incremented when it was not possible to determine an address for the subscriber. |
ResponseLatency |
Sampled |
Records elapsed time between sending the request to the HLR and getting a response (in milliseconds). |
Behaviour
The feature issues a query to the HLR for the TLDN using the MAP operation Location Request
.
The CDMA Application Context used is allOperationsAC
.
When building the request to the HLR, the feature retrieves the "digits" portion of the IMS default public ID of the Served user from the first entry in the RegistrationRecords
session state field.
If this field does not contain digits, the "digits" portion of the subscriber ID is used.
Note that the feature does not use the entire ID, only the digits portion.
Specifically, the feature will use the numbers in a Tel URI, or the user part of a SIP URI that has the 'user=phone' parameter if ForceSipUserEqualsPhone
is false, or the user part of a SIP URI without the 'user=phone' parameter if ForceSipUserEqualsPhone
is true.
The HLR may return either a failure response, or a LocationRequest-Res response containing the TLDN as a PSTNTermination element in the field TerminationList. If there is no valid element in the TerminationList field, the feature will also check the top level digits field for any TLDNs marked as ROUTING_NUMBER.
If a TLDN is returned, the CDMAFetchTLDN feature sets the CSRN
session state field.