I have a bunch of Polycom 501 IP phones at work. They seem to sometimes send the DTMF tone and sometimes not. We tested it with a cell phone and when a button is pressed very shortly, you can hear it, when it is pressed and held for a normal amount of time (sometimes very slightly over) it does not come through. Tones are not heard between phones on the network either. What would be causing this?
Also, what is a reasonable amount of jitter to experience?
Couple things… I am by no means an expert, but I have dealt with a lot of DTMF stuff recently.
1 - Listening to the tones isn’t always the best way to debug whether DTMF is working. The best laymans test you can do is dial into something which has an IVR and see if you can navigate the DTMF menu properly.
2 - The fact that you aren’t hearing tones on your SIP phones is normal. SIP phones have the luxury of NOT concerning themselves with what an actual DTMF tone is. They just know how to encode correct data in the RTP stream. So basically your phone is probably receiving the DTMF messages in the RTP stream, it just isn’t converting those messages to an audible tone for you.
Are you doing inband or RFC2833 out to your SIP gateway? there are some settings you can tweak in asterisk which will allow you to increase or decrease the duration of a DTMF tone. You may want to try and play with that to see if it sounds better…
I realized that listening wasn’t the best way, now.
The DTMF works with most IVR systems, but there is one in particular that does not work that I test with.
I have tried the 4 different types of DTMF that Asterisk offers: inline, info, auto & rtc2883 (or whatever that one is)!
Only using info will make this IVR system I test with work, but using info breaks our voicemail. I know that this was funky on 1.2, but we have 1.4. How can I fix this?
Is there a way to make Asterisk use info when dialing out and a different method internally?
YES THERE IS!!! Use the application “SIPDtmfMode()” in your extensions.conf file. Place the DTMF mode you want to use in the parenthesis. Thanks!
I was having the exact same problem. However, what I found was that when I set dtmfmode to inband in sip.conf, both voicemail and external IVR systems worked.