CUCME and DTMF Relay

DTMF (dual tone multi-frequency) is in simpler terms, the tones that are generated when you press a digit on the keypad.  These are used to navigate voicemail prompts, auto-attendants, IVRs, and the like after a call has already been established. 

The trouble with sending DTMF in-band is that the codecs used may distort the DTMF tones and subsequently make them unrecognizable to the receiving system or device.  DTMF-relay works around this shortcoming by sending the tones out-of-band, or seperate from the encoded voice stream. 

DTMF Method for H.323

For IP phones on H.323 networks, DTMF is relayed using the H.245 alphanumeric method, which is defined by the ITU H.245 standard. This method separates DTMF digits from the voice stream and sends them as ASCII characters in H.245 user input indication messages through the H.245 signaling channel instead of the RTP channel.

Note that out-of-band DTMF is required only for SCCP phones, SIP phones natively support in-band DTMF relay as defined in RFC 2833.

! Sample Configuration
configure terminal
dial-peer voice 101 voip
  dtmf-relay h245-alphanumeric

SIP In-band DTMF (RFC 2833)

To use remote voice-mail or IVR applications on SIP networks from Cisco Unified CME phones, the DTMF digits used by the Cisco Unified CME phones must be converted to the RFC 2833 in-band DTMF relay mechanism used by SIP phones. The SIP DTMF relay method is needed in the following situations:
  • When SIP is used to connect a Cisco Unified CME system to a remote SIP-based IVR or voice-mail application.
  • When SIP is used to connect a Cisco Unified CME system to a remote SIP-PSTN voice gateway that goes through the PSTN to a voice-mail or IVR application.

SIP Trunk Support

To use voice mail on a SIP network that connects to a Cisco Unity Express system, which uses a nonstandard SIP Notify format, the DTMF digits used by the Cisco Unified CME phones must be converted to the Notify format. Additional configuration may be required for backward compatibility with Cisco CME 3.0 and 3.1. 

!  Sample configuration
configure terminal
dial-peer voice 101 voip
dtmf-relay rtp-nte
dtmf-relay sip-notify
notify telephone-event max-duration 2000
registrar ipv4: expires 3600 secondary
retry register 10
timers register 500

Verifying SIP Trunk Support

1.  show sip-ua status

SIP User Agent Status
SIP User Agent for UDP :ENABLED
SIP User Agent for TCP :ENABLED
SIP User Agent bind status(signaling):DISABLED
SIP User Agent bind status(media):DISABLED
SIP early-media for 180 responses with SDP:ENABLED
SIP max-forwards :6
SIP DNS SRV version:2 (rfc 2782)
NAT Settings for the SIP-UA
Role in SDP:NONE
Check media source packets:DISABLED
Maximum duration for a telephone-event in NOTIFYs:2000 ms
Redirection (3xx) message handling:ENABLED
SDP application configuration:
 Version line (v=) required
 Owner line (o=) required
 Timespec line (t=) required
 Media supported:audio image
 Network types supported:IN
 Address types supported:IP4
 Transport types supported:RTP/AVP udptl

2.  show sip-ua register status

You'll find this command very useful as it shows the status of local registrations, displaying E.164 numbers.

3.  show sip-ua statistics

This is also a very essential troubleshooting command.  This gives you a summary of the register statistics.

4.  show sip-ua timers

This command echos the values configured with the "timers register" command, focusing on the waiting times before register requests are given.

More detail can be found here.

No comments:

Post a Comment