This feature uses information from an incoming INVITE, MESSAGE or SUBSCRIBE request, and from session state to set the plan ID in the Sentinel selection key . The plan ID affects which features will run for the call on the current AS instance. It also will set some Session State fields.

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

Any and All

No

Originating and Terminating

SIPAccess_SessionAccept, SubscriptionAccept, SipTransaction_Accept

Yes

No

Stateless

POJO

Prerequisite features

These features must run before DetermineVoltePlanId:

  • DetermineCallType

  • SCCDetermineSessionType (Only required on SCC AS)

Source Code

This feature’s source code is available in the Sentinel VoLTE SDK in the volte-determine-plan-id module pack. It can be viewed by using the create-module command in the SDK with that module pack, for example:

> create-module new-planid-module opencloud#volte-determine-plan-id#volte/3.0.0;3.0.0.0

This command will prompt you for information needed to create the new modules, once completed the original source for the feature can be found in the new modules.

The module-pack includes the following modules:

Module Name Description

volte-determine-plan-id

Contains all of the code for this feature.

Session input variables

Session State variable name Variable type
CallType

Enum

SCCSessionType

Enum

SentinelSelectionKey

SentinelSelectionKey

Session output variables

Session State variable name Variable type Comments
SentinelSelectionKey

SentinelSelectionKey

Updated by the feature based on factors described in the Behaviour section.

RequestIsForMmtelTransfer

Boolean

Set to true if request is targeted at configured Session-Transfer-To-Own-Device special URI.

ConferenceFactoryPSI

String

Set if the SIP request URI is a conference factory PSI supported by the platform.

Network operator data

Parameter Type Description Default
MmtelTransferNumber

String

SIP or TEL URI for special Session-Transfer-To-Own-Device

none

Statistics

DetermineVoltePlanId statistics are tracked by the sentinel.volte.sip SBB and can be found under the following parameter set in REM:
SLEE-Usage → sentinel.volte.sip service → sentinel.volte.sip SBB → feature → DetermineVoltePlanId
or with rhino-stats:
"SLEE-Usage.Services.ServiceID[name=sentinel.volte.sip,vendor=OpenCloud,version=3.0.0].SbbID[name=sentinel.volte.sip,vendor=OpenCloud,version=3.0.0].feature.DetermineVoltePlanId"

Name Type Description
Started

Counter

Incremented each time the feature runs

FailedToStart

Counter

Incremented when a fatal error occurs before feature execution

IssuedWarning

Counter

Incremented when a non-fatal error occurs during feature execution

FailedDuringExecution

Counter

Incremented when a fatal error occurs during feature execution

TimedOut

Counter

Incremented when feature execution does not complete within a reasonable time frame

NoPlanSelected

Counter

Incremented when the feature fails to select an appropriate plan ID

MmtelOriginatingPlanSelected

Counter

Incremented when the feature selects the plan ID as “mmtel-orig”

MmtelTerminatingPlanSelected

Counter

Incremented when the feature selects the plan ID as “mmtel-term”

MmtelConferencingPlanSelected

Counter

Incremented when the feature selects the plan ID as “mmtel-conf”

SccOriginatingPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-orig”

SccTerminatingPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-term”

SccTerminatingTadsOnlyPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-term-tads”

SccTerminatingAnchorOnlyPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-term-anchor”

SccReoriginationPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-reorigination”

SccAccessTransferPlanSelected

Counter

Incremented when the feature selects the plan ID as “scc-access-transfer”

ConferenceConfigurationNotFound

Counter

Incremented when the feature is unable to find a valid conference PSI from configuration profiles

PlanIDAlreadySet

Counter

Incremented when the feature detects that a plan ID has already been selected

Behaviour

This feature checks a series of values from session state, feature configuration, and the incoming SIP request in order to select the appropriate session plan to run, and possibly set some Session State fields.

Values examined

Value Name Source Notes

Custom Route Header oc-mode Parameters

Incoming SIP request

These are custom parameters on the URI of the top-most route header. It is expected that these will be added by the S-CSCF based on iFCs.

SCCSessionType

Session State

This is set by the SCCDetermineSessionType feature when it detects the incoming request is for Access Transfer or Reorigination, as these requests do not come from the S-CSCF there should never be a oc-mode parameter on the route header.

Call Type

Session State

Set by the DetermineCallType feature.

Request URI

Incoming SIP request

Analysed to determine if it corresponds to a supported conference factory PSI (when a conference call is being requested).

Note

If the Request URI of the incoming sip request is a supported conference factory PSI, the PSI is stored in session state.

Custom Route Header Parameters

Sentinel VoLTE supports specific custom headers and header parameters to indicate or propagate certain conditions between nodes in the network.

Plan ID selection circumstances

Route Header oc-mode Parameter SCCSessionType Call Type SIP Request-URI Matches Conference PSI Resulting Plan ID

(Not Present)

Access Transfer

(Ignored)

(Ignored)

scc-access-transfer

(Not Present)

Reorigination

(Ignored)

(Ignored)

scc-reorigination

oc-mode=mmtel

(Ignored)

Originating

(Ignored)

mmtel-orig

oc-mode=mmtel

(Ignored)

Terminating

No

mmtel-term

oc-mode=mmtel

(Ignored)

Terminating

Yes

mmtel-conf

oc-mode=scc

(Ignored)

Originating

(Ignored)

scc-orig

oc-mode=scc

(Ignored)

Terminating

(Ignored)

scc-term

oc-mode=scc-tads

(Ignored)

Terminating

(Ignored)

scc-term-tads

oc-mode=scc-anchor

(Ignored)

Terminating

(Ignored)

scc-term-anchor

Note
If Then …​

The route header oc-mode parameter is not present

and

the SCCSessionType is not ‘Access Transfer’ or ‘Reorigination’

The feature will proceed as if the route header oc-mode parameter was set to ‘mmtel’.

A Plan ID has already been set on the Sentinel Selection Key

The feature will not attempt to do any analysis or change the plan ID.

Previous page Next page
Sentinel VoLTE Version 3.0.0