DTMF Relay for H.323
Dual-tone multifrequency (DTMF) relay is a mechanism for reliably carrying DTMF digits across VoIP connections. If you need to signal the 0 to 9, *, and # keypad digits (DTMF digits) from your IP phone across your VoIP network, you must configure DTMF relay. DTMF digits are also sometimes called TouchTone digits .
You should configure DTMF relay if you want to
DTMF describes a method of encoding telephone digits using two audio tones. For a conventional telephone keypad in which the keys are arranged in three
There are 16 DTMF digits (arranged as four columns by four rows). In addition to the standard 12 keypad digits0 to 9, *, and #an additional four digits form an extra fourth column of digits called simply A, B, C, and D. Because the ABCD digits are unavailable on a normal phone keypad, you are
Some security-type phones also use the ABCD digits for initial negotiation. You may also see these used in some Cisco CME configuration examples where there is a need to create telephone numbers that can't be directly
Transporting DTMF Digits Reliably Using DTMF Relay
In the simple case of analog phones, the phone keypad digits result in the generation of DTMF audio tones. DTMF signaling works fine for analog phones connected directly to PSTN analog subscriber lines that travel only a relatively short distance to reach a central office (CO) telephone exchange. However, when the analog phone is connected to a VoIP system, and telephone calls are made using compressed voice (for example, G.729 at 8 Kbps), there is a substantial risk that the audio tones of the DTMF digits sent through the compressed voice
Even when you use uncompressed G.711 A-law/µ-law 64 Kbps for VoIP calls, there is still a risk that DTMF digits can get distorted in transit. This is because of the risk of packet loss in the VoIP network. If the network
To work around this issue, you
In the case of the Cisco SCCP IP phones, the digit never exists as an audio signal from the VoIP perspective, because it's directly signaled via the SCCP control protocol. The digit audio that the phone user hears from the phone handset is for the benefit of the phone
Different Forms of DTMF Relay
In general, there are two main ways to signal DTMF events between VoIP gateways: H.245 digit relay and Real-Time Transport Protocol (RTP)-based DTMF digit relay. This is true for both the H.323 and SIP protocols, although the specific details are different.
The H.245 digit relay option sends a message via the H.323 control channel that is associated with the VoIP call. (This is called H.245 digit relay because it uses the H.245 control channel part of the H.323 protocol to signal the digit event.)
The RTP-based DTMF digit relay method carries the digit event through the voice media channel as a special
H.245 Digit Relay
H.245 digit relay comes in two flavors: signal and
In signal mode, two events are sent: one to indicate the start of the digit and one to
Alphanumeric mode has only a single event signal. This results in the regeneration of a fixed-duration DTMF signal (usually 200
H.245 alphanumeric mode is the one that should be used with Cisco CME's IP phones.
RTP Digit Relay
RTP-based digit relay mode also has two flavors:
When you press a keypad digit on an IP phone, you hear a tone in the phone handset that corresponds to the digit you press. Although you hear this audio tone, the far-end party that your call is connected to doesn't. The IP phone sends the keypad audio signal only to the phone's handset (or speaker). It does not insert the audio digit indication into the outgoing voice packet stream. When you press the keypad digit on an SCCP-based IP phone, the phone sends a control message to the Cisco CME router via the SCCP protocol. Because the digit press originates from the phone as a control channel message, the SCCP digit message is simply converted into an H.245 alphanumeric message to send this across H.323 VoIP.
The SCCP digit press event does not indicate the duration of the keypad button press. This means that the H.245 signal method cannot be used, because the SCCP phone does not provide digit-start and digit-stop information. Also, the SCCP phones do not natively support either the RFC 2833 or cisco-rtp RTP-based digit relay mechanisms.
For you to signal DTMF keypad digits across H.323, you need to configure your VoIP dial peers as shown in Example 7-11.
Example 7-11. DTMF Relay Configuration
Router# show running-config dial-peer voice 510200 voip destination-pattern 51055502.. session target ipv4:10.1.1.1 dtmf-relay h245-alphanumeric
If you are using your Cisco CME system in a SIP network, you have to use the RFC 2833 DTMF relay method where possible. Cisco CME 3.2 (and later) software provides automatic conversion from the SCCP control channel DTMF messages received from the SCCP IP phone into standard SIP RFC 2833 RTP digits.