Page 1 of 1

Reduce the time between the input data and the execution of

Posted: Fri Aug 17, 2007 2:26 pm
by metroscript
Good afternoon to all,

What I'm looking to do is the following when the user
has to enter their 6 digit id:

1. System says "please enter id"
2. User has 3 seconds to enter their 1st digit
3. User enters 1st digit
4. User has 3 seconds to enter their 2nd digit
5. User enters 2nd digit
6. User has 3 seconds to enter their 3rd digit
7. User enters 3rd digit
8. User has 3 seconds to enter their 4th digit
9. User enters 4th digit
10. User has 3 seconds to enter their 5th digit
11. User enters 5th digit
12. User has 3 seconds to enter their 6th digit
13. User enters 6th digit
14. System has 1-2 seconds to go to next page

My problem is that if I use the <property name="interdigittimeout" value="3s"/> with the type="digits?maxlength=6", I thought this would eliminate my issue with the system getting to the next page within 1-2 seconds. The ONLY way I could get the system to get to the next page within 1-2 seconds was to eliminate the <property name="interdigittimeout" value="3s"/>. My code is attached below. My goal is the following:

1. Allow the users 3 seconds in between key presses for entering their 6 digit id
2. Have the system go to the next page within 1-2 seconds. Right now, it is 4-5 seconds in which our clients will consider that a huge latency.

Thanks!!

Mike C.

Code: Select all

<form id="getuserid">

	<var name="StartDateTimeMonth"  expr="'<% = dtStartDateTimeMonth %>'"/>
	<var name="StartDateTimeDay"    expr="'<% = dtStartDateTimeDay %>'"/>
	<var name="StartDateTimeYear"   expr="'<% = dtStartDateTimeYear %>'"/>
	<var name="StartDateTimeHour"   expr="'<% = dtStartDateTimeHour %>'"/>
	<var name="StartDateTimeMinute" expr="'<% = dtStartDateTimeMinute %>'"/>
	<var name="StartDateTimeSecond" expr="'<% = dtStartDateTimeSecond %>'"/>
	
	<field name="username" type="digits?maxlength=6">
		<property name="interdigittimeout" value="3s"/>
		<property name="inputmodes" value="dtmf"/>

		<prompt timeout="5s" bargein="true">
			<voice>Please enter your i <break time="10ms"/> d.
			</voice>
		</prompt>

		<noinput count="1">
			Sorry, I did not hear you. Please try again.
			<reprompt/>
		</noinput>

		<nomatch count="1">
			Sorry, I did not hear you. Please try again.
			<reprompt/>
		</nomatch>

		<noinput count="2">
			Sorry, I still did not hear you. Please try again.
			<reprompt/>
		</noinput>

		<noinput count="3">
			Thank you for using Metro Script.  Goodbye.
			<exit/>
		</noinput>

		<nomatch count="3">
			Thank you for using Metro Script.  Goodbye.
			<exit/>
		</nomatch>
	  
        </field>

	<filled>
		<submit next="check_user_id.xml" method="post" 
		              namelist="username StartDateTimeMonth StartDateTimeDay StartDateTimeYear
		                        StartDateTimeHour StartDateTimeMinute StartDateTimeSecond"/>
	</filled>

	<catch event="connection.disconnect">
		<exit/>	
	</catch>

</form>

</vxml>

Hit # key and IVR system does not have to wait

Posted: Fri Aug 17, 2007 3:04 pm
by support
Hi,

You could instruct the user to hit the pound key after inputting all of the digits and this will allow the IVR system to immediately start processing the information that was inputted. By hitting the pound key, the IVR system would not have to wait for interdigittimeout to finish before processing the data.

Hope this helps.

Regards,
Plum Support

Thank You

Posted: Sat Aug 18, 2007 9:10 am
by metroscript
Thanks for the idea. That'll work. Thanks again for the quick response!

Mike C.

More latency issues

Posted: Sat Aug 18, 2007 11:58 am
by metroscript
Good day to all,

I have another latency issue which I traced to two different issues.

***Issue 1***
The first issue is similar to the above posts, in that my menu tag is waiting 1-2 seconds, after the user responds with a key press, before continuing to the next page. My question is, "Is using the # key the only way to eliminate the 1-2 second delay". Here is my code snippet for this issue:

