Skip to main content

mod_dptools: start_dtmf


Table of Contents (click to expand)


0. About

You can use start_dtmf in a dialplan to enable in-band DTMF detection (i.e. the detection of DTMF tones on a channel). You should do this when you want to be able to identify DTMF tones on a channel that doesn't otherwise support another signaling method (like RFC2833 or INFO).

A, B, C, D tones

Make sure to expect (and handle) the DTMF tones A , B , C , and D; these are very rare nowadays but they are still possible to send (e.g., someone has an old device with the extra ABCD column). See DTMF for more.

TODO RFC 2833 is obsoleted by RFC 4733.

1. Example

<!-- a sample IVR -->
<extension name="ivr_demo">
<condition field="destination_number" expression="5000">
<action application="answer"/>
<action application="start_dtmf" />
<action application="ivr" data="demo_ivr"/>
</condition>
</extension>

The start_dtmf line listed above starts the start_dtmf application on this channel to allow for DTMF detection.

Do not use the start_dtmf application and the mod_dptools: start_dtmf_generate application together. If both are running at the same time you will cause a feedback loop to occur within FreeSWITCH itself, such that a DTMF tone from a caller will result in repetitive DTMF tones being identified by FreeSWITCH.

If using in conjunction with ring_ready, make sure that ring_ready is called first or else it may not work.

This application uses Media BUG.

2. See Also