[Freeswitch-users] Block DTMF audio tones (non-RFC2833) on bridged calls?

Andy Newlands andynewlands at gmail.com
Thu Sep 24 15:47:50 UTC 2020


I want to prevent DTMF audio tones (I.E. not RFC2833 or INFO)  from being
passed across to the other leg of a bridged call, while still being able to
detect them at an application level.

I have no problem detecting the digits - "start_dtmf" works just fine for
that.  The problem is stopping the tones from being heard on the opposite
call leg.

I have written a simple FS application module to capture and process tones,
and this works well in all scenarios for my application with RFC2833 DTMF
(fyi: I use switch_core_event_hook_add_recv_dtmf() ), but not when the
incoming call is sending audio DTMF tones - the app detects them fine, but
the other party also hears them.

I can't see any way of achieving this using standard DP apps/vars.  I've
also looked (high level) through the source code around media bugs and in
switch_ivr_bridge and can't see any obvious place to stop the DTMF tone
frames from getting through the bridge.  In fact, it seems to me (at this
point in time) that maybe the frames are sent before DTMF detection takes
place (is that true?) - I really wish there was more documentation around
the source code :-)

If anyone can tell me how to achieve this using standard DP apps/vars, that
would be great.  However, I'm quite happy to make code changes - in my
module or the FS code - to get this working, if someone could just point me
in the right direction...

NOTE: We have no control over the use of audio tones for DTMF - this is
forced upon us by an external provider (TalkTalk - UK).

Kind regards,

Andy
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20200924/9160749c/attachment.html>


More information about the FreeSWITCH-users mailing list