The B2BUA feature provides back-to-back user agent functionality to Sentinel.
Establishment to termination
The B2BUA feature divides the communication channel into two legs and mediates all SIP signaling between both ends of the session, from establishment to termination:
-
On an initial incoming SIP request, the feature creates an outgoing leg and links it to the triggering leg.
-
On all incoming SIP messages, if the triggering leg is linked, the feature adds an outgoing SIP message to the linked leg’s message queue, and sends it after the feature scripts have completed.
-
If configured to do so, on an incoming successful final response to an initial INVITE on the leg, the feature will send an early ACK, and will subsequently not B2BUA the ACK received from the linked leg. An early ACK will not be sent if there hasn’t been a completed SDP negotiation (offer & answer).
This feature is a critical system feature, many features rely on the functionality and success of this feature, including the B2BUA SCUR, B2BUA ECUR and B2BUA IEC, and SDP Comparison features. See Sentinel SIP Feature Execution Points for more about running critical features. |
Details
Feature script name |
B2BUA |
---|---|
Applicable contexts |
SIP service |
SAS Support |
Yes |
Prerequisite features |
none |
Feature execution points |
|
Feature responses
Response | Reason |
---|---|
featureHasFinished |
Feature has finished. |
featureFailedToExecute |
Feature encountered a fatal error and was unable to continue. |
featureIssuedWarning |
Feature encountered a non-fatal error during execution. |
B2BUA configuration
The configuration for the B2BUA feature is provisioned in the following table:
Parameter | Type | Description |
---|---|---|
PreserveCallIdOverB2BUA |
Boolean |
If true, the outgoing dialog will use the same SIP Call-ID as the incoming dialog. |
SendEarlyInitialInviteACK |
Boolean |
If true, on receiving a 2xx Response to an Initial INVITE request, an ACK will be sent on the dialog, and the incoming ACK will not be sent on the linked leg. |
Statistics
Statistic | When incremented |
---|---|
FailedToCreateOutgoingLeg |
The feature encounters an error while attempting to create the outgoing leg. |
FailedToCreateOutgoingMessage |
The feature encounters an error while attempting to create an outgoing request on a newly created leg. |
FailedToForwardMessage |
The feature encounters an error while attempting to forward a message across the B2BUA. |
FailedToLinkLegs |
The feature encounters an error while attempting to link a newly created outgoing leg to the original incoming leg. |
Started |
The feature is invoked. |
FailedToStart |
The feature fails to start. |
IssuedWarning |
The feature encounters a non-fatal error and alerts the core. |
FailedDuringExecution |
The feature encounters any fatal error and alerts that core. |
TimedOut |
The feature fails to complete execution within the allowable time frame. |
Provisioning interfaces
The feature is provisioned using the Sentinel Features REST API or web interface.