The calls are coming from land based lines. Traditional POTS (not cable company). Caller is calling into FS and providing those DTMF. I can reproduce on my POTS line (3000' from CO) and there is no discernable noise on the line. The call comes into the media gateway and then goes sip to FS. I can reproduce the problem just by starting FS version from the latest trunk. And then I can eliminate the problem by restarting the FS version 12790. In both test cases, the media gateway remains constant. -----Original Message----- From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Alberto Escudero Sent: Tuesday, April 27, 2010 9:08 AM To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] session.steamFile misses DTMF event for first few seconds How are you receiving those DTMFs, inbound or outbound? Are those calls coming from a mobile network (GSM). We have experienced lots of problem with DTMF detection in noisy lines. /aep -- Stopping junk mailers is good for the environment
I recently upgraded from FS 12790M to svn 17188. When I did, I noticed that session.streamFile behaved differently and I started having problems with my IVR app.
With the upgraded FS, I have a problem with streamFile no firing on the DTMF and calling the callback function for the first few seconds of the wav file playback. It behaves as though it does not hear the DTMFs. If I wait for 2 seconds or so of the wav file and then DTMF, streamFile catches the DTMF and all is well. If I key as soon as I hear the wav file start, streamFile just keeps playing the wav and does not call the callback function.
When I revert back to the previous version of FS, streamFile always fires the callback right away no matter how quickly I press the first DTMF as the wav file starts to stream out.
The wave file is RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz
The snippet of js code I am using is as follows.
if(session.ready()) { session.answer(); session.sleep(750); while(session.ready()) { session.sleep(500); session.flushDigits(); // clear out input buffers
if((pin=session.streamFile(snd_prefix+"/enter-acct-numbers.wav",onlyDigi
ts_cb,""))===false) { pin=session.getDigits(pinmax,pinterm,pinwait); } else { pin+=session.getDigits(pinmax-1,pinterm,pinwait); } // more code here.. }
Do I need to change the way I use streamFile in the later release? _______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org