Building an Appointment Reminder with CDYNE Phone Notify! Web Service

Phone Notify! Web Service supports 50 operations to build customizable and scalable voice applications. It’s designed to enable any business application to send or receive up to 5,000 tier-1 quality phone calls per minute using text to speech, recorded files, or both. This article will take a look at 2 operations to build a basic voice application that will use text to speech and a recorded sound file to send out an appointment reminder.

This tutorial uses  C# in Visual Studio 2010. You can find additional source code examples and download code examples from the Phone Notify! developer’s wiki.

Phone Notify! Operations Used

Step 1: Consuming Phone Notify! Web Service

  • Open a new or existing project in Visual Studio 2010
  • From the top tool bar, go to Project>Add Service Reference, which will open up the following screen:

  • Click on the Advanced button in the lower left-hand corner, which will open up another screen:

  • Click on the Add Web Reference button, which will open up a third screen:

  • Add the Phone Notify WSDL URL: http://ws.cdyne.com/NotifyWS/PhoneNotify.asmx?wsdl to the URL box, and click on the green arrow. This will pull up the Phone Notify! Web Service Description as shown in the next screen:
  • Name the web reference. In this case, we named it WSDL. Then click the Add Reference button.

Step 2: Setting Up a Basic Notify

The example below shows the code used to send a Basic Notify using the NotifyPhoneBasic method.

A few notes about using the NotifyPhoneBasic method:

  • This method will call any phone number in the US/Canada and read the TextToSay to that phone number
  • PhoneNumberToDial and CallerID must be filled in (they can be in any format as long as there is 10 digits)

When the program below is run with a license key, CDYNE Corporation will call 3215554757 with a text to speech message stating, “John Williams has an appointment with Dr. Smith on Tuesday, May 13 at 3pm.” The strings written in red in the screenshot is made up of the following components:

  • Phone number to dial – “3215554757”
  • Script –  “John Williams has an appointment with Dr. Smith on Tuesday, May 13 at 3pm.”
  • Caller ID – “7575449510”
  • Caller ID Name – “CDYNE Corporation.”
  • Voice ID – “4”
  • License Key – this is required to send or receive phone calls with Phone Notify! Web Service.

This notify uses voice ID 4, named Callie, and represents a US English female voice, age 30.You can invoke all voices available with Phone Notify! with the getVoices method. You may also listen to the voices at http://cepstral.com/demos/. Please note that the Cepstral website may contain voices not currently available with the Phone Notify! Web Service.

WSDL.PhoneNotify pn = new WSDL.PhoneNotify();

WSDL.NotifyReturn nr = pn.NotifyPhoneBasic(“3215554757”,

“John Williams has an appointment with Dr. Smith on Tuesday, May 13 at 3pm.”,

“17575449510”, “CDYNE Corporation”, “4”, “LicenseKey”);

Step 3: Request a Phone Call to Record a Sound File

One way to make automated phone reminders more personal is to use a recorded voice. Although text to speech can be very useful in some applications, it is a mechanical and impersonal sounding messaging tool for some customer interactions. In this step, we will use the RecordSoundViaPhoneCall method to call a designated phone number and record a sound file. The sound file recording states, “has an appointment with Dr. Smith on,” and leaves out the customer’s name, and the date and time of the appointment. These three values will remain as text to speech when we put the script together in Step 4.

A few notes about the RecordSoundViaPhoneCall method:

  • SoundfileIDs can only be lowercase and contain normal file characters
  • The CallerIDName will be the SoundFileID
  • The CallerID will be an 800 or 866 number

When this program is run with a license key, the phone number designated in the code (3215554757) will receive a phone call with instructions to record sound file “smith1.” Once recorded, the file will play back and the user has the option to accept or rerecord the message. We’ll access this file in the next step.

WSDL.PhoneNotify pn = new WSDL.PhoneNotify();

WSDL.RecordSoundViaPhoneCall(“3215554757”, “smith1”, “LicenseKey”);

Step 4: Putting Together the Script

In the final step, we’ll use the NotifyPhoneBasic method to combine the text to speech and recorded file, which we named smith1.

When the program below is run with a license key, CDYNE Corporation will call 3215554757 with a recorded message combined with text to speech variables. The variables include, “John Williams” and “Tuesday, May 13 at 3pm.”

WSDL.PhoneNotify pn = new WSDL.PhoneNotify();

WSDL.NotifyReturn nr = WSDL.NotifyPhoneBasic(“3215554757”,

“John Williams ~^smith1~ Tuesday, May 13 at 3pm.”,

“17575449510”, “CDYNE Corporation”, “4”, ” LicenseKey”);

For more information about CDYNE Phone Notify! API, please contact an account representative at 1-800-984-3710, inquire by email, or initiate a chat for more details.

Or sign up for a free trial license key to test CDYNE Phone Notify! API.

Developers find CDYNE Phone Notify! API integration details on the CDYNE developer’s wiki.

Leave a reply