Page 1 of 1

Answering machine calls missing the first part of my call

Posted: Thu May 03, 2007 11:28 am
by lfortnam
Dear All,

I am new to vxml so it could well just be me. I have been testing outbound calls which work fine when a human answers them with 'hello' or something and then the calls goes as planned. If I ignore the call, it goes to either my voicemail on my mobile or voicemail on my land line depending on which number I am sending to. Every time it goes to Answering machine it misses the first few seconds off my call.

Luckily I can force the call to play the answering machine version at will so I can actually get it to play the message in full so I know the script is in some way working as I would expect.

It just seems to be playing the call too early and hence finishing the first wav file before the beep and then playing the second wav file after the beep.

The log file indicates that it has picked up that the call went to an answering machine etc.

Any help or ideas of something silly that I may be doing will be gladly accepted. Not proud, just new!!!

Regards,

Lee

IVR code for special hooks to run diff scripts

Posted: Thu May 03, 2007 3:21 pm
by support
Hello,

When the Plum IVR system detects an answering machine control is returned to the VoiceXML script immediately. This will put the start of the IVR script squarely in the middle of the answering machine greeting. In order to prevent playback from starting right away you should start a high sensitivity recording that will "absorb" the greeting until is it over (note the value of the sensitivity in the <property> tag below. You will need to add special hooks in your IVR code to run different IVR scripts based on the passed calleetype (if you have not already done so). A simple IVR example would be:

Code: Select all

<?xml version="1.0"?>
<vxml version="2.1">
	<property name="sensitivity" value="1.0"/>
	<form>
		<record/>
		<block>
			<prompt bargein="false">
				<!-- YOUR MESSAGE GOES HERE -->
				This is the audio that should be heard after the answering machine.
			</prompt>
		</block>
	</form>
</vxml>
Regards,
Plum Support

Posted: Fri May 04, 2007 9:55 am
by lfortnam
Hi Support,

I have posted your code directly from the page to the answering machine file that is played only when an answering machine is dialled.

The system does not leave any message but I would have expected "This is the audio that should be heard after the answering machine." to be left as a message. Instead the system just leaves a 1 second blank message although this is most likely to be the orange answering machine.

Have looked on a few sites and people have suggested the following:

<record name="silence" finalsilence="1s" maxtime="25s" dtmfterm="false"> and then a goto statement which goes to the message to be read out. I have tried both but without success?

The script is at http://www.appointmentm8.com/index.cfm? ... .basiccall

with call parameters of Surgery=Hobs Moat|ClientID=5|LocationID=3|MessageID=1234|CallType=App|VoiceType=WAV|Date=26/04/07|Time=16:35

in case you want to try it to a line at your end.

Regards

Make sure IVR system detects caller as an answering machine

Posted: Wed May 09, 2007 4:27 pm
by support
Hello,

First you should make sure that the IVR system did in fact detect the caller as an answering machine, if it did the following IVR script (slightly modified from above) worked perfectly for us:

Code: Select all

<?xml version="1.0"?>
<vxml version="2.0">
	<property name="sensitivity" value="0.8"/>
	<form>
		<record beep="false" maxtime="60s" finalsilence="2s"/>
		<block>
			<prompt bargein="false">
				<!-- YOUR MESSAGE GOES HERE -->
				This is the audio that should be heard after the answering machine.
			</prompt>
		</block>
	</form>
</vxml>
No two answering machines are ever alike and so it's impossible to build a guaranteed system that can always detect the answering machine and record the initial audio. There are however measures you can take to better deal with false positives when voice is returned. When the callee type is returned as voice you should always confirm this by asking the callee to press a button to continue. This will guard against the case where the IVR system incorrectly detects an answering machine as voice. If you get one or two <noinput> events you should just play the message you would otherwise play for an answering machine.

Regards,
Plum Support

Posted: Thu May 10, 2007 5:31 am
by lfortnam
Thanks Support,

Worked a treat on every answering machine I have tested!

Regards,

Lee

:D