This CDMA Reorigination service receives CDMA OriginationRequest and AnalyzedInformation triggers, stores reorigination information, and is able to forward the call such that it is routed into the IMS .

It enables processing circuit-switched originating calls in the SCC-AS. Reorigination for terminating calls can be bypassed if the subscriber is not registered in the IMS network. There is a related feature (SCCCDMAReOrigination) that is part of service centralization in the IMS.

Tip This service is for CDMA networks.
Note Refer to Reorigination basic flow diagram to understand the role of CDMA Reorigination service in reorigination.

Configuration

Configuration for the CDMA Reorigination Service is in a profile 'cdma-configuration' in the profile table CDMAServiceConfigurationProfileTable.

CDMAServiceConfigurationProfileTable

Attribute Type Default Value Meaning
 SupportedAnalyzedInformationTriggerList

String

 'local-Call,local-Toll-Call,non-Local-Toll-Call,world-Zone-Call,international-Call,unrecognized-Number,prior-Agreement,specific-Called-Party-Digit-String,mobile-Termination,advanced-Termination,location'

Supported terminating triggers in an AnalyzedInformation (comma separated list of CDMATriggerTypes)

 ActionOnUnsupportedTrigger

String

 accessDeniedReason_terminationDenied

action to take when an unexpected trigger is received

 ActionOnFailedToAllocateRoutingNumber

String

 accessDeniedReason_busy

action to take when there is a failure generating a routing number

 DefaultFailureAction

String

 accessDeniedReason_serviceDenied

default action to take on error

 IMRNTypeOfDigits

String

 DIALED_OR_CALLED_PARTY_NUMBER

The type of digits field of the IMRN generated

 IMRNNatureOfNumber

String

 INTERNATIONAL

The nature field of the IMRN generated

 IMRNNumberingPlan

String

 TELEPHONY

The numbering plan field of the IMRN generated

 BypassReoriginationIfNotRegistered

Boolean

 true

If true, reorigination is skipped if the subscriber is not registered in the IMS network

Network operator data

Common network configuration data is stored in a profile table named SCCCommonReOriginationConfigProfileTable.

For more information, see the shared configuration between the SCCCDMAReOrigination feature and the CDMA reorigination service.

Use of Correlation resource adaptor

For information about use of the Correlation RA, please see the shared Correlation RA.

Use of Cassandra-CQL resource adaptor

The CDMA reorigination service uses Cassandra to:

  • determine if the subscriber is registered by querying 3rd party Registration Data

  • store reorigination information required by SCCCDMAReOrigination.

For information about use of the Cassandra-CQL RA, please see storing Call Information in Cassandra.

Statistics

CDMA reorigination statistics are collected by the 'volte.sentinel.cdma' SBB and can be found using the parameter set

SLEE-Usage.Services.ServiceID[name=volte.sentinel.cdma,vendor=OpenCloud,version=4.1].SbbID[name=volte.sentinel.cdma,vendor=OpenCloud,version=4.1]

Or in REM under the following parameter sets:
SLEE-Usage → Services → volte.sentinel.cdma service → volte.sentinel.cdma

Parameter Type Description
 ConfigurationProfileTableMissing

Counter

Incremented if the configuration profile table is missing

 ConfigurationProfileMissing

Counter

Incremented if the configuration profile is missing

 FailedToEncodeRequest

Counter

Incremented if there is a failure encoding the incoming request for the correlation RA

 NoAvailableCorrelationEntries

Counter

Incremented if there are no free correlation entries

 OriginatingTreatment

Counter

Incremented on an originating trigger

 TerminatingTreatment

Counter

Incremented on a terminating trigger

 UnsupportedDialogOpenRequest

Counter

Incremented on receipt of a Unidirectional dialog

 FailedToAcceptDialog

Counter

Incremented if there is an error accepting the incoming dialog

 FailedToRefuseDialog

Counter

Incremented if there is an error refusing the incoming dialog

 AnalyzedInformationErrorResponseSent

Counter

Incremented if an error response is sent

 OriginationRequestErrorResponseSent

Counter

Incremented if an error response is sent

 FailedToSendAnalyzedInformationResponse

Counter

Incremented if there is a failure whilst sending an error response

 FailedToSendOriginationResponse

Counter

Incremented if there is a failure whilst sending an error response

 UnsupportedTrigger

Counter

Incremented if the trigger type of an AnalyzedInformation request is not supported

 UnsupportedCallType

Counter

Incremented if the call scenario is not mobile originating or mobile terminating

 InvalidOriginationRequest

Counter

Incremented if the called and calling parties cannot be determined

 InvalidAnalyzedInformation

Counter

Incremented if the called and calling parties cannot be determined

 CassandraQueryResultReceived

Counter

Incremented if 3rd-party registration lookup result received from Cassandra

 SubscriberNotRegistered

Counter

Incremented if subscriber is not registered

 SubscriberRegistered

Counter

Incremented if subscriber is registered

 CassandraError

Counter

Incremented if error returned by Cassandra during 3rd-Party registration lookup

 CassandraQueried

Counter

Incremented if 3rd-Party registration lookup invoked

CallReOriginated

Counter