Code: Select all

<menu id="mainmenu">
	<property name="inputmodes" value="dtmf"/>
	<prompt>
		<voice>
			Enter
			<enumerate><value expr="_dtmf"/> <value expr="_prompt"/>, <break size="small"/></enumerate>
		</voice>
	</prompt>
	<choice dtmf="1" next="#recordnormal">to begin normal recording</choice>
	<choice dtmf="2" next="#recordstat">to begin stat recording</choice>
	<choice dtmf="*" next="#processhangup">to end the call</choice>
	<choice dtmf="0" next="#helpmenu">for help</choice>

	<noinput count="1">
		Sorry, I did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<nomatch count="1">
		Sorry, that is not one of the selections. Please try again.
		<reprompt/>
	</nomatch>

	<noinput count="2">
		Sorry, I still did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<catch event="nomatch noinput" count="3">
		<goto next="#processhangup"/>
	</catch>
		
	<catch event="connection.disconnect">
		<goto next="#processhangup"/>
	</catch>

</menu>


***Issue 2***
There is a 3 second delay when the following page is called. I traced it down to the two menu tags that I have on this page. When I remove the two menus( <menu id="helpmenu"> and <menu id="maxtimemenu"> ), then this page loads very quickly and the user hears "<voice>Reecord at the beep.</voice>" . If those two menus are in this page, then there is the 3 second delay. I'm not sure why having two menu tags on this page would cause latency. Is there something I'm missing?? I attached the code below.

Code: Select all

<?xml version="1.0"?>
<vxml version="2.1" application="root.xml">

<form id="record">
	<grammar>1|2|3|4|5|6|7|8|9|0|"*"|"#"</grammar>
	<record name="phone_file_1vox" beep="true" dtmfterm="true" maxtime="840s" finalsilence="300s" type="audio/basic">
		<prompt bargein="false">
			<voice>Reecord at the beep.</voice>
		</prompt>
		<filled>
		        <assign name="nextkey" expr="phone_file_1vox$.termchar"/>
			<assign name="myphone_file_1vox" expr="phone_file_1vox"/>
			<if cond="nextkey=='1'">
				<goto next="#instantsaveandrecordnormal"/>
			<elseif cond="nextkey=='2'"/>
				<goto next="#instantsaveandrecordstat"/>
			<elseif cond="nextkey=='3'"/>
				<prompt>Please select either the rewind or fast forward functionality before using the reecord from here function</prompt>
				<goto next="#pauserecording"/>
			<elseif cond="nextkey=='4'"/>
				<goto next="#rewindrecording"/>
			<elseif cond="nextkey=='5'"/>
				<goto next="#pauserecording"/>
			<elseif cond="nextkey=='6'"/>
				<goto next="#forwardrecording"/>
			<elseif cond="nextkey=='7'"/>
				<goto next="#rewindbeginning"/>
			<elseif cond="nextkey=='8'"/>
				<goto next="#cancelrecording"/>
			<elseif cond="nextkey=='9'"/>
				<prompt>This function is not available at this time. You are being redirected to the help menu</prompt>
				<goto next="#helpmenu"/>
			<elseif cond="nextkey=='*'"/>
				<goto next="#saveandhangup"/>
			<elseif cond="nextkey=='0'"/>
				<goto next="#helpmenu"/>
			<elseif cond="nextkey=='#'"/>
				<goto next="#saveandreprompt"/>
			</if>
			<if cond="phone_file_1vox$.maxtime==true">
				<prompt>You have reached the maximum time limit of 14 minutes</prompt>
				<goto next="#maxtimemenu"/>
			</if>
		</filled>

		<catch event="nomatch noinput">
			<assign name="myphone_file_1vox" expr="phone_file_1vox"/>
			<submit next="process_record_savevox.xml?next=hangup" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
		</catch>

		<catch event="connection.disconnect">
			<assign name="myphone_file_1vox" expr="phone_file_1vox"/>
			<submit next="process_record_savevox.xml?next=hangup" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
		</catch>

	</record>
</form>

