[Asterisk-Users] How to detect DTMF and change if needed

Pedro traci.asterisk at gmail.com
Mon May 23 11:52:17 MST 2005


I have done some searching and not sure this is even possible, but
here it goes...

**Scenario**
Let's say you have an asterisk server that you use to connect to a SIP
provider that you push your PSTN-bound calls to using g711 and
out-of-band DTMF.  The SIP phones in use are Cisco 7960's and are set
to also use out-of-band DTMF.  For the most part, everything works
great.

However, a few numbers that are dialed and pushed to the SIP provider
that get connected to a remote IVR system seem to have DTMF issues
where no digits are recognized.  A call to the SIP provider confirms
that certain calls get routed to one carrier while others get routed
to other carriers and the numbers that are showing the DTMF issues are
the carriers that they peer with that do not support out-of-band DTMF
with the g711 codec.  When asked if they could translate our
out-of-band DTMF signals to a compatible format that their carrier
requires, they bascally say that while that is possible, they will not
do it.

**The Question**
So here is my question - is it possible to detect the DTMF mode of the
call and if out-of-band is not supported, can you change it to inband
as a last resort?

Is there a way to set priority for DTMF signalling like you can do
with codecs?  I have tried that (see below) but it seems to default to
inband (is this even a proper way to handle 2 DTMF modes?).

[sipprovider]
type=friend
host=xxx.xxx.xxx.xxx
disallow=all  
allow=ulaw
maxexpirey=15
dtmfmode=rfc2833
dtmfmode=inband
nat=no
insecure=very
canreinvite=no

I have searched and searched and the closest thing that I have found
is "SIPDtmfMode" but from what it looks like it needs to be initiated
before the call is placed.

By the way - the reason inband is not being used is that digit
accuracy is terrible with the inband setting.

Any thoughts are appreciated.



More information about the asterisk-users mailing list