Configuring channels for RFC 2833 support

Applications create MSPP service channels by invoking mspCreateChannel. By default, MSPP channels do not implement RFC 2833 compliant inband DTMF carriage. To create channels that support RFC 2833 capabilities, the application must enable these capabilities with the FilterAttribs parameter in the channel address structure, and configure how the capabilities are implemented with parameters in the channel parameters structure.

When applications create MSPP channels, they specify the following channel address parameters in the following structure:

typedef struct tag_MSP_CHANNEL_ADDR
{
    DWORD            size;
    DWORD            nBoard;     
    MSP_CHANNEL_TYPE channelType;
    WORD             FilterAttribs; 
} MSP_CHANNEL_ADDR;

By setting the FilterAttribs parameter in the channel address structure to MSP_FCN_ATTRIB_RFC2833, the application enables RFC 2833 capabilities for the channel. The following code sample shows how to specify the FilterAttribs parameter at channel create time to have the channel support RFC 2833 capabilities:

MSP_CHANNEL_ADDR   MsppVoiceChanAddr

if (EnableInBandDtmf)
          MsppVoiceChanAddr.FilterAttribs = MSP_FCN_ATTRIB_RFC2833;
else
          MsppVoiceChanAddr.FilterAttribs = 0;

mspCreateChannel(ctahandle, &MsppVoiceChanAddr, &MsppVoiceCHannelParms, MspHandle)

 

If the application does not enable RFC 2833 capabilities with the FilterAttribs parameter when it creates an MSPP channel, the functionality cannot be enabled on the channel at a later time.

The FilterAttribs parameter enables RFC 2833 capability support on the channel according to default settings. The default settings specify the following functionality:

Data path

Default MSPP channel processing for inband DTMF

Voice data received from PSTN

  • Detects DTMF tones in voice data streams received from DS0 endpoints.

  • Transfers DTMF tone information only through RFC 2833 compliant DTMF packet streams (that is, it does not also send the data as encoded voice).

  • Does not generate MSPEVN_DPF_DTMF_REPORT unsolicited events when it detects DTMF tones.

Voice data received from IP network

  • Receives RFC 2833 compliant packets.

  • Generates events indicating the tone detected.