This feature receives a CAP trigger, 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.
The related feature is SCCCamelToIMSReOriginationSIP; these features are part of service centralization in the IMS. For this feature’s fit into the overall flow, please see the Reorigination basic flow diagram.
Feature cheat sheet
B2BUA Instance | SAS Support | Originating / Terminating | Point in Session Plan | Network Operator Data | Subscriber Data | Stateful or Stateless | POJO Feature or SBB Feature |
---|---|---|---|---|---|---|---|
This feature is IN only, it does not exist in a SIP B2BUA |
Yes |
Mobile Originating and Mobile Terminating only |
Session_PreInitialCreditCheck |
Yes. See Correlation RA |
No |
Stateless |
1 POJO for IN behaviour |
Network operator data
Common network configuration data is stored in a profile table named SCCCommonReOriginationConfigProfileTable
.
For more information, see the shared configuration between the SCCCamelToIMSReOriginationSIP feature and the SCCCamelToIMSReOriginationIN feature.
Camel specific network configuration is stored in a profile table name SCCCamelToIMSReOriginationConfigProfileTable
. This data is scoped by Sentinel
selection key.
Attribute name | Type | Comments |
---|---|---|
RoutingToInternalNetworkNumber |
An enum. See RoutingToInternalNetworkNumber |
Used by the IN feature when forwarding the call. For allowed values, see RoutingToInternalNetworkNumber |
Nature |
An enum. See Nature |
Used by the IN feature when forwarding the call. For allowed values see Nature. |
NumberingPlan |
An enum. See NumberingPlan |
Used by the IN feature when forwarding the call. For allowed values see NumberingPlan |
BypassTermReorIfNotRegistered |
Boolean |
Used by the IN feature. If true, reorigination is skipped if the subscriber is not registered in the IMS network. |
RoutingToInternalNetworkNumber
This value is part of the CAP and ETSI INAP CalledPartyNumber.
The allowed values are:
-
ALLOWED
-
NOT_ALLOWED
The values are as if the type were specified in ASN.1 as follows:
RoutingToInternalNetworkNumber ::= ENUMERATED { ALLOWED (0), NOT_ALLOWED (1) }
For more information, please see OpenCloud’s CGIN.
Nature
This value is part of the CAP and ETSI INAP CalledPartyNumber. The allowed values are:
-
SUBSCRIBER
-
UNKNOWN
-
NATIONAL
-
INTERNATIONAL
-
NETWORK_SPECIFIC
-
NETWORK_ROUTING_NATIONAL
-
NETWORK_ROUTING_NETWORK_SPECIFIC
-
NETWORK_ROUTING_WITH_CALLED_DIRECTORY
The values are as if the type were specified in ASN.1 as follows:
Nature ::= ENUMERATED { ... , SUBSCRIBER (1), UNKNOWN (2), NATIONAL (3), INTERNATIONAL (4), NETWORK_SPECIFIC (5), NETWORK_ROUTING_NATIONAL (6), NETWORK_ROUTING_NETWORK_SPECIFIC (7), NETWORK_ROUTING_WITH_CALLED_DIRECTORY (8), ... }
For more information, please see OpenCloud’s CGIN.
NumberingPlan
This value is part of the CAP and ETSI INAP CalledPartyNumber.
The allowed values are:
-
SPARE_0
-
ISDN
-
SPARE_2
-
DATA
-
TELEX
-
NATIONAL_5
-
NATIONAL_6
-
SPARE_7
The values are as if the type were specified in ASN.1 as follows:
NumberingPlan ::= ENUMERATED { SPARE_0 (0), ISDN (1), SPARE_2 (2), DATA (3), TELEX (4), NATIONAL_5 (5), NATIONAL_6 (6), SPARE_7 (7) }
For more information, please see OpenCloud’s CGIN.
Use of Correlation resource adaptor
For information about use of the Correlation RA, please see the shared Correlation RA.
Statistics
SCCCamelToIMSReOriginationIN statistics are tracked by the sentinel.volte.ss7 SBB and can be found under the following parameter set:
SLEE-Usage → sentinel.volte.ss7 service → sentinel.volte.ss7 SBB → feature → SCCCamelToIMSReOriginationIN
Parameter | Type | Description |
---|---|---|
Started |
Counter |
Incremented when the feature starts. |
FailedToStart |
Counter |
Incremented when the feature failed to start due to an error. |
IssuedWarning |
Counter |
Incremented when the feature raised a warning. |
FailedDuringExecution |
Counter |
Incremented when the feature failed due to a major error. |
TimedOut |
Counter |
Incremented when the feature timed out during execution. |
CallReOriginated |
Counter |
Incremented when the call is successfully reoriginated. |
CallReleased |
Counter |
Incremented when reorigination fails and the call is released. |
Misconfigured |
Counter |
Incremented when the feature has not been correctly configured. |
IdpVlrNumberPresent |
Counter |
Incremented when the VLR number is found in the incoming InitialDP. |
IdpVlrNumberNotPresent |
Counter |
Incremented when the VLR number is not found in the incoming InitialDP. |
VisitedNetworkIdNotFound |
Counter |
Incremented when the feature is unable to determine the Visited Network ID. |
VisitedNetworkIdFound |
Counter |
Incremented when the feature is able to determine the Visited Network ID based on the VLR address. |
PoolAllocationFailed |
Counter |
Incremented when the feature fails to acquire a correlation ID from the correlation RA. |
PoolAllocationSucceeded |
Counter |
Incremented when the feature acquires a correlation ID from the correlation RA. |
OriginatingIMRNAttempt |
Counter |
Incremented when the feature executes reorigination for an originating call leg. |
TerminatingIMRNAttempt |
Counter |
Incremented when the feature executes reorigination for a terminating call leg. |
ReoriginationBypassed |
Counter |
Incremented when the feature bypasses reorigination for an unregistered subscriber. |
Behaviour
The feature is triggered with an Initial DP. If the call type is not Mobile Originating or Mobile Terminating, the feature finishes execution without modifying any state.
The feature checks if the Initial DP is a CAMEL initial DP. If not, it finishes executing without modifying any state.
It then checks network configuration, and if not present it informs Sentinel that it failed to execute, with an invalid configuration cause. It then finishes execution.
Once configuration is loaded, it attempts to reoriginate the call (that is, forward the call into the IMS). This works as per the reorigination section.
If BypassTermReorIfNotRegistered
= True
, the feature performs a subcriber lookup in Cassandra using the IMSIDLookupFromCassandraIN feature.
If the subscriber is not registered or the registration has expired, then an empty continue request is returned to the MSC and the feature exits.
If BypassTermReorIfNotRegistered
= False
, or the subcriber lookup in Cassandra returns a current registration record, then reorigination is attempted.
Reoriginating the call
The IDP is checked for the presence of the CalledPartyBCDNumber
. If not present, the call is treated as per the Failure to reoriginate section.
Following that, the feature uses the Visited Network ID Address List to check that there is a known Visited Network ID for the VLR address present in the IDP location information. If there is a matching ID, the feature will continue processing as normal. If there is no matching ID the feature will terminate the call as per the Failure to reoriginate section. The purpose of this is to avoid wasting resources establishing the SIP side of the call, only to have it fail when the SIP reorigination feature is unable to find a matching Visited Network ID.
The feature then consults the Correlation resource adaptor entity in order to allocate a reorigination address. This is an address that is used for routing the call onwards. The Correlation resource adaptor entity stores both the correlation number allocation, and the key fields of the CAP Initial DP argument. These are used later, in the SIP feature.
The feature then builds a destination routing address, using the address returned by the Correlation RA, and the network configuration for the address’s Nature
, RoutingToInternalNetworkNumber
, 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.
It then creates a new Connect
operation, using the IMRN in the Destination Routing Address field, and requests sending of the Connect
and a close of the TCAP dialog.
If | Then |
---|---|
there are any problems with any of:
|
the call is treated according to Failure to reoriginate and a |