VoiceXML Tutorial. Part 1: VoiceXML Basics and Simple Forms



Similar documents
Dialog planning in VoiceXML

VoiceXML. Erik Harborg SINTEF IKT. Presentasjon, 4. årskurs, NTNU, ICT

Thin Client Development and Wireless Markup Languages cont. VoiceXML and Voice Portals

! <?xml version="1.0">! <vxml version="2.0">!! <form>!!! <block>!!! <prompt>hello World!</prompt>!!! </block>!! </form>! </vxml>

Version 2.6. Virtual Receptionist Stepping Through the Basics

VOICEXML TUTORIAL AN INTRODUCTION TO VOICEXML

An Introduction to VoiceXML

BeVocal VoiceXML Tutorial

VoiceXML Overview. James A. Larson Intel Corporation (c) 2007 Larson Technical Services 1

Interfaces de voz avanzadas con VoiceXML

Materials Software Systems Inc (MSSI). Enabling Speech on Touch Tone IVR White Paper

Support and Compatibility

Since we are starting small, we will partake in the time-honoured tradition of true 'Hello World' applications.

How To Write A Powerpoint Powerpoint Gsl In A Html Document In A Wordpress (Html) Or A Microsoft Powerpoint (Html5) (Html3) (Powerpoint) (Web) (Www

VoiceXML Programmer s Guide

VXI* IVR / IVVR. VON.x 2008 OpenSER Summit. Ivan Sixto CEO / Business Dev. Manager. San Jose CA-US, March 17th, 2008

Open Source VoiceXML Interpreter over Asterisk for Use in IVR Applications

VoiceXML-Based Dialogue Systems

Voic . Advanced User s Guide. Version 2.0

A Development Tool for VoiceXML-Based Interactive Voice Response Systems

Phone Routing Stepping Through the Basics

Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 03 XML based Standards and Formats for Applications

1. Login to with your User ID and password. Select Virtual Receptionist from the Basic Services tab.

Traitement de la Parole

VoiceXML versus SALT: selecting a voice

XML based Interactive Voice Response System

VoiceXML Discussion.

Developing Usable VoiceXML Applications

CUSTOMER CONFIGURATION AUTO ATTENDANT ADMINISTRATOR S GUIDE

Abstract. Avaya Solution & Interoperability Test Lab

Web page creation using VoiceXML as Slot filling task. Ravi M H

How To Use Voicexml On A Computer Or Phone (Windows)

Specialty Answering Service. All rights reserved.

VoiceXML. For: Professor Gerald Q. Maguire Jr. By: Andreas Ångström, and Johan Sverin, Date:

Form. Settings, page 2 Element Data, page 7 Exit States, page 8 Audio Groups, page 9 Folder and Class Information, page 9 Events, page 10

Speech Recognition of a Voice-Access Automotive Telematics. System using VoiceXML

A design of the transcoder to convert the VoiceXML documents into the XHTML+Voice documents

RAPID VOICEXML DEVELOPMENT USING IBM S GRAPHICAL CALL FLOW BUILDER

Auto Attendant or IVR Setup Guide DigiCloud IP PBX Solution

Signatures. Advanced User s Guide. Version 2.0

VoiceXML and Next-Generation Voice Services

Voice Processing Standards. Mukesh Sundaram Vice President, Engineering Genesys (an Alcatel company)

Grammar Reference GRAMMAR REFERENCE 1

My Account Quick Start

Voice User Interface Design

CHAPTER 4 Enhanced Automated Attendant

Quick Guide to TraiTel IVR

Speech Applications - Accessing information by voice. Li Haizhou, PhD Vice President, InfoTalk haizhou.li@infotalkcorp.com

Voice Tools Project (VTP) Creation Review

The Program. The Program. ALTA2004 Introduction to VoiceXML. Recommended Literature. Rolf Schwitter

STATE OF THE IVR: INDUSTRY EXPERTS WEIGH IN Insights and best practices for getting the most out of your IVR interactions.

Building Applications with Vision Media Servers

About us. advanced crosschannel Software Solutions designed to provide. interaction with your. clients, improve. customer satisfaction.

VoiceXML and VoIP. Architectural Elements of Next-Generation Telephone Services. RJ Auburn

Hosted Voice Business Group Administrator Quick Start Guide

Description: Objective: Upon completing this course, the learner will be able to meet these overall objectives:

Dialogos Voice Platform

Speech-Enabled Interactive Voice Response Systems

Dramatically simplifying voice and data networking. IVR Editor HOW-TO Guide

Standard Languages for Developing Multimodal Applications

Vxi* VoiceXML browser!

DRAGON NATURALLYSPEAKING 12 FEATURE MATRIX COMPARISON BY PRODUCT EDITION

VIDEO IVR VAS & Customer Care

Application Notes for Speech Technology Center Voice Navigator 8 with Avaya Aura Experience Portal Issue 1.0

Deploying Cisco Unified Contact Center Express Volume 1

9RLFH$FWLYDWHG,QIRUPDWLRQ(QWU\7HFKQLFDO$VSHFWV

PBS&J Drives Caller Satisfaction with Voxeo-Powered 511 Phone Applications

Cisco IOS VoiceXML Browser

Using Dialogic Boards to Enhance Voice Mail/Messaging Applications. Application Note

Shaw Business. Auto-Attendant User Guide

ONcbx Feature Guide UC Desktop Client

Verizon Business National Unified Messaging Service Enhanced Service Guide

The Future of VoiceXML: VoiceXML 3 Overview. Dan Burnett, Ph.D. Dir. of Speech Technologies, Voxeo Developer Jam Session May 20, 2010

Australian Standard. Interactive voice response systems user interface Speech recognition AS AS

Hosted Fax Mail. Hosted Fax Mail. User Guide

AUTOCUE IVR. User Guide Updated: 06/18/15 Document Number: 36UG

Avaya Aura Orchestration Designer

Dragon Mobile Assistant

E I M S - Interactive Voice Response System

Mass Announcement Service Operation

V O C A L C O M H E R M E S I V R. H e r m e s I V R. I n t e r a c t i v e V o i c e R e s p o n s e

AN EXTENSIBLE TRANSCODER FOR HTML TO VOICEXML CONVERSION

new voice technologies deliver

Voice Broadcast Opt Out Feature

Integrating VoiceXML with SIP services

To help manage calls:

2014 Direct Drive, Inc. All rights reserved.

Contents. Page. Page 2

Application Note. Using Dialogic Boards to Enhance Interactive Voice Response Applications

Following this Jumpstart on creating a SurVo IVR is an Addendum that explains some more specific details about the SurVo application.

VoiceXML Data Logging Overview

Aesop QuickStart Guide for Substitutes

Model based development of speech recognition grammar for VoiceXML. Jaspreet Singh

Realising the Potential of VoiceXML

Vision Based Parking Lot Monitoring: Available Parking Spaces Information

Voice Call Addon for Ozeki NG SMS Gateway

Hermes.Net IVR Designer Page 2 36

Specialty Answering Service. All rights reserved.

Hosted IP-PBX Phone System

Transcription:

VoiceXML Tutorial Part 1: VoiceXML Basics and Simple Forms

What is VoiceXML? XML Application W3C Standard Integration of Multiple Speech and Telephony Related Technologies Automated Speech Recognition (ASR) Text-to-Speech Synthesis (TTS) DTMF Interactive Voice Response (IVR) What to use it for Describe Voice UIs for web content access over the phone Implement Speech-enables telephony applications

VoiceXML Applications Voice portals Provide personalized services to access information like stock quotes, weather, restaurant listings, news, etc. Location-based services Receive targeted information specific to the location you are dialing from Applications use the telephone number you are dialing from Voice alerts (such as for advertising) Send targeted alerts to a user The user would sign up to receive special alerts informing him of upcoming events. Commerce Implement applications that allow users to purchase over the phone. Mostly used for products that don't need a lot of description (such as tickets, CDs, office supplies, etc.)

The Big Picture Implementation Platf orm

VoiceXML and XML Based on XML Tag/Attribute Format Elements must be properly nested! <element attr_name= attr_value >..contained elements.. </element> All documents start with <?xml version= 1.0?> All other instructions are enclosed within the <vxml> tag, called root element <vxml version= 2.0 >..VoiceXML Instructions.. </vxml>

Example 1 Basic Document Layout <?xml version= 1.0?> <vxml version= 2.0 >... VoiceXML Elements... </vxml>

VoiceXML Application Structure VoiceXML documents may be grouped together into applications A root document serves as the initial point of the application Leaf documents are connected to it Each document is made up from a set of dialogs A session begins as soon as the user begins interacting with a VoiceXML document Application Root Document Document Document Dialog Dialog Dialog Dialog

Dialogs Dialogs are the building blocks for VoiceXML documents Collect data from the user Offer choices to the user The user is always in a dialog Each dialog is followed by a new one If no dialog is specified next, the application ends Two top-level dialog elements Forms: <form> Menus: <menu> The difference is semantic. The behavior of a <menu> can easily be implemented with a <form>

Forms Discrete dialog elements Denoted by <form> tag Optional id attribute to specify name Responsible for executing some part of the dialog Forms contain various elements Elements perform tasks required by form Several, among which those known as form items <form id= welcome >..elements.. </form>

Example 2 VoiceXML Document with Form <?xml version= 1.0?> <vxml version= 2.0 > <form id= welcome >... Form Contents... </form> </vxml>

Delivering Content Two content delivery methods Text-to-Speech Pre-Recorded Prompts <prompt> All text is actually a TTS prompt Enclosure in <prompt> tags provides extra control over its behavior. <audio> Typically an 8kHz, 8-bit monaural audio file

Example 3 Hello World! <?xml version= 1.0?> <vxml base=. lang= en-us application= intro.vxml version= 2.0 > <form id= welcome > <block> <prompt> Hello World! </prompt> </block> </form> </vxml> Remarks on <vxml> base Base URI lang Language and Locale type application URI of app root document (only for leaf docs) version VoiceXML version Output: Hello World!

Example 4 Prompts <?xml version= 1.0?> <vxml version= 1.0 > <form id= welcome > <block> <prompt cond= (new Date()).getDay() == 0 bargein= false > Sorry! We are closed on Sunday. </prompt> <prompt cond= (new Date()).getDay()!= 0 bargein= false > Hello! Thanks for calling. </prompt> </block> </form> </vxml> bargein: the ability to interrupt a prompt cond: the condition that allows the prompt to be played timeout: the time the user has to respond to the prompt without causing an error

Example 5 Pre-Recorded Audio Playback <?xml version= 1.0?> <vxml version= 2.0 > <form id= welcome > <block> <prompt cond= (new Date()).getDay()!= 0 bargein= false > Hello! Thanks for calling. <audio src= welcome.wav caching= fast fetchhint= prefetch /> </prompt> </block> </form> </vxml> src: the file containing the prompt fetchhint: when should the browser download this file (prefetch or safe) caching: how to manage the cache

Example 6 Simple Dialog <?xml version= 1.0?> <vxml application= intro.vxml version= 2.0 > <form id= welcome > <block> <prompt> Hello World! </prompt> </block> </form> Output Hello World! My name is Chris. <form id= name > <block> My name is Chris. </block> </form> </vxml>

Collecting User Feedback Grammars A list of permissible vocabulary for the user to select from Two Grammar types Speech Grammars Legal Utterances DTMF Grammars Events Keypad sequences Thrown by the application for certain reasons No user input, erroneous input, user request for help

Basic Form Items Field Items: Gather information from caller to fill variables (field item variables) <field> input from user via speech or DTMF, as defined by a grammar Control Items: Enclose non-recognition based tasks <block> encloses sequence of statements for prompting and computation

Example 7 Gathering User Input with <field> <form id= getphone > <field name= PhoneNo > <prompt> What s your phone number? </prompt> <grammar src=../grammars/phone.gram type= application/x-jsgf /> <help> Please say your ten digit phone number. </help> </field> </form> Prompt user for input Recognize input according to specified grammar (type= phone utilizes the built-in phone number grammar) Catch any events appropriate to portion of dialog Fill field variable PhoneNo with recognized user response

Form Item Variables Associated with every form item Defined by name attribute Default value: undefined Gets filled in with user collected result Guard Conditions Default: test whether variable has a value If undefined, form item is executed If defined, form item is skipped

Gathering Data with a Form <?xml version= 1.0?> <vxml version= 2.0 > <form id= welcome > <field name= selection > <prompt> Please choose News, Weather or Sports. </prompt> <grammar> [ news weather sports ] </grammar> </field> <block> <goto next= choose.vxml /> </block> </form> Service Chooser Please Choose a service: News News Weather Sports OK </vxml>