<menu id="helpmenu">
	<property name="inputmodes" value="dtmf"/>
	<prompt>
		<voice>
			You have entered the interactive help menu. You can press any key at any time to 
			initiate that feature. Please enter
			<enumerate><value expr="_dtmf"/> <value expr="_prompt"/>, <break size="small"/></enumerate>
		</voice>
	</prompt>
	<choice dtmf="1" next="#instantsaveandrecordnormal">to save your normal dictation and reecord another instantly</choice>
	<choice dtmf="2" next="#instantsaveandrecordstat">to save your stat dictation and reecord another instantly</choice>
	<choice dtmf="4" next="#rewindrecording">to rewind 10 seconds and review your dictation</choice>
	<choice dtmf="5" next="#pauserecording">to pause your dictation in which you will be able to unpause and continue recording</choice>
	<choice dtmf="6" next="#forwardrecording">to forward 10 seconds and review your dictation</choice>
	<choice dtmf="7" next="#rewindbeginning">to rewind to the beginning and review your dictation</choice>
	<choice dtmf="8" next="#cancelrecording">to cancel your dictation</choice>
	<choice dtmf="#" next="#saveandreprompt">to save your dictation and go to the main menu</choice>
	<choice dtmf="*" next="#saveandhangup">to save and end the call</choice>
	<choice dtmf="0" event="helpagain">to listen to the help menu again</choice>

	<noinput count="1">
		Sorry, I did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<nomatch count="1">
		Sorry, that is not one of the selections. Please try again.
		<reprompt/>
	</nomatch>

	<noinput count="2">
		Sorry, I still did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<catch event="helpagain">
		<reprompt/>
	</catch>

	<catch event="nomatch noinput" count="3">
		<goto next="#saveandhangup"/>
	</catch>
		
	<catch event="connection.disconnect">
		<goto next="#saveandhangup"/>
	</catch>

</menu>

<menu id="maxtimemenu">
	<property name="inputmodes" value="dtmf"/>
	<prompt>
		<voice>
			Please enter
			<enumerate><value expr="_dtmf"/> <value expr="_prompt"/>, <break size="small"/></enumerate>
		</voice>
	</prompt>
	<choice dtmf="1" next="#instantsaveandrecordnormal">to save your normal dictation and reecord another instantly</choice>
	<choice dtmf="2" next="#instantsaveandrecordstat">to save your stat dictation and reecord another instantly</choice>
	<choice dtmf="4" next="#rewindrecording">to rewind 10 seconds and review your dictation</choice>
	<choice dtmf="5" next="#pauserecording">to pause your dictation in which you will be able to unpause and continue recording</choice>
	<choice dtmf="6" next="#forwardrecording">to forward 10 seconds and review your dictation</choice>
	<choice dtmf="7" next="#rewindbeginning">to rewind to the beginning and review your dictation</choice>
	<choice dtmf="8" next="#cancelrecording">to cancel your dictation</choice>
	<choice dtmf="9" next="#ninemenu">to enter the nine menu</choice>
	<choice dtmf="#" next="#saveandreprompt">to save your dictation and go to the main menu</choice>
	<choice dtmf="*" next="#saveandhangup">to save and end the call</choice>
	<choice dtmf="0" event="help">to listen to the help menu</choice>

	<noinput count="1">
		Sorry, I did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<nomatch count="1">
		Sorry, that is not one of the selections. Please try again.
		<reprompt/>
	</nomatch>

	<noinput count="2">
		Sorry, I still did not hear you. Please try again.
		<reprompt/>
	</noinput>

	<catch event="help">
		<goto next="#helpmenu"/>
	</catch>

	<catch event="nomatch noinput" count="3">
		<goto next="#saveandhangup"/>
	</catch>
		
	<catch event="connection.disconnect">
		<goto next="#saveandhangup"/>
	</catch>

</menu>

<form id="instantsaveandrecordnormal">
	<block>
		<submit next="process_record_savevox.xml?next=saveandrecordnormal" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="instantsaveandrecordstat">
	<block>
		<submit next="process_record_savevox.xml?next=saveandrecordstat" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="rewindrecording">
	<block>
		<submit next="process_record_savevox.xml?next=reviewrewind" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="pauserecording">
	<block>
		<submit next="process_record_savevox.xml?next=pause" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="forwardrecording">
	<block>
		<submit next="process_record_savevox.xml?next=reviewforward" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="rewindbeginning">
	<block>
		<submit next="process_record_savevox.xml?next=reviewbeginning" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="cancelrecording">
	<block>
		<% if (cstr(strCancelFlag) = "1") then %>
			<submit next="process_record_savevox.xml?next=cancel" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
		<% else %>
			<submit next="process_record_savevox.xml?next=badcancel" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
		<% end if %>
	</block>
