Transferring DTMF digits according to RFC 2833

You can transfer DTMF digits according to RFC 2833 through audio pass-through channels, as well as through encoder and decoder channels. The procedure for transferring DTMF digits differs by channel type, as described in this topic.

Transferring DTMF digits through audio pass-through channels

This subsection describes how to transfer DTMF digits through audio pass-through channels.

From the PSTN side to the IP side

Use h324PassthruPlayRFC2833 to transfer a DTMF digit through an audio pass-through channel from the PSTN side to the IP side of the 3G-324M Interface. This function does the following:

The following example shows how to transfer a DTMF digit in this way:

{
    DWORD result;
    WORD nEventID, nEventDuration;
    nEventID = ‘3’; // The keypad digit ‘3’
    EventDuration = 80; // Digit pressed for 80 ms.
    result = h324PassthruPlayRFC2833(GwConfig[0].MuxEp.hd, nEventID, EventDuration);
    if (result != SUCCESS)
        printf("ERROR: h324PassthruPlayRFC2833() failed.\n");
}

From the IP side to the PSTN side

When a DTMF digit arrives from the IP side of the 3G-324M Interface in RFC 2833 encapsulation, the receiving RTP endpoint conveys it to the application in an MSPEVN_RFC2833_REPORT event. It is the responsibility of the application to forward that digit to the 3G-324M terminal through an H.245 user indication message (h324UserIndication), if required.

The DTMF represented by the MSPEVN_RFC2833_REPORT is not forwarded automatically to the 3G-324M terminal in the audio channel because that channel carries compressed audio (AMR or G.723.1). This is unreliable for transmission of DTMF tones.

For more information about the MSPEVN_RFC2388_REPORT event, see the Fusion Developer's Manual.

Transferring DTMF digits through audio encoder and decoder channels

The ability to transfer DTMF digits according to RFC 2833 through audio encoder and decoder channels is provided by Fusion MSPP functionality. For information about RFC 2833 support for these channel types, see the Fusion Developer's Manual.