Incremented when the call is successfully reoriginated.

ReoriginationBypassed

Counter

Incremented when the feature bypasses reorigination for an unregistered subscriber.

CallReleased

Counter

Incremented when reorigination fails and the call is released.

PoolAllocationFailed

Counter

Incremented on a failure to acquire a correlation ID from the correlation RA.

PoolAllocationSucceeded

Counter

Incremented when a correlation ID is acquired from the correlation RA.

StoringCorrelationDataInCassandra

Counter

Incremented when the feature stores call information data in cassandra

InsertCorrelationDataCassandraQueryResultReceived

Counter

Incremented when the feature receives a call information data lookup result

FailedToStoreCorrelationDataInCassandra

Counter

Incremented when there is a failure to store call information data in cassandra

PoolAllocationReleased

Counter

Incremented when an allocated correlation ID is released due to any failure

Reoriginating the call

The service is triggered with an OriginationRequest or an AnalyzedInformation. The service then attempts to reoriginate the call (that is, forward the call into the IMS). The steps involved are explained in the following sections.

  1. The configuration data used is indexed by the Sentinel Selection Key (as in most places in Sentinel). The first step is to build a sentinel selection key, by using platform level configuration to get the name of the platform operator. In the current release the network operator field is set to the name of the platform operator. This selection key is used for all subsequent configuration lookup.

  2. Find configuration, with a sentinel selection key based search. If there is no configuration, reject the session with accessDeniedReason of unavailable.

On OriginationRequest (ORREQ)

  1. Check the OriginationRequest has all required fields to identify the calling and called parties. If not, send an OriginationRequest response based on the ActionOnUnsupportedTrigger configuration property.

  2. Encode the OriginationRequest into a byte[] that can be stored by the correlation RA. If this fails, send an OriginationRequest response based on the ActionOnFailedToAllocateRoutingNumber configuration property.

  3. Direct the Correlation resource adaptor entity to allocate a reorigination address. This address will be used for routing the call onwards. The Correlation resource adaptor entity records the allocated correlation number and the encoded OriginationRequest. These are used later, in the CDMA Reorigination SIP feature.

  4. The call information is also stored in Cassandra, keyed on the correlation ID. If the insert into cassandra fails, then the call fails to reoriginate.

  5. Build a destination routing address, using the address returned by the Correlation RA, and the configuration for the address’s TypeOfDigits, NatureOfNumber and NumberingPlan fields. The network configuration for a prefix is used if the network configuration indicates a prefix is required. This address is called the “IP Multimedia Routing Number”, or IMRN for short.

  6. Send an OriginationRequest response with the IMRN in the TerminationList, and close the TCAP dialog.

On AnalyzedInformation (ANLYZD)

  1. Check the trigger type against supported triggers in configuration. If the trigger is not supported, send an AnalyzedInformation response based on the ActionOnUnsupportedTrigger configuration property.

  2. For supported AnalyzedInformation triggers, check the call is Mobile Originating (MO) or Mobile Terminating (MT). If not, send an AnalyzedInformation response based on the ActionOnUnsupportedTrigger configuration property.

Note The call is MT if the trigger type is mobile-Termination, advanced-Termination or location. All other calls are MO, unless RedirectingNumberDigits, RedirectingPartyName or RedirectingSubaddress is present, in which case the call is MF (Mobile Forwarded).
  1. Check the AnalyzedInformation has all required fields to identify the calling and called parties. If not, send an AnalyzedInformation response based on the ActionOnUnsupportedTrigger configuration property.

  2. Execute the CDMA reorigination bypass feature.

    • If BypassReoriginationIfNotRegistered = True, construct a normalized IMRN from the digits address value in the ANLYZD message and perform a 3rd-Party registration lookup in Cassandra.

      • If no registration record is found, send an empty AnalyzedInformation response so the call can continue without reorigination.

      • If an expired registration record is found, send an empty AnalyzedInformation response so the call can continue without reorigination.

      • If a current registration record is found, continue to the next step.

      • If Cassandra returns an error/failure or no response, continue to the next step.

    • If BypassReoriginationIfNotRegistered = False, continue to the next step.

  3. Encode the AnalyzedInformation into a byte[] that can be stored by the correlation RA. If this fails, send an AnalyzedInformation response based on the ActionOnFailedToAllocateRoutingNumber configuration property.

  4. Direct the Correlation resource adaptor entity to allocate a reorigination address. This address will be used for routing the call onwards. The Correlation resource adaptor entity records the allocated correlation number and the encoded AnalyzedInformation. These are used later, in the CDMA Reorigination SIP feature.

  5. The call information is also stored in Cassandra, keyed on the correlation ID. If the insert into cassandra fails, then the call fails to reoriginate.

  6. Build a destination routing address, using the address returned by the Correlation RA, and the configuration for the address’s TypeOfDigits, NatureOfNumber and NumberingPlan fields. The network configuration for a prefix is used if the network configuration indicates a prefix is required. This address is called the “IP Multimedia Routing Number”, or IMRN for short.

  7. Send an AnalyzedInformation response with the IMRN in the TerminationList, and close the TCAP dialog.

Previous page Next page
Sentinel VoLTE Version 4.1