Hi Stephen, I tested the system using both a desk phone and my mobile phone. The mobile phone had no problem, no matter the time between key presses, for the reason you mention below (it sends the tones for a specific and consistent period of time). The desk phone did not do this and thus resulted in the problem. As for the actual speed between the tones, I'm afraid I couldn't measure that, but it was quite fast with no pauses between key presses.
When I noticed this, I knew that I could either send the tones in a reasonable amount of time, or use a better phone. Unfortunately, we are bound to get users who will type fast and wonder why the line has gone dead on the other end. We are running a small competition for people here, so have no control over their type of phone. I tested the desk phone with a well known phone banking service here (which requires DTMF tones), and it had no problem with fast sending from the phone. It could be the hardware involved, I suppose. I thought initially it was a buffering problem in Asterisk. The X100P driver could be sending garbage to the application if it cannot decipher the tones quick enough, thus resulting in the problem. When I get more time, I will delve deeper into the code and attempt to find the source of the problem. I thought someone else might have encountered this and would save me some time :) As for Java as a scripting language, I do most of my development in it, so it was a matter of convenience. I also had reusable database code to access some internal data that is required for this project. You are right about scalability, though. The AGI script will create a new JVM each time it is run. A lightweight client (in a language other than Java) that establishes a connection to a multi-threaded Java server would allow scalability, but that sounds like a lot of work for two incoming lines :) Cheers for the feedback, Alan. Steven Critchfield wrote: What do you consider too quickly? I think the standard is for the tone to be atleast 80 ms, but most hardware will tolerate as low as 45 ms. If you drop below this amount you are not going to get decoded period. Also on a phone that lets you send such short DTMF codes, you may run into a problem of them not generating a true DTMF code. I have noticed screechings out of cheap phones before it settles on a proper tone, and sometimes wiggling the key made the tone variable. On a slightly nicer phone like the one I have on my desk, it seems to send a constant length tone no matter how short or long the keypress was for. I even can type ahead of it and it will eventually catch up to me. In this arrangement and with a perl based AGI script, I have never received a bad DTMF decode. I also use 'wait for digit' as I have need to build my own buffer that is clearable. Also do you feel that java will be able to scale on your current hardware to a point that you are comfortable. I know that I start having trouble on my current hardware at around 18-20 concurrent perl apps running, but only when they are moving lots of data, or during initial startup. _______________________________________________ Asterisk-Users mailing list [EMAIL PROTECTED] http://lists.digium.com/mailman/listinfo/asterisk-users
