Page 1 of 1

Problem in subdialog

Posted: Thu Apr 09, 2009 5:30 am
by aliasg
I am calling a small page FnMisc.aspx through subdialog that always return following three variable Status, Data, Message in my application.
But same page can't be called after I record user voice of around 1 min. See log below for error.

Steps to reproduce this issue.

1. Call through subdialog
2. Record between 1 & 2 mins(with small recording of 10 sec it works fine)
3. Assign recording variable to some document variable
3. Listen to this recording(play through document variable)
4. Call same subdialog and get bad fetch(timeout)

Any idea/help?
================================
VXI::var_element(name="FunctionID" expr = "7")
VXI::var_element(name="UserID" expr = "1")
VXI::queue_prompts()
DocumentParser::FetchDocument(FnMisc.aspx)
Posted form data is URL encoded
Attempting to fetch http://66.135.33.9/rv-dev/RVivr/FnMisc.aspx
Click here to view saved VoiceXML script
VXI::var_element(name="Status" expr = "'True'")
VXI::var_element(name="Message" expr = "'3183'")
VXI::var_element(name="Data" expr = "'2'")
bargein set to false
INPUTMODES set to "DTMF VOICE"
Audio segment added to prompt queue from TTS application/synthesis+ssml for:
---------
<?xml version='1.0'?><speak><voice gender="female" name="Diane"><speak xml:lang="en-us">
You can only record message for up to 3178 seconds
</speak></voice></speak>
---------
Newly queued prompts are now being played
VXI::queue_prompts()
bargein set to false
INPUTMODES set to "DTMF VOICE"
Audio segment added to prompt queue from TTS application/synthesis+ssml for:
---------
<?xml version='1.0'?><speak><voice gender="female" name="Diane"><speak xml:lang="en-us">
Please start your recording after the beep. When you are finished recording press star
</speak></voice></speak>
---------

Thu 09 Apr 2009 06:00:08 AM EDT:
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
VXI::record_element - activating grammars for form = 'frmRecordVoice' formitem = 'userrecording'
PromptManager::Play()

Thu 09 Apr 2009 06:00:14 AM EDT:
Newly queued prompts are now being played

Thu 09 Apr 2009 06:01:22 AM EDT:
VXI::assign_element(name="document.varRecordedVoice" expr = "userrecording")
VXI::assign_element(name="document.AudioDuration" expr = "userrecording$.duration")
bargein set to false
INPUTMODES set to "DTMF VOICE"
Audio segment added to prompt queue from TTS application/synthesis+ssml for:
---------
<?xml version='1.0'?><speak><voice gender="female" name="Diane"><speak xml:lang="en-us">
Thank you
</speak></voice></speak>
---------
Newly queued prompts are now being played
VXI::queue_prompts()
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 gender="female" name="Diane"><speak xml:lang="en-us">
To listen to you recording press 1.
To continue press 2.
To record again press 3.
</speak></voice></speak>
---------
VXI::field_element - activating grammars for form = 'frmReplayVoice' formitem = 'replayrecording'
VXI::do_recognition()
PromptManager::Play()

Thu 09 Apr 2009 06:01:23 AM EDT:
Newly queued prompts are now being played

Thu 09 Apr 2009 06:01:30 AM EDT:
dtmf input: 1
Found grammar match
hypothesis #0: 1 (0.9990)
bargein set to false
INPUTMODES set to "DTMF VOICE"
Audio segment added to prompt queue from TTS application/synthesis+ssml for:
---------
<?xml version='1.0'?><speak><voice gender="female" name="Diane"><speak xml:lang="en-us">
You recorded
</speak></voice></speak>
---------
Newly queued prompts are now being played
bargein set to true
INPUTMODES set to "DTMF VOICE"
Audio segment from a binary data buffer of size 530478 added to prompt queue
VXI::queue_prompts()
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 gender="female" name="Diane"><speak xml:lang="en-us">
To listen to you recording press 1.
To continue press 2.
To record again press 3.
</speak></voice></speak>
---------
VXI::field_element - activating grammars for form = 'frmReplayVoice' formitem = 'replayrecording'
VXI::do_recognition()
PromptManager::Play()

