We've Moved! Please visit our new and improved forum over at our new portal: https://portal.plumvoice.com/hc/en-us/community/topics

Record tag behaviour issue

Questions and answers about IVR programming for Plum DEV

Moderators: admin, support

Post Reply
adriannaude
Posts: 34
Joined: Mon Nov 07, 2005 11:27 am
Location: United Kingdom

Record tag behaviour issue

Post by adriannaude »

Hi there,

I'm having fun and games with the <record> tag.

The vxml I am using looks like this:

<form id="doRecord_Record">
<record name="freddie" beep="true" type="audio/basic" dtmfterm="true" maxtime="120" finalsilence="3s">
<catch event="nomatch noinput error">
<assign expr="'STATUS_FAILED'" name="varLastStatus"/>
<goto next="#doDialog"/>
</catch>
</record>
....

What happens is that sometimes the catch fires with noinput even thought something was actually said.
At other times the recording only contains a segment of the actual speech. Of the dozen of so attempts I have made to run this I have yet to record the entire message.

I ran the example that you provide in the Plum Audio Repository Developer's Guide and it recorded the whole message (all be it at a poor quality) so it must be something I have configured differently.

The record element I ran from your example is:

<record name="recording" beep="true" type="audio/basic">
<prompt bargein="false">
Please record your message after the beep.
</prompt>
<catch event="nomatch noinput">
<reprompt/>
</catch>
</record>

I can't see what I am doing wrong. I am calling the Plum development platform hosted in the USA from the UK in case that is a factor.

Any clues would be most helpful.

Regards
Adrian Naude

support
Posts: 3632
Joined: Mon Jun 02, 2003 3:47 pm
Location: Boston, MA
Contact:

IVR issue caused by not providing unites with maxtime attrib

Post by support »

Hello,

Your IVR problems are being caused by the fact that you are not providing unites with your "maxtime" attribute. By default all numbers that do not specify a unit are assumed to be milliseconds. Given that your IVR application is telling our IVR system to try to record for 120 milliseconds, with a final silence of 3 seconds, this will likely give you very abnormal results. You should just add an "s" after your 120 to get a two minute recording:

Code: Select all

<form id="doRecord_Record">
        <record name="freddie" beep="true" type="audio/basic" dtmfterm="true" maxtime="120s" finalsilence="3s">
                <catch event="nomatch noinput error">
                        <assign expr="'STATUS_FAILED'" name="varLastStatus"/>
                        <goto next="#doDialog"/>
                </catch>
        </record>
</form>
Hope This Helps!

Regards,
Plum Support

Post Reply