I'm not sure if this is a development issue or a platform issue. I am looking for a way to speed up the transition from one field to the next. Below is a sample of my code. The transition between the access code confirmation and the password field takes from 1 to 2 seconds. This seems to be the case with other field -> confirmation -> field transitions. Is there anything I can do to speed these up?
Thanks!
JC
<field name="AccessCode" type="digits?length=5">
<prompt>
Please enter your I.D. code followed by the pound sign.
</prompt>
<filled>
<goto nextitem="confirmID"/>
</filled>
<catch event="noinput nomatch" count="3">
<prompt bargein="false">
Please confirm your I.D. and try your call later.
</prompt>
<disconnect />
</catch>
<catch event="noinput nomatch">
<reprompt/>
</catch>
</field>
<subdialog name="confirmID" src="#confirm" cond="false">
<param name="user_input" expr="AccessCode"/>
<filled>
<if cond="confirmID.result==false">
<clear namelist="AccessCode"/>
</if>
</filled>
</subdialog>
<field name="Password" type="digits?minlength=2;maxlength=10">
<prompt bargein="true">
Please enter your password followed by the pound sign.
</prompt>
<filled>
<goto nextitem="login"/>
</filled>
<catch event="noinput nomatch" count="3">
Your entry was invalid. Goodbye.
<disconnect />
</catch>
</field>
...
</form>
<!-- Confirmations -->
<form id="confirm">
<property name="voicename" value="Jennifer"/>
<property name="inputmodes" value="dtmf"/>
<property name="termchar" value="#"/>
<property name="timeout" value="3s"/>
<property name="interdigittimeout" value="2s"/>
<property name="scriptmaxage" value="0s"/>
<property name="documentmaxage" value="0s"/>
<property name="sensitivity" value="0.0"/>
<var name="user_input"/>
<field name="yn" modal="true">
<grammar type="application/x-jsgf" mode="dtmf">
1 | 2
</grammar>
<prompt bargein="true" timeout="2s">
You entered:
<prosody volume="200.0" rate="-25%">
<say-as type="number:digits">
<value expr="user_input"/>
</say-as>
</prosody>.
<prosody volume="100.0" rate="default">
Press 1 to confirm.
Press 2 to re enter.
</prosody>
</prompt>
<filled>
<var name="result" expr="true"/>
<if cond="yn==2">
<assign name="result" expr="false"/>
</if>
<return namelist="result"/>
</filled>
</field>
<catch event="connection.disconnect">
<submit next="Process.aspx?p=Disconnect"
namelist="session.id"
method="post"
/>
</catch>
</form>
We've Moved! Please visit our new and improved forum over at our new portal: https://portal.plumvoice.com/hc/en-us/community/topics
System speed
IVR script change needed for delays
Hi,
Do you have a global property such as interdigittimeout in your IVR script?
i.e.
This might be the reason why you are experiencing a 2s delay between the confirmation and password field.
To avoid this, you could try setting your IVR properties within local scopes.
Regards,
Plum Support
Do you have a global property such as interdigittimeout in your IVR script?
i.e.
Code: Select all
<property name="interdigittimeout" value="2s"/>
To avoid this, you could try setting your IVR properties within local scopes.
Regards,
Plum Support
Last edited by support on Wed Feb 17, 2010 3:43 pm, edited 3 times in total.
Plum Support
http://www.plumvoice.com
http://www.plumvoice.com
interdigittimeout
My understanding of interdigittimeout was the time it waited for another digit to proceed on to the <filled> section. These are my properties:
<property name="voicename" value="Jennifer"/>
<property name="inputmodes" value="dtmf"/>
<property name="termchar" value="#"/>
<property name="timeout" value="3s"/>
<property name="interdigittimeout" value="2s"/>
<property name="scriptmaxage" value="0s"/>
<property name="documentmaxage" value="0s"/>
<property name="sensitivity" value="0.0"/>
If I set a locally scoped property for interdigittimeout to 0 seconds would this take precedence over the root document's interdigittimeout?
Thanks!
<property name="voicename" value="Jennifer"/>
<property name="inputmodes" value="dtmf"/>
<property name="termchar" value="#"/>
<property name="timeout" value="3s"/>
<property name="interdigittimeout" value="2s"/>
<property name="scriptmaxage" value="0s"/>
<property name="documentmaxage" value="0s"/>
<property name="sensitivity" value="0.0"/>
If I set a locally scoped property for interdigittimeout to 0 seconds would this take precedence over the root document's interdigittimeout?
Thanks!
IVR application and interdigittimeout
Here's a link that further describes the IVR attribute of how the timing for interdigittimeout works: http://www.w3.org/TR/voicexml20/#dmlATiming
And yes, if you set a locally scoped property for interdigittimeout to a small value such as 10ms or 0s, it would take precedence over the root document's interdigittimeout.
Regards,
Plum Support
And yes, if you set a locally scoped property for interdigittimeout to a small value such as 10ms or 0s, it would take precedence over the root document's interdigittimeout.
Regards,
Plum Support
Last edited by support on Sat Dec 26, 2009 7:06 pm, edited 1 time in total.
Plum Support
http://www.plumvoice.com
http://www.plumvoice.com
speed
I tried your suggestion and set the confirmation forms interdigittimeout to 0s. It seems like it might be a little faster now, but there is still a little delay switching back from a confirmation to the main form. Anything we can do about that?
IVR code and interdigittimeout
Hi,
We've found that using an interdigittimeout value of 10ms works pretty well. There is almost no delay between the confirmation and main form after entering a DTMF-2 key. The following IVR code example:
Regards,
Plum Support
We've found that using an interdigittimeout value of 10ms works pretty well. There is almost no delay between the confirmation and main form after entering a DTMF-2 key. The following IVR code example:
Code: Select all
<?xml version="1.0"?>
<vxml version="2.0">
<property name="voicename" value="Samantha"/>
<property name="inputmodes" value="dtmf"/>
<property name="termchar" value="#"/>
<property name="timeout" value="3s"/>
<property name="interdigittimeout" value="2s"/>
<property name="scriptmaxage" value="0s"/>
<property name="documentmaxage" value="0s"/>
<form id="login">
<block>
<prompt>Welcome to the Nutro Demo Check In System.</prompt>
</block>
<field name="AccessCode" type="digits?length=5">
<prompt>
Please enter your I.D. code followed by the pound sign.
</prompt>
<filled>
<goto nextitem="confirmID"/>
</filled>
</field>
<subdialog name="confirmID" src="#confirm" cond="false">
<param name="user_input" expr="AccessCode"/>
<filled>
<if cond="confirmID.result==false">
<clear namelist="AccessCode"/>
</if>
</filled>
</subdialog>
<field name="Password" type="digits?minlength=2;maxlength=10">
<prompt bargein="true">
Please enter your password followed by the pound sign.
</prompt>
<filled>
<goto nextitem="login"/>
</filled>
<catch event="noinput nomatch" count="3">
Your entry was invalid. Goodbye.
<disconnect/>
</catch>
</field>
</form>
<!-- Generic confirmations -->
<form id="confirm">
<property name="voicename" value="Samantha"/>
<property name="inputmodes" value="dtmf"/>
<property name="termchar" value="#"/>
<property name="timeout" value="3s"/>
<property name="interdigittimeout" value="10ms"/>
<property name="scriptmaxage" value="0s"/>
<property name="documentmaxage" value="0s"/>
<var name="user_input"/>
<field name="yn" modal="true">
<grammar type="application/x-jsgf" mode="dtmf">
1 | 2
</grammar>
<prompt bargein="true" timeout="2s">
You entered:
<prosody volume="200.0" rate="-25%">
<say-as type="number:digits">
<value expr="user_input"/>
</say-as>
</prosody>.
<prosody volume="100.0" rate="default">
Press 1 to confirm.
Press 2 to re enter.
</prosody>
</prompt>
<filled>
<var name="result" expr="true"/>
<if cond="yn==2">
<assign name="result" expr="false"/>
</if>
<return namelist="result"/>
</filled>
</field>
</form>
</vxml>
Plum Support
Plum Support
http://www.plumvoice.com
http://www.plumvoice.com