The STODDetermineTargetSession feature Reads STOD tracking information out of the Session Ownership Facility and sets it into the session state for processing by External Session Tracking features. .

Feature Cheat Sheet

B2BUA Instance SAS Support Originating / Terminating Point(s) in Session Plan Network Operator Data Subscriber Data Stateful or Stateless POJO Feature or SBB Feature Other notes

Stod

No

Originating

Stod_SipAccess_SessionStart

Yes

Yes - subscriber data is from the HSS

Statefull

SBB Feature

Requires other features in STOD to work

Prerequisites

  • The subscriber has to have the STOD service enabled (see MMTelStodEnabled)

  • The special number has to be configured in the AS (see DetermineVoltePlanId)

  • Session Ownership Record writing is enabled by other STOD features.

Session Input Variables

Session State variable name Type Comments
CallType

Complex

The calltype

RequestIsForMmtelTransfer

boolean

Get request is for MMtel transfer

MMTelDetermineTransferableSetQueryTime

long

The query time

MMTelIsNewCassandraSession

boolean

Is the session a new Cassandra session

SessionOwnershipACI

Complex

the ACI for session ownership queries

Session Output Variables

Session State variable name Type Comments
MMTelDetermineTransferableSetQueryTime

long

The time for a Session Ownership Facility query to execute

MMTelProceedWithStodTransfer

boolean

True if a transferable session is found, otherwise false

MMTelSessionToTransfer

Complex

Insert the session tracking information into the Session State

MMTelSessionTransferIsLocal

boolean

Set whether the access transfer is local, i.e. does not require proxying to another node

MMTelIsNewSessionOwnershipActivity

boolean

Indicates whether the Session Ownership Activity is re-used or new for this query

Statistics

STODDetermineTargetSession 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 → STODDetermineTargetSession
or with rhino-stats:
"SLEE-Usage.Services.ServiceID[name=sentinel.volte.sip,vendor=OpenCloud,version=2.9.0].SbbID[name=sentinel.volte.sip,vendor=OpenCloud,version=2.9.0].feature.STODDetermineTargetSession"

Name Incremented when…​
Started

the feature runs

FailedToStart

Sentinel VoLTE encounters an error while attempting to start the feature

IssuedWarning

a non-fatal problem is encountered and the feature and issues a warning

FailedDuringExecution

a fatal problem is encountered and the feature cannot execute correctly

TimedOut

the feature takes too long to complete and Sentinel VoLTE aborts execution

StodDetTargetSessionInvoked

The feature has started

StodSessionOwnershipError

The query result event has been received however the result is an error

StodSampleCSessionOwnershipAsyncQueryTimeFailure

The query result event has been received however the result is an error

StodSessionOwnershipSuccess

The query result event has been received with a non error result

StodSampleSessionOwnershipAsyncQueryTimeSuccess

The query result event has been received with a non error result

StodSessionOwnershipQuery

The query has been sent

StodSessionOwnershipNoDataFound

The results of the query showed that there was no session in the database for session transfer

StodFoundTrackedSession

The session to transfer has been found in a database

StodSavedSessionToTransfer

The session to transfer returned non null and has been set into a session state variable

Behaviour

The feature determines whether its invocation was due to a Session Transfer attempt, or response to such an attempt. In the event that the trigger was a transfer attempt then the feature queries the Session Ownership Facility in order to determine the Session to Transfer. This query uses the IMPU of the Served user as the AdditionalKey for the query.

Once the feature has gathered the various Session Ownership Records for the Served User, it selects a Session To Transfer. The first ACTIVE session for the Served User is selected as the Session To Transfer and:

  1. the MMTelProceedWithStodTransfer session state field is set to true

  2. it is saved into the MMTelSessionToTransfer session state field

  3. the MMTelSessionTransferIsLocal session state field is set to true if the OwnerURI for the Session Ownership Record is the same as the executing node’s AS URI

If no ongoing sessions are found for Served User the feature:

  1. responds to the Initial INVITE Request with a SIP 404 Not Found Response

  2. sets the MMTelProceedWithStodTransfer session state field to false

Source

For source code information see MMTel Session Transfer Source Code.

Previous page Next page
Sentinel VoLTE Public Version 2.9.0