[asterisk-dev] DTMF detection and generation code

Steve Underwood steveu at coppice.org
Sun Apr 23 09:55:49 MST 2006


Chris Lee wrote:

>
> Steve Underwood wrote:
>
>> Anything which cares about the length of a DTMF digit, other than 
>> meeting the requred minimum, is badly broken.
>
>
> Maybe so, but why should we decide to remove information from the 
> communication?
> We are moving forward here, duration is information that can be used 
> to advantage by applications if it is received, why remove Asterisk 
> from the pool of systems that can cater for such applications, if they 
> are developed?
>
> I agree that a minimum duration should be produced but, if the button 
> is held down longer, then the other end may want to know.
>
> Disclaimer: I am in the process of developing such an application; 
> Asterisk can not work for us yet but other products work well. We use 
> Cellular/PSTN (various networks) to ISDN to IP to IVR without any user 
> impacting variance in tone length detection, variance of +-80ms is 
> acceptable for our application.
> So our app is not broken unless we try to use Asterisk to drive the 
> calls.

With most cellular base stations each press of the buttons on the phone 
produces a fixed length DTMF pulse, with a fixed silence following it. 
If you press keys in quick succession, they are buffered up, and played 
out as tones at the pace the base station sees fit. Typically they make 
the tones very long, for some reason. 0.5 seconds in many cases. I think 
your application sounds broken by design. I've been through this before, 
trying to build things which require rhythmic input. It just doesn't 
work, unless your application is limited to plain old analogue land line 
phones.

Steve




More information about the asterisk-dev mailing list