Page 1 of 1

Detect Answering Machine or VoiceMail

Posted: Wed Sep 30, 2009 11:35 am
by herzow
What is the proper way to leave a voicemail message from the system. Currently my application is cutting off the first 5-10 seconds of my message when it plays the wave file.

IVR post that addresses how to handle voicemail

Posted: Wed Sep 30, 2009 11:56 am
by support
Hi,

Here's a previous post that addresses this: http://support.plumvoice.com/viewtopic.php?t=1263

In that IVR example, you may have to adjust your finalsilence value depending on the voicemail.

Hope this helps.

Regards,
Plum Support

If answeringmachine Then DOTHIS Else DOTHIS

Posted: Wed Sep 30, 2009 1:05 pm
by herzow
How can I do the following:

If answeringmachine Then DOTHIS Else DOTHIS

With the following file?

<?xml version="1.0" ?>
<vxml version="2.0">
<form>
<block>
<prompt>
<audio src="http://audio.plumgroup.com/root/5224840 ... wav">Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!</audio>
</prompt>
</block>
</form>
</vxml>

This code below leaves a message. But plays air to a person

Posted: Wed Sep 30, 2009 1:13 pm
by herzow
<?xml version="1.0" ?>
<vxml version="2.0">
<form>
<var name="callee_type" expr="'answeringmachine'" />
<record cond="callee_type=='answeringmachine'" finalsilence="4000ms">
<noinput />
</record>
<block>
<prompt>
<audio src="http://audio.plumgroup.com/root/5224840 ... wav">Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!</audio>
</prompt>
</block>
</form>
</vxml>

IVR outbound recording example

Posted: Wed Sep 30, 2009 1:57 pm
by support
Hi,

We have tested using the following IVR script as our start_url and it left a voicemail just fine:

outboundrecord1.php:

Code: Select all

<?php
header("Content-type: text/xml");
echo("<?xml version=\"1.0\"?>\n");
$calleetype = $_POST['callee_type'];
?>
<vxml version="2.0">
<form id="mainmenu">
<var name="callee_type" expr="'<?= $calleetype ?>'"/>

<record cond="callee_type=='answeringmachine'" finalsilence="2000ms"/>
<block>
<prompt>
Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!
</prompt>
</block> 

</form>
</vxml>
If this doesn't work for you, you may need to adjust the finalsilence setting in your IVR tag, <record>, for your IVR code.

Regards,
Plum Support

I don't think you understood.

Posted: Wed Sep 30, 2009 2:04 pm
by herzow
It left a voicemail just fine you're correct.

However I want to do something like this.

IF "answeringmachine" THEN

Play this message

ELSE

Play a different message

END IF

I think this is working...

Posted: Wed Sep 30, 2009 2:05 pm
by herzow
Does this look like a VXML that is a best practice for what I am trying to do.

<?xml version="1.0" ?>
- <vxml version="2.0">
- <form>
<var name="callee_type" expr="'answeringmachine'" />
- <record cond="callee_type=='answeringmachine'" finalsilence="2000ms">
- <noinput>
- <prompt>
<audio src="http://audio.plumgroup.com/root/5224840 ... wav">Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!</audio>
</prompt>
<disconnect />
</noinput>
</record>
- <block>
- <prompt>
<audio src="http://audio.plumgroup.com/root/5224840 ... wav">Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!</audio>
</prompt>
</block>
</form>
</vxml>

IVR outbound recording code

Posted: Wed Sep 30, 2009 5:18 pm
by support
Hi,

This IVR code using the IVR tag, <record>, should help you achieve what you're looking for:

outboundrecord1.php:

Code: Select all

<?php
header("Content-type: text/xml");
echo("<?xml version=\"1.0\"?>\n");
$calleetype = $_POST['callee_type'];
?>
<vxml version="2.0">
<form id="mainmenu">
<var name="callee_type" expr="'<?= $calleetype ?>'"/>

<record cond="callee_type=='answeringmachine'" finalsilence="2000ms"/>
<block>
<prompt cond="callee_type=='answeringmachine'">
Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!
</prompt>

<prompt cond="callee_type!='answeringmachine'">
This is a different message.
</prompt>
</block> 

</form>
</vxml>
Hope this IVR code helps.

Regards,
Plum Support

ASPX Please

Posted: Wed Sep 30, 2009 6:49 pm
by herzow
Thank you. This looks like it might work.

What does the top part of this file look like in ASPX

<?php
header("Content-type: text/xml");
echo("<?xml version=\"1.0\"?>\n");
$calleetype = $_POST['callee_type'];
?>
<vxml version="2.0">
<form id="mainmenu">
<var name="callee_type" expr="'<?= $calleetype ?>'"/>

I thought I had it. Please look at this code.

Posted: Wed Sep 30, 2009 7:43 pm
by herzow
What am I missing below. It works for the "REGULAR CALL", but not hte "ANSWERING MACHINE".

<?xml version="1.0" ?>
<vxml version="2.0">
<form id="mainmenu">
<var name="callee_type" expr="''" />
<record cond="callee_type=='answeringmachine'" finalsilence="4000ms" />
<block>
<prompt cond="callee_type=='answeringmachine'">THIS IS AN ANSWERING MACHINE</prompt>
<prompt cond="callee_type!='answeringmachine'">THIS IS A REGULAR CALL</prompt>
</block>
</form>
</vxml>

I left out some server side code.

Posted: Wed Sep 30, 2009 7:44 pm
by herzow
strCallee_Type = Request.QueryString("callee_type")

--FOR THIS LINE THAT GENERATED
"<var name=""callee_type"" expr=""'" & strCallee_Type & "'"" />" & _

IVR ASP code example

Posted: Thu Oct 01, 2009 7:55 am
by support
Hi,

As we don't have any inhouse expertise on ASP (we're mainly a PHP shop here), we can't help you too much with your ASP code. However, this past IVR code example may help you with coming up with an equivalent to our PHP code:

outboundrecord1.aspx:

Code: Select all

<%Response.ContentType = "text/xml"%>
<?xml version="1.0"?>

<%
dim calleetype
calleetype = Request.Form("callee_type")
%>

<vxml version="2.0">
<form id="mainmenu">
<var name="callee_type" expr="'<%Response.Write(calleetype)%>'"/>

<record cond="callee_type=='answeringmachine'" finalsilence="2000ms"/>
<block>
<prompt cond="callee_type=='answeringmachine'">
Hello! This is a courtesy call from CMS.Our records indicate you have received, but not activated your debit MasterCard from TransCard.To avoid a delay in the processing of your settlement, and to access the many benefits of the card, you should activate your card as soon as possible. If your card is readily available and you are ready to activate your card, press 1 to connect with TransCard. If you would like to speak with a CMS customer service team member, please press 2 or dial 800-742-7508. Thank you and have a great Day!
</prompt>

<prompt cond="callee_type!='answeringmachine'">
This is a different message.
</prompt>
</block>

</form>
</vxml> 
Hope this IVR code using the IVR tag, <record>, helps.

Regards,
Plum Support