Tony Mountifield
2007-Mar-02 08:56 UTC
[asterisk-users] DTMF detection problems on PRI channels?
I am using Asterisk 1.2 with a TE410P connected to E1 PRI trunks. The application relies on a DTMF digit string sent by the phone after the call has connected. This DTMF is detected by Asterisk under the control of WAIT FOR DIGIT commands send from an AGI processor over a FastAGI connection. Usually the DTMF is detected without error, but on a significant minority of calls, Asterisk is missing digits. In order to diagnose this, I modified chan_zap to save the received Alaw audio direct to a file, BEFORE the dsp is called for DTMF detection. I needed to do this because the detection routines do not pass the DTMF audio on, so using the standard recording or monitoring commands from the dialplan does not actually capture the tones as received from the wire. This capturing is turned on and off by an AGI command, so that my AGI program can turn it on before waiting for the DTMF string and off again afterwards. Examining this captured audio in an audio editor such as Goldwave does not provide any clue why the digits might have been missed. On most occasions the digits are clear, long enough and well spaced. Yet Asterisk still misses them. The system does not seem to have been heavily loaded at the time either. Can anyone offer any clues as to why this might be the case, and what I could do to solve it? Hacking the code doesn't bother me, although I know very little about DSP. Last I knew, the TE411P board could do on-board DTMF detection, but that the newer TE412P could not. Is that still the case? Cheers Tony -- Tony Mountifield Work: tony@softins.co.uk - http://www.softins.co.uk Play: tony@mountifield.org - http://tony.mountifield.org
Michelle Dupuis
2007-Mar-02 09:22 UTC
[asterisk-users] DTMF detection problems on PRI channels?
Sounds like the DTMF tones are too far from spec, or noisy. Is the DTMF being transcoded somewhere along the way? If you have time to kill....try to separate the two frequencies in your software (I don't know goldwave) - are both present and clean and same amplitude and on freq? Remove the two frequencies and what's left? If there's a lot of noise, then the other party is doing a bad job encoding the DTMF. Otherwise we can start to chase your machine causes Michelle Dupuis Technical Support Specialist Generation Software - Linux and Asterisk solutions and support. Visit us at www.generationd.com -----Original Message----- From: asterisk-users-bounces@lists.digium.com [mailto:asterisk-users-bounces@lists.digium.com] On Behalf Of Tony Mountifield Sent: Friday, March 02, 2007 10:56 AM To: asterisk-users@lists.digium.com Subject: [asterisk-users] DTMF detection problems on PRI channels? I am using Asterisk 1.2 with a TE410P connected to E1 PRI trunks. The application relies on a DTMF digit string sent by the phone after the call has connected. This DTMF is detected by Asterisk under the control of WAIT FOR DIGIT commands send from an AGI processor over a FastAGI connection. Usually the DTMF is detected without error, but on a significant minority of calls, Asterisk is missing digits. In order to diagnose this, I modified chan_zap to save the received Alaw audio direct to a file, BEFORE the dsp is called for DTMF detection. I needed to do this because the detection routines do not pass the DTMF audio on, so using the standard recording or monitoring commands from the dialplan does not actually capture the tones as received from the wire. This capturing is turned on and off by an AGI command, so that my AGI program can turn it on before waiting for the DTMF string and off again afterwards. Examining this captured audio in an audio editor such as Goldwave does not provide any clue why the digits might have been missed. On most occasions the digits are clear, long enough and well spaced. Yet Asterisk still misses them. The system does not seem to have been heavily loaded at the time either. Can anyone offer any clues as to why this might be the case, and what I could do to solve it? Hacking the code doesn't bother me, although I know very little about DSP. Last I knew, the TE411P board could do on-board DTMF detection, but that the newer TE412P could not. Is that still the case? Cheers Tony -- Tony Mountifield Work: tony@softins.co.uk - http://www.softins.co.uk Play: tony@mountifield.org - http://tony.mountifield.org _______________________________________________ --Bandwidth and Colocation provided by Easynews.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users