Building a Bearer Control Message

To build a bearer control message:

  1. Initialize the Bearer Control Event structure.

  2. Build the Bearer Control message.

This topic provides instructions for completing these tasks.

Initialize the Bearer Control Event structure

The following structure defines the information elements that are required in the Bearer Control message to be formatted:

typedef struct _siBearerControlEvnt
{

   SiActionIndicator              actionIndicator;    
   SiCodecs                       codecsList.         
   SiBearerNetworkCharacteristics networkCharacteristics;
   SiBearerControlInformation            bearerControlInfo;
   SiBearerControlTunnelling             bearerTunnelling;
   SiBearerControlUnitIdentifier  bearerUnitId;
   SiCodecs                       singleCodec;
   SiBackboneNetworkIdentifier           backboneNetworkId;  
   SiInterworkingFunctionAddress         iwfAddress;         
} SiBearerControlEvnt;

Information Elements

Name Description

actionIndicator

Action indicator. Specifies the action associated with the message, and in particular, the bearer setup direction (forward, backward).
codecsList Codecs list offered for codec negotiation.
networkCharacteristics Bearer network connection characteristics.
Supports IP/RTP only.
bearerControlInfo Bearer control information. Contains the bearer control tunneling protocol (IPBCP) data unit.
bearerTunnelling Bearer control tunneling indicator. Specifies that tunneling is to be used.
bearerUnitId Bearer control unit identifier. Consists of the Network ID field (not currently supported) and the local BCU-ID field.
singleCodec Single codec selected for codec negotiation.
backboneNetworkId Backbone network connection identifier. Bearer specific and is specified in the relevant Supplement 23 to Q-Series Recommendations.
iwfAddress Interworking function address.
In NSAP format according to Annex A/X.213 | ISO/IEC 8348 and its Amendment 1.

For more information, refer to BCF Library Structures.

Init Functions

Several init functions are offered to initialize Bearer Control event structures with default values, specifically to support the Bearer Control reference call flows supported by vmsamp_ip324m_bicc:

Init functions for... Prototypes
Fast Forward Bearer Setup Request and Answer

DWORD bcfInitFastForwardBearerSetupRequest (SiBearerControlEvnt *bearerControlEvnt, IPBCP_PARAM *ipbcpParam);

DWORD bcfInitFastForwardBearerSetupAnswer (SiBearerControlEvnt *bearerControlEvnt, IPBCP_PARAM *ipbcpParam);

Delayed Forward Bearer Info Request and Answer

DWORD bcfInitDelayedForwardBearerInfoRequest (SiBearerControlEvnt *bearerControlEvnt, U8 codecList)

DWORD bcfInitDelayedForwardBearerInfoAnswer (SiBearerControlEvnt *bearerControlEvnt, U8 codecList, U8 selectedCodec)

Delayed Forward Bearer Setup Request and Answer

DWORD bcfInitDelayedForwardBearerSetupRequest (SiBearerControlEvnt *bearerControlEvnt, IPBCP_PARAM *ipbcpParam);

DWORD bcfInitDelayedForwardBearerSetupAnswer (SiBearerControlEvnt *bearerControlEvnt, IPBCP_PARAM *ipbcpParam);

After calling init functions, any SiBearerControlEvnt structure field can be customized by the application implementing the bearer control logic.

Build the Bearer Control Message

After initializing the Bearer Control Event structure, use the following function to build the Bearer Control Message:

DWORD bcfBuildBearerControlMessage (U8 *outBuf, U32 outBufSize, SiBearerControlEvnt *inBearerControl, U32 *actualBcfSize)