Skip to main content

__DTMF Variables

About

These variables change the way FreeSWITCH behaves when processing DTMF digits.

Click here to expand Table of Contents

pass_rfc2833

boolean If set, it passes RFC 2833 DTMF digits from one side of a bridge to the other, untouched. If unset, it decodes and re-encodes them before passing them on.

TODO RFC 2833 is obsoleted by RFC 4733.

Usage

<action application="set" data="pass_rfc2833=true"/>

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.

dtmf_type

string For inband DTMF, start_dtmf must be used in the dialplan.

Usage

<action application="set" data="dtmf_type=info"/>
<action application="set" data="dtmf_type=rfc2833"/>

TODO RFC 2833 is obsoleted by RFC 4733.

<action application="set" data="dtmf_type=none"/>

drop_dtmf

boolean Set this on an inbound channel before answer or on an outbound channel before the bridge/originate in order to prevent DTMF events from being sent to the channel.

Only tested with RFC2833, may also work for INFO / inband. See FS-4769 -Authenticate to see issue details Commit 60f7849cbe72.

TODO RFC 2833 is obsoleted by RFC 4733.

Usage

<action application="set" data="drop_dtmf=true"/>
<action application="answer"/>
<action application="export" data="nolocal:drop_dtmf=true"/>
<action application="bridge" data="sofia/internal/100@1.2.3.4"/>
<action application="bridge" data="{drop_dtmf=true}sofia/internal/100@1.2.3.4"/>

drop_dtmf_masking_digits

dtmf digit If drop_dtmf is true play specified tone for every tone received.

Usage

Each DTMF tone that is entered into the a-leg will be dropped and a "d" sent to the b-leg.

<action application="set" data="drop_dtmf=true"/>
<action application="set" data="drop_dtmf_masking_digits=d"/>

To drop and replace DTMF on the b-leg use:

<action application="export" data="nolocal:drop_dtmf=true"/>
<action application="export" data="nolocal:drop_dtmf_masking_digits=d"/>

drop_dtmf_masking_file

string If drop_dtmf is true, play specified file for every tone received.

Usage

Each DTMF tone that is entered into the a-leg will be dropped and the file dtmf_masking_tone played to the b-leg.

<action application="export" data="drop_dtmf=true"/>
<action application="export" data="drop_dtmf_masking_file=/etc/freeswitch/Sounds/dtmf_masking_tone"/>

To drop and replace DTMF on the b-leg use

<action application="export" data="nolocal:drop_dtmf=true"/>
<action application="export" data="nolocal:drop_dtmf_masking_file=/etc/freeswitch/Sounds/dtmf_masking_tone" />