Hello, I'm not sure what this setting is called so please forgive my lack of terminololgy in this case. What I'm trying to do is simply extend the time before the system interrupts the entry of data before saying somethign like "I don't understand".
For example if I enter an amount two letter field and I start out with 1, pause for a slit second, then enter other numbers the system hurries and throws an error. How do I slightly extend the amount of time during the entry of data by the user before the system hurries and moves to another function?
We've Moved! Please visit our new and improved forum over at our new portal: https://portal.plumvoice.com/hc/en-us/community/topics
Extending Delay Allowed Time
sample IVR code using the inter-digit timeout setting
I believe what you're looking for is the inter-digit timeout setting for DTMF entry. You can alter this setting with the IVR tag, <property>:
This IVR sample would tell the IVR to wait up to 2 seconds between key presses before presuming that the caller has completed data entry.
Code: Select all
<property name="interdigittimeout" value="2s"/>
Last edited by support on Thu Feb 25, 2010 12:29 pm, edited 5 times in total.
Well, one more question then. Other than the system throwing the error, is there a way for me to throw a custom error giving the user an option to lets say "press 2" to start the entry process over? I ask because the system just sayings something like "Invalid entry" and doesn't say anything else (just goes silent). How can I customize this message? Thanks again!
IVR collects digit and caller waits too long to enter digit
So it depends how the IVR error is occurring.
If an entry is not matching your specified IVR grammar, you can put executable instructions inside of a <nomatch> block within your field and the contents therein will be automatically executed. If you want the field's initial prompt to be restated, simply put a <reprompt/> tag inside your <nomatch> block, and the prompt will be played again.
The other IVR error that might be occurring is where the IVR has collected a digit and the caller waits too long to enter the next digit so that second digit ends up being considered an input for the next field. There are two ways (in addition to lengthening the interdigittimeout value) to manage this situation. First you can put a non-bargeable prompt in the <filled> tag. Second, you can make the interdigittimeout really long (say 5 seconds) but prompt the caller to terminate all input with the # key.
If an entry is not matching your specified IVR grammar, you can put executable instructions inside of a <nomatch> block within your field and the contents therein will be automatically executed. If you want the field's initial prompt to be restated, simply put a <reprompt/> tag inside your <nomatch> block, and the prompt will be played again.
The other IVR error that might be occurring is where the IVR has collected a digit and the caller waits too long to enter the next digit so that second digit ends up being considered an input for the next field. There are two ways (in addition to lengthening the interdigittimeout value) to manage this situation. First you can put a non-bargeable prompt in the <filled> tag. Second, you can make the interdigittimeout really long (say 5 seconds) but prompt the caller to terminate all input with the # key.
Code: Select all
...
<field name="myfield">
<property name="interdigittimeout" value="5s"/>
<grammar>
1|2|3|4
</grammar>
<prompt>
Please enter 1, 2, 3, or 4 followed by the pound key.
</prompt>
<nomatch>
<prompt>
You did not enter 1, 2, 3, or 4.
</prompt>
<reprompt/>
</nomatch>
<filled>
<prompt bargein="false">
Thanks for typing in <var expr="myfield"/>
</prompt>
</filled>
</field>
...
Last edited by support on Sat Feb 20, 2010 4:26 pm, edited 4 times in total.