Thu 09 Apr 2009 06:01:31 AM EDT:
Newly queued prompts are now being played

Thu 09 Apr 2009 06:02:49 AM EDT:
received event: noinput:
bargein set to false
INPUTMODES set to "DTMF VOICE"
Audio segment added to prompt queue from TTS application/synthesis+ssml for:
---------
<?xml version='1.0'?><speak><voice gender="female" name="Diane"><speak xml:lang="en-us">
No key pressed
</speak></voice></speak>
---------
Newly queued prompts are now being played
VXI::queue_prompts()
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 gender="female" name="Diane"><speak xml:lang="en-us">
To listen to you recording press 1.
To continue press 2.
To record again press 3.
</speak></voice></speak>
---------
VXI::field_element - activating grammars for form = 'frmReplayVoice' formitem = 'replayrecording'
VXI::do_recognition()
PromptManager::Play()

Thu 09 Apr 2009 06:02:50 AM EDT:
Newly queued prompts are now being played

Thu 09 Apr 2009 06:03:01 AM EDT:
dtmf input: 3
Found grammar match
hypothesis #0: 3 (0.9990)
VXI::var_element(name="FunctionID" expr = "7")
VXI::var_element(name="UserID" expr = "1")
VXI::queue_prompts()
DocumentParser::FetchDocument(FnMisc.aspx)
Posted form data is URL encoded
Attempting to fetch http://66.135.33.9/rv-dev/RVivr/FnMisc.aspx

Thu 09 Apr 2009 06:03:32 AM EDT:
Error fetching document http://66.135.33.9/rv-dev/RVivr/FnMisc.aspx due to Operation timed out with 0 out of -1 bytes received
DocumentParser::FetchBuffer - could not open URL: FnMisc.aspx
DocumentParser::FetchDocument - exiting with error result 2
errno: 203 uri FnMisc.aspx
received event: error.badfetch:
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>
A serious error of type </speak>
---------
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>error.badfetch</speak>
---------
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> has occurred. Exiting. </speak>
---------
VXI::exit_element()
Newly queued prompts are now being played

Thu 09 Apr 2009 06:03:37 AM EDT:
Line disconnect detected. Abandoning queued audio data.
received event: connection.disconnect.hangup:
VXI::exit_element()
Call End Event
Ending session
Ending Session On Channel 25

IVR fix for problem in subdialog

Posted: Thu Apr 09, 2009 9:05 am
by support
Hi,

Generally, for messages such as this:

Error fetching document http://66.135.33.9/rv-dev/RVivr/FnMisc.aspx due to Operation timed out with 0 out of -1 bytes received

that means that your IVR application server is taking too long to return the fetch request back to the IVR platform.

You should increase your IVR property, fetchtimeout, to a longer time to try and avoid this IVR error.

Regards,
Plum Support

Thats not a problem

Posted: Thu Apr 09, 2009 1:14 pm
by aliasg
I dont think so there is something wrong with our server or we need to increase fetch timeout. If you have noticed the log, same page is called with same namelist and there is never been a problem when this code is executed first time. We tried saving more recording file more than of 4 mb size without any problem. The issue is only reproduced when we first listen it and then try to submit that file or make any other call through subdialog.

try yourself by following the steps mentioned and you will get the problem for whatever time you specify in timeout propery.

IVR fix for problem in subdialog

Posted: Thu Apr 09, 2009 1:27 pm
by support
Hi,

Could you please provide us with the VXML code that you are using to reproduce this IVR issue? This would provide us with more information on how to debug your IVR issue.

Regards,
Plum Support

Posted: Fri Apr 10, 2009 1:09 am
by aliasg

Code: Select all

<?xml version="1.0" encoding="utf-8" ?>
<vxml version="2.0" xmlns="http://www.w3.org/2001/vxml"> 
<var name="varRecordedVoice" /> 
<var name="varRecordedVoice2" /> 
<var name="varRecordedTitle" /> 
<var name="AudioDuration" /> 
<property name="inputmodes" value="dtmf" /> 

<form id="frmRecordVoice"> 
<var name="FunctionID" expr="7" /> 
<var name="UserID" expr="1" /> 
<subdialog name="getAvailableSecs" src="FnMisc.aspx" namelist="UserID FunctionID" method="post" /> 
<record name="userrecording" maxtime="300s" finalsilence="30s" dtmfterm="true" beep="true" type="audio/x-wav"> 

<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
Please start your recording after the beep. When you are finished recording press star 
</voice> 
</prompt> 

<filled> 
<assign name="document.varRecordedVoice" expr="userrecording" /> 
<assign name="document.AudioDuration" expr="userrecording$.duration" /> 
</filled> 

</record> 

<block> 

<goto next="#frmThankYou" /> 
</block> 

</form> 

<form id="frmThankYou"> 
<block> 
<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
Thank you 
</voice> 
</prompt> 
<goto next="#frmReplayVoice" /> 
</block> 
</form> 

<property name="inputmodes" value="dtmf voice" /> 
<form id="frmReplayVoice"> 

<field name="replayrecording" type="digits?length=1"> 

<grammar type="application/x-jsgf" mode="dtmf"> 
1|2
</grammar> 
<grammar type="application/x-jsgf" mode="voice"> 
one|two 
</grammar> 
<prompt> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
<!--Thank you 
<break size="medium" />--> 
To listen to you recording press 1. 
To record again press 2. 
</voice> 
</prompt> 
<!-- if no input then reprompt --> 
<noinput count="1"> 
<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
No key pressed 
</voice> 
</prompt> 
<reprompt /> 
</noinput> 
<noinput count="2"> 
<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
press any key 
</voice> 
</prompt> 
<reprompt /> 
</noinput> 
<catch count="3" event="noinput"> 
<disconnect/>

</catch> 

<filled> 
<if cond="replayrecording==1 || replayrecording=='one'"> 
<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
You recorded 
</voice> 
</prompt> 

<value expr="document.varRecordedVoice" /> 
<goto next="#frmReplayVoice" /> 

<elseif cond="replayrecording==2 || replayrecording=='two'" /> 
<clear namelist="document.varRecordedVoice" /> 
<goto next="#frmRecordVoice" /> 

<else/> 
<prompt bargein="false"> 
<voice gender="female" xml:lang="en-us" name="Diane"> 
you have press wrong key, please press valid key 
</voice> 
</prompt> 
<goto next="#frmReplayVoice" /> 

</if> 
</filled> 
</field> 
</form> 
</vxml>

Posted: Fri Apr 10, 2009 1:11 am
by aliasg
See, same frmRecordVoice is called after listening to the recording to record again.

IVR solution to problem in subdialog

Posted: Mon Apr 13, 2009 1:51 pm
by support
Hi,

Thanks for this information and we have been able to reproduce your IVR issue. I would recommend that you check the firewall settings on your web server. If you use a firewall between your web server and the Internet, the firewall might be keeping the persistent connection open to the IVR even though the server-side connection has already been closed.

Also, if you have IIS and the Keep-Alives are enabled, you should turn them off.

This IVR issue has also occurred in these past topics, so you may want to refer to them if you are still having problems resolving this:

http://support.plumvoice.com/viewtopic.php?t=1045
http://support.plumvoice.com/viewtopic.php?t=850
http://support.plumvoice.com/viewtopic.php?t=767
http://support.plumvoice.com/viewtopic.php?t=571

Hope this helps.

Regards,
Plum Support