• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

VoiceXML

This version was saved 17 years, 11 months ago View current version     Page history
Saved by PBworks
on April 21, 2006 at 7:43:58 am
 

The ubiquitous "Hello, World" program ;-)

 

<vxml version = "2.1" >
  <form>
    <block>
    <prompt>
      Hello World. This is my first telephone application.
    </prompt>
    </block>
  </form>
</vxml>

 

To deply this voice application, we need a voice platform. Voxeo provides a free service for developers to host their VoiceXML and maps it to a toll-free 800+PIN service, a direct-inward-dial (DID) number, a skype ID, as well as a SIP number. However, voxeo only supports static VXMLs for this free service. Using our own voice platform is a better idea. Or otherwise, you can go for Voxeo and others' paid services.

 

Next, filling up a field using speech recognition:

 

<vxml version="2.0">
  <form>
  <field name="BoyBand">
    <prompt>Please enter the name of your favorite boy band</prompt>
      <grammar type="text/gsl"> [ (en sink) hansen (sweet hearts) (kill me now)] </grammar>
  </field>
  </form>
</vxml>

 

 

 

Voicexml voice recognition is not dictation style at all, in that it uses a predefined set of grammars, which describe a list of things the person can say at a given point. This is called "Command-And-Control" style rather than the "Dictation" style. The above grammer is in Nuance GSL format rather than W3C SRGS format.

 

<noinput>
        <prompt>I did not hear anything.  Please try again.</prompt>
        <reprompt/>
</noinput>
 
<nomatch>
        <prompt>I did not recognize that character.  Please try again.</prompt>
        <reprompt/>
</nomatch>

 

How to take action depending on user's input?

 

<filled namelist="SouthParkCharacter">
      <if cond="SouthParkCharacter == 'kenny'">
            <prompt>Kenny has more lives than a cat.</prompt>
      <elseif cond="SouthParkCharacter == 'cartman'"/>
            <prompt>Cartman is not fat.  He is big boned.</prompt>
      </if>
</filled>

 

Other important points:

1. Good practice: Minimize TTS. Use audio prompts.

2. Support barge-in.

3. Avoid IVR style menus. Give the user a little freedom.

4. Dynamic application using PHP/JSP/ASP.

 

My work:

1. Using browser simulation to get the data from existing web applications and present it over the telephone.

2. Example: IIM results

3. No changes required in the existing application.