I’ve noticed some strange behavior with DTMF with SIP on asterisk in two different configurations.
Both Asterisk systems are running asterisk with SIP, one has about a month old CVS HEAD on Broadvoice, the other has asterisk 1.0.9 on Teliax.
Broadvoice uses inband dtmf and teliax by default uses rfc2833. We’re switching the teliax system to use inband to see if it helps at all.
Both systems exhibit the problem where dtmf tones are often read multiple times, for example, pressing 208 can sometimes be interpreted as 2208, 2008, or 2088. It seems to work better if you press the numbers slower, leaving a 0.5 to 1 second delay between each digit pressed.
I have experienced this both dialing out from a sip phone to an external IVR system as well as dialing in from an external phone to the internal Asterisk IVR system, it all seems to be related to asterisk’s handling of SIP and DTMF. Is it really this unreliable to use DTMF with Asterisk+SIP?
I’ve been trying to resolve this problem for the last month. With my luck it is probably our provider Vitelity.
I tried to fix it in an old 1.2 or earlier asterisk without luck so I upgraded to 1.4. The problem is somewhat different in 1.4 since it was only incoming DTMFs that were problematic before and now I have outgoing double DTMF problems too.
This thread indicates it might be echo cancellation forums.digium.com/viewtopic.php? … t=zap+dtmf, which can be turned off in zapata.conf, I’m not sure how you would unplug the echo cancellation module (but I didn’t set up the hardware).
Agreed, it is better to use RFC2833, since switching to it the problem went away, although others turned up, but we are working on then now which i believe we can fix any way.
Also have a look at your RelaxDTMF option in your SIP.CONF file, have it either way as below;
relaxdtmf=yes
;relaxdtmf=no
I have the both of them there for testing purposes, although you may not need to have them both, it just makes it easier for me to work with, but that is a personal preference.
Having it relaxed could either make the problem go away or make it worse, it all depends really.