__DTMF Variables
About
These variables change the way FreeSWITCH behaves when processing DTMF digits.
Click here to expand Table of Contents
- 1 pass_rfc2833
- 1.1 Usage
- 2 dtmf_type
- 3 drop_dtmf
- 4 drop_dtmf_masking_digits
- 5 drop_dtmf_masking_file
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" />