</form>

<form id="saveandreprompt">
	<block>
		<submit next="process_record_savevox.xml?next=saveandreprompt" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="saveandhangup">
	<block>
		<submit next="process_record_savevox.xml?next=hangup" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>

<form id="silentpause">
	<block>
		<submit next="process_record_savevox.xml?next=silentpause" method="post" namelist="myphone_file_1vox" enctype="multipart/form-data"/>
	</block>
</form>


</vxml>

Thanks again!!!

Mike C.

IVR call log needed for latency issues

Posted: Mon Aug 20, 2007 9:11 am
by support
Hi,

Could you post an IVR call log of this latency occurring? This will help us figure out why this latency is occurring.

Regards,
Plum Support

Log file

Posted: Wed Aug 22, 2007 5:10 pm
by metroscript
Good afternoon to all,

Here is the requested log file.

The first latency is the 2-3 second latency after line:

<?xml version='1.0'?><speak><voice><speak> Please enter your i <break size="medium" time="10ms"/> d.</speak></voice></speak>

The second latency is the 5 second latency after line:
<?xml version='1.0'?><speak><voice><speak>
Enter
1 to begin normal recording , <break size="small"/> 2 to begin stat recording , <break size="small"/> * to end the call , <break size="small"/> 0 for help , <break size="small"/></speak></voice></speak>

Any assistance would be appreciated. For the first latency, I would
like to have my user not have to hit the # key after they enter their
id since the # sign in my application has other meaning later in the
application and I don't want to confuse my users:)

The second latency seems to reside because I have multiple Menus
within that page. When I place these other Menus in a new page
so I only have one menu in a page, then the latency disappears.

Thanks,

Mike C.


  • Wed 22 Aug 2007 05:59:27 PM EDT:
    Call Start Event: ANII 6105849795 DNIS 3975 VURL http://hosting.plumgroup.com/plumvp/director.vxml
    DocumentParser::FetchDocument()
    DocumentParser::FetchDocument(http://hosting.plumgroup.com/plumvp/director.vxml)
    Cache Hit: http://hosting.plumgroup.com/plumvp/director.vxml
    VXI::var_element(name="dnis" expr = "session.telephone.dnis")
    DocumentParser::FetchDocument(director.php)
    Posted form data is URL encoded
    Attempting to fetch http://hosting.plumgroup.com/plumvp/director.php
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/default.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/default.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/default.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    Loading Builtin grammar: builtin:dtmf/digits?length=6
    VXI::var_element(name="voxfilenum" expr = "0")
    VXI::var_element(name="StartDateTimeMonth" expr = "'8'")
    VXI::var_element(name="StartDateTimeDay" expr = "'22'")
    VXI::var_element(name="StartDateTimeYear" expr = "'2007'")
    VXI::var_element(name="StartDateTimeHour" expr = "'17'")
    VXI::var_element(name="StartDateTimeMinute" expr = "'59'")
    VXI::var_element(name="StartDateTimeSecond" expr = "'27'")
    VXI::queue_prompts()
    bargein set to true
    INPUTMODES set to "DTMF"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak><voice><speak> Please enter your i <break size="medium" time="10ms"/> d.
    </speak></voice></speak>
    ---------
    VXI::field_element - activating grammars for form = 'getuserid' formitem = 'username'
    VXI::do_recognition()
    PromptManager::Play()
    Newly queued prompts are now being played

    Wed 22 Aug 2007 05:59:36 PM EDT:
    dtmf input: 693764
    Found grammar match
    hypothesis #0: 693764 (0.9990)
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/check_user_id.xml)
    Posted form data is URL encoded
    Attempting to fetch http://stage.metroscript.com/voicexml/check_user_id.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    Loading Builtin grammar: builtin:dtmf/digits?length=4
    VXI::var_element(name="userid" expr = "617")
    VXI::var_element(name="username" expr = "693764")
    VXI::var_element(name="password" expr = "6935")
    VXI::var_element(name="fullname" expr = "'Doctor Doe'")
    VXI::var_element(name="userlevel" expr = "'6'")
    VXI::var_element(name="StartDateTimeMonth" expr = "'8'")
    VXI::var_element(name="StartDateTimeDay" expr = "'22'")
    VXI::var_element(name="StartDateTimeYear" expr = "'2007'")
    VXI::var_element(name="StartDateTimeHour" expr = "'17'")
    VXI::var_element(name="StartDateTimeMinute" expr = "'59'")
    VXI::var_element(name="StartDateTimeSecond" expr = "'27'")
    VXI::queue_prompts()
    bargein set to true
    INPUTMODES set to "DTMF"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak><voice><speak> Please enter your passcode.</speak></voice></speak>
    ---------
    VXI::field_element - activating grammars for form = 'getpassword' formitem = 'newpassword'
    VXI::do_recognition()
    PromptManager::Play()
    Newly queued prompts are now being played

    Wed 22 Aug 2007 05:59:43 PM EDT:
    dtmf input: 6935
    Found grammar match
    hypothesis #0: 6935 (0.9990)
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/c ... ssword.xml)
    Posted form data is URL encoded
    Attempting to fetch http://stage.metroscript.com/voicexml/c ... ssword.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    VXI::var_element(name="callid" expr = "1503")
    VXI::var_element(name="cancelflag" expr = "1")
    VXI::var_element(name="confirmnum" expr = "1710")
    VXI::var_element(name="folderlist" expr = "'0'")
    VXI::var_element(name="password" expr = "6935")
    VXI::var_element(name="userid" expr = "617")
    VXI::var_element(name="username" expr = "693764")
    VXI::var_element(name="userlevel" expr = "6")
    bargein set to true
    INPUTMODES set to "DTMF VOICE"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak><voice><speak> Welcome back Doctor Doe. Confirmation number <say-as type="acronym"> 1710</say-as> .</speak></voice></speak>
    ---------
    Newly queued prompts are now being played

    Wed 22 Aug 2007 05:59:49 PM EDT:
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/m ... _setup.xml)
    Posted form data is URL encoded
    Attempting to fetch http://stage.metroscript.com/voicexml/m ... _setup.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/main_menu.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/main_menu.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/main_menu.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to begin normal recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (1)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to begin stat recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (2)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to end the call)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("*")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (for help)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (0)
    </grammar>

    ---------


    Wed 22 Aug 2007 05:59:50 PM EDT:
    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to begin normal recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (1)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to begin stat recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (2)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to end the call)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("*")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to listen to the help menu again)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (0)
    </grammar>

    ---------

    VXI::queue_prompts()
    bargein set to true
    INPUTMODES set to "DTMF"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak><voice><speak>
    Enter
    1 to begin normal recording , <break size="small"/> 2 to begin stat recording , <break size="small"/> * to end the call , <break size="small"/> 0 for help , <break size="small"/></speak></voice></speak>
    ---------
    VXI::do_recognition()
    PromptManager::Play()
    Newly queued prompts are now being played

    Wed 22 Aug 2007 05:59:54 PM EDT:
    dtmf input: 1
    Found grammar match
    hypothesis #0: 1 (0.9990)
    VXI::var_element(name="statlevel" expr = "0")
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/p ... rd_new.xml)
    Posted form data is URL encoded
    Attempting to fetch http://stage.metroscript.com/voicexml/p ... rd_new.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(http://stage.metroscript.com/voicexml/p ... _start.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/p ... _start.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/p ... _start.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: http://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch http://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    GrammarManager::CreateGrammarFromString():
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="voice">
    1|2|3|4|5|6|7|8|9|0|"*"|"#"
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString():
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    1|2|3|4|5|6|7|8|9|0|"*"|"#"
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your normal dictation and reecord another instantly)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (1)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your stat dictation and reecord another instantly)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (2)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to rewind 10 seconds and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (4)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to pause your dictation in which you will be able to unpause and continue recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (5)
    </grammar>

    ---------


    Wed 22 Aug 2007 05:59:55 PM EDT:
    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to forward 10 seconds and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (6)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to rewind to the beginning and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (7)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to cancel your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (8)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your dictation and go to the main menu)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("#")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save and end the call)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("*")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to listen to the help menu again)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (0)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your normal dictation and reecord another instantly)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (1)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your stat dictation and reecord another instantly)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (2)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to rewind 10 seconds and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (4)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to pause your dictation in which you will be able to unpause and continue recording)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (5)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to forward 10 seconds and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (6)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to rewind to the beginning and review your dictation)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (7)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to cancel your dictation)
    </grammar>

    ---------


    Wed 22 Aug 2007 05:59:56 PM EDT:
    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (8)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to enter the nine menu)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (9)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save your dictation and go to the main menu)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("#")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to save and end the call)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    ("*")
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (to listen to the help menu)
    </grammar>

    ---------

    GrammarManager::CreateGrammarFromString(application/x-jsgf):
    ---------

    <?xml version='1.0'?>
    <grammar xml:lang="en-us" mode="dtmf">
    (0)
    </grammar>

    ---------

    VXI::queue_prompts()
    bargein set to false
    INPUTMODES set to "DTMF"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak><voice><speak> Reecord at the beep.</speak></voice></speak>
    ---------
    Newly queued prompts are now being played
    bargein set to true
    Cache Miss: file:///usr/local/plumvp/resources/beep.ulaw
    Attempting to fetch file:///usr/local/plumvp/resources/beep.ulaw
    Audio segment from the URL resources/beep.ulaw added to prompt queue
    PromptManager::Play()

    Wed 22 Aug 2007 05:59:57 PM EDT:
    Newly queued prompts are now being played

    Wed 22 Aug 2007 06:00:02 PM EDT:
    VXI::assign_element(name="nextkey" expr = "phone_file_1vox$.termchar"
    VXI::assign_element(name="myphone_file_1vox" expr = "phone_file_1vox"
    DocumentParser::FetchDocument(https://stage.metroscript.com/voicexml/ ... ext=hangup)
    Posting binary content "myphone_file_1vox" of size 26496 and type "audio/basic"
    Posted form data is multipart encoded
    Attempting to fetch https://stage.metroscript.com/voicexml/ ... ext=hangup

    Wed 22 Aug 2007 06:00:03 PM EDT:
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: https://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch https://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script

    Wed 22 Aug 2007 06:00:04 PM EDT:
    VXI::var_element(name="voxfilenum" expr = "0")
    DocumentParser::FetchDocument(https://stage.metroscript.com/voicexml/ ... ext=hangup)
    Cache Miss: https://stage.metroscript.com/voicexml/ ... ext=hangup
    Attempting to fetch https://stage.metroscript.com/voicexml/ ... ext=hangup
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: https://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch https://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(https://stage.metroscript.com/voicexml/ ... hangup.xml)
    Cache Miss: https://stage.metroscript.com/voicexml/ ... hangup.xml
    Attempting to fetch https://stage.metroscript.com/voicexml/ ... hangup.xml
    Click here to view saved VoiceXML script
    DocumentParser::FetchDocument(root.xml)
    Cache Miss: https://stage.metroscript.com/voicexml/root.xml
    Attempting to fetch https://stage.metroscript.com/voicexml/root.xml
    Click here to view saved VoiceXML script
    bargein set to true
    INPUTMODES set to "DTMF VOICE"
    Audio segment added to prompt queue from TTS application/synthesis+ssml for:
    ---------
    <?xml version='1.0'?><speak>Your dictation was saved. Confirmation number <say-as type="acronym"> 1710</say-as> . Goodbye</speak>
    ---------
    VXI::exit_element()
    Newly queued prompts are now being played

    Wed 22 Aug 2007 06:00:12 PM EDT:
    Call End Event
    Ending session
    Ending Session On Channel 1

IVR developers unable to reproduce latency issue

Posted: Thu Aug 23, 2007 9:21 am
by support
Hi,

We are not able to reproduce this latency. We are seeing only 1 second of latency after each of these lines.

You can send an e-mail to support@plumvoice.com with your IVR customer ID in the subject line with explicit instructions on how to reproduce this latency issue if you are still getting this IVR problem.

Regards,
Plum Support