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

calls disconect in the middle

Questions and answers about IVR programming for Plum DEV

Moderators: admin, support

Post Reply
simplee
Posts: 9
Joined: Mon May 02, 2016 4:47 am

calls disconect in the middle

Post by simplee »

Hi,

im trying to create a simple flow in plumDev.
but the calls keep being disconnected or redirected in the middle of the prompt.

im attaching a sample of my vxml:

<vxml version="2.0">
<form id="main">
<field name="input" type="digits">
<prompt timeout="10s" count="1,2,3">
<voice name="mike">
please enter your account number followed by the pound sign. you can find the account number on your paper statement
</voice>
</prompt>
</field>
<filled>
<submit namelist="input" next="...."/>
</filled>
<catch event="nomatch noinput" count="1,2">
<reprompt/>
</catch>
<catch event="nomatch noinput" count="3">
<goto next="#redirect"/>
</catch>
</form>
<form id="redirect">
<transfer dest="tel:+11234567890">
<prompt>
<voice name="mike">you are being transfered to customer support</voice>
</prompt>
</transfer>
</form>
</vxml>


most of the time the call is being transferred in the middle of the initial text in the field section, "please enter your account number" is being cut.

can you verify my vxml?
thanks!

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

Re: calls disconect in the middle

Post by support »

Hi,

The reason your full prompt isn't being played is due to the inputmodes of your field. There are two types of input modes over the phone, voice and dtmf (keypad). What's occurring is that your application is set up to accept both voice and dtmf by default, so when the prompt starts to play then the phone detects sounds coming into the phone microphone and barges in on the prompt, accepting the user input and either processing the <filled> block on a grammar match (digits), or entering the <catch> events otherwise. There are two resolutions to this. Firstly, you can disable the caller from being able to bargein on your prompts, ensuring they are always played in full by using the prompt tags bargein property. To disable bargein for a prompt, you simply set this attribute to false as such:

Code: Select all

<prompt bargein="false">You will not be able to interrupt this prompt.</prompt>
That's one way to solve this issue, however, when you only ever want the caller to enter dtmf input there is a much cleaner way to handle this situation. You can use the inputmodes property to determine which types of input you want the caller to be allowed to enter, either dtmf, voice, or both. In this case, you can simply set the inputmodes to dtmf and then voice will not be recognized and therefore only dtmf input will be accepted. Doing it in this manner is a way to ensure the prompt will not get interrupted by outside noise as well as still allowing the caller to interrupt the prompt with dtmf input so they can skip ahead if they're familiar with the application or if they already get the gist of the input field "please enter your account number..." This is generally the preferred approach as it makes for a better caller experience (not making your caller sit through lengthy prompts) as well as making it a more cost effective solution (as fewer seconds on each call will add up to fewer total minutes each month). To set dtmf as the only acceptable input, you can simply add the inputmodes property like such:

Code: Select all

<property name="inputmodes" value="dtmf"/>
This property is page-level, block-level, or field-level, so you can choose the available input modes as granular as you want in your scripts. Here's a link to the property for your reference:
http://www.plumvoice.com/docs/dev/voice ... inputmodes

Hopefully that helps, but please let us know if you have any questions.

Regards,
Plum Support

Post Reply