RAPID VOICEXML DEVELOPMENT USING IBM S GRAPHICAL CALL FLOW BUILDER



Similar documents
VoiceXML Tutorial. Part 1: VoiceXML Basics and Simple Forms

Avaya Aura Orchestration Designer

Developing Usable VoiceXML Applications

Version 2.6. Virtual Receptionist Stepping Through the Basics

Phone Routing Stepping Through the Basics

Data Sheet VISUAL COBOL WHAT S NEW? COBOL JVM. Java Application Servers. Web Tools Platform PERFORMANCE. Web Services and JSP Tutorials

Adobe Flash Catalyst CS5.5

IBM Rational Web Developer for WebSphere Software Version 6.0

IBM Business Monitor V8.0 Global monitoring context lab

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

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

Signatures. Advanced User s Guide. Version 2.0

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

IBM Business Monitor. BPEL process monitoring

Vision Based Parking Lot Monitoring: Available Parking Spaces Information

Dialog planning in VoiceXML

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

Microsoft Access Basics

Setting Up Your Online ecommerce Shopping Cart

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

Voice User Interfaces (CS4390/5390)

Business Process Management IBM Business Process Manager V7.5

The Notebook Software Activity Guide

interactive product brochure :: Nina: The Virtual Assistant for Mobile Customer Service Apps

A This panel lists all the IVR queues you have built so far. This is where you start the creation of a IVR

DD Web based graphic designer for SharePoint workflows DD Central administration for processes and permissions DD Powerful capabilities with and

MEAP Edition Manning Early Access Program Hello! ios Development version 14

Interfaces de voz avanzadas con VoiceXML

What is BPM? Software tools enabling BPM

Creating Online Surveys with Qualtrics Survey Tool

Manage Software Development in LabVIEW with Professional Tools

Spiel. Connect to people by sharing stories through your favorite discoveries

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

Visual Studio.NET Database Projects

Tutorial: Mobile Business Object Development. SAP Mobile Platform 2.3

Data Mining. SPSS Clementine Clementine Overview. Spring 2010 Instructor: Dr. Masoud Yaghini. Clementine

WebSphere Business Monitor V6.2 Business space dashboards

Getting Started with Windows Mobile Development Windows Mobile SDK C#

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

A Development Tool for VoiceXML-Based Interactive Voice Response Systems

White Paper: 5GL RAD Development

VoiceXML Discussion.

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

Tutorial: Mobile Business Object Development. SAP Mobile Platform 2.3 SP02

Designing portal site structure and page layout using IBM Rational Application Developer V7 Part of a series on portal and portlet development

Develop enterprise mobile applications with IBM Rational software

IVR CRM Integration. Migrating the Call Center from Cost Center to Profit. Definitions. Rod Arends Cheryl Yaeger BenchMark Consulting International

Using the Query Analyzer

SignalDraw: GUI Tool For Generating Pulse Sequences

Screencast-o-matic ProPage Basics

Building and Using Web Services With JDeveloper 11g

Incorporating GeoGebra into Teaching Mathematics at the College Level

Data Flow Diagram (DFD) Tutorial Written Date : January 27, 2012

m ac romed ia Fl a s h Curriculum Guide

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

XML based Interactive Voice Response System

WebSphere Business Monitor

IBM SAP International Competence Center. Load testing SAP ABAP Web Dynpro applications with IBM Rational Performance Tester

Aspect Education Services

Business Insight Report Authoring Getting Started Guide

Build Your First Web-based Report Using the SAS 9.2 Business Intelligence Clients

Product Guide Nintex. All rights reserved. Errors and omissions excepted.

Form Management Admin Guide

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

Web services with WebSphere Studio: Deploy and publish

Cisco IOS VoiceXML Browser

1Building Communications Solutions with Microsoft Lync Server 2010

Exporting an image from Sibelius to Microsoft Word

Invitation to Ezhil : A Tamil Programming Language for Early Computer-Science Education 07/10/13

Dolby Conference Phone User s Guide 2.0. Issue 2

Software Development Kit

Interactive product brochure :: Nina TM Mobile: The Virtual Assistant for Mobile Customer Service Apps

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

Designing a Multimedia Feedback Tool for the Development of Oral Skills. Michio Tsutsui and Masashi Kato University of Washington, Seattle, WA U.S.A.

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

2 SQL in iseries Navigator

Designing the Process

Hosted Fax Mail. Hosted Fax Mail. User Guide

WebSphere Business Monitor V7.0 Script adapter lab

Cisco Enterprise Mobility Services Platform

Publishing, Consuming, Deploying and Testing Web Services

Abstract. Avaya Solution & Interoperability Test Lab

Installing C++ compiler for CSc212 Data Structures

Before you can use the Duke Ambient environment to start working on your projects or

CA Gener/OL r7.1. Overview. Business value

Getting Started with the Aloha Community Template for Salesforce Identity

VOICE INFORMATION RETRIEVAL FOR DOCUMENTS. Except where reference is made to the work of others, the work described in this thesis is.

WA2087 Programming Java SOAP and REST Web Services - WebSphere 8.0 / RAD 8.0. Student Labs. Web Age Solutions Inc.

Tutorial: Mobile Business Object Development. Sybase Unwired Platform 2.2 SP02

Acano Solution. Acano OS X Apps1.8 (build ) Release Notes. 19 November B

Ricardo Perdigao, Solutions Architect Edsel Garcia, Principal Software Engineer Jean Munro, Senior Systems Engineer Dan Mitchell, Principal Systems

Making Visio Diagrams Come Alive with Data

Transcription:

RAPID VOICEXML DEVELOPMENT USING IBM S GRAPHICAL CALL FLOW BUILDER TR 29.3787 May 10, 2004 Ciprian Agapi Felipe Gomez James R. Lewis IBM Pervasive Computing Boca Raton, Florida

ii

Abstract The evolution of VoiceXML development can be traced from writing programs on text editors (like Notepad for example), followed by the emergence of IDE s that contained VXML editors, which gave immediate feedback on syntax errors. The next step in VoiceXML development has been the emergence of graphical VXML programming. Using intuitive shapes to create voice applications, IBM s graphical Call Flow builder greatly simplifies and speeds up the development of VXML prototypes. ITIRC Keywords VoiceXML VXML Call Flow Graphical Development Graphical VXML Development Call Flow Builder Voice Prototypes Speech Recognition Text To Speech iii

Table of Contents Introduction 1 Call Flow Layout 1 The Staircase Approach 1 From General to Specific 2 Connections 5 Other Considerations 6 Support for DTMF 6 Discussion 7 Conclusion 9 Recommended Reading Material 11 Related Content 11 Trademarks 11 iv

v

Introduction IBM s Call Flow Builder is a very easy-to-use graphical tool to prototype and create voice applications. As with most tools, becoming familiar with it takes a little bit of time and effort, but in the long run, the time spent learning the tool will be greatly rewarded by exponential leaps in productivity. Call Flow Layout The Staircase Approach When creating call flows, there are several ways to lay out the objects on the canvas. We recommend that users lay out the objects using a step-down approach, where objects are laid out towards the bottom right of the previous object. Using a consistent approach leads to more readable call flows. The following diagram illustrates this point: Note that the objects are laid out in a staircase fashion. Also note that the GlobalCommands object appears on the top right hand corner of the first screen for easier readability and accessibility. The unimplemented feature object appears towards the bottom left hand corner of the screen in order to maximize 1

the canvas real estate by clustering together functions and features used elsewhere in the call flow. From General to Specific To increase a user s productivity with the Call Flow Builder, we recommend that the development follows a top down work breakdown structure, and flows from the general to the specific. This way, a user can develop the voice application in several passes: Step 1. - In the first pass, a user identifies and creates the objects needed and the overall flow and connections of the application. When the objects are created, there is no need to worry about the exact wording of each object - this can be done in a later step. Instead, general names like "Greeting" or "Main Menu" can be used. For those objects that are being pointed to using GoTo s, it s advisable to enter a Name for easier back reference. Step 2. - In the second pass, a revision of each object can be made and values for the Optional fields in the property sheet can be entered. The optional fields contain the exact wording to be played back via TTS or Audio File. Also, in this pass DTMF support to User Responses (the yellow boxes) can be added by selecting the object and modifying its properties. At this stage, the desired level of support to the Catch properties can be added. Step 3. - In the third pass, a user should record the audio files using the List of Audio Files Required found in the.txt file by the same name as the.cfb file. Remember, DTMF audio files and Catch audio files need to be created from scratch using the names found in the List of Audio Files. Speech audio files can be easily created and recorded by simply clicking the audio icon in the object. In the future, the Sound Recorder will display the message that needs to be recorded. For now, the user might want to print the List of Audio Files and refer to it in order to record the correct message. Step 4. - In the fourth pass, the grammar files should be created. These can be associated with their Prompts by dragging and dropping the grammar file onto the figure in the canvas. Alternatively, a built-in grammar from the Select Grammar context menu in the Prompt properties field can be selected. 2

Step 5. - In the fifth pass, the application can be tested by selecting Simulate from the context menu. This will help identify problem areas before running the VoiceXML Simulator. Also, he call flow can be validated selecting Validate from the context menu, and fixing any problem areas. Lastly, the VoiceXML code can be generated by selecting Generate VoiceXML from the context menu. 3

4

Connections The current version of the Call Flow Builder, supports one-to-one connections only. That means that for every object on the call flow, there can only be one other object connected to it. In situations where several objects need to be connected to the same object, we recommend using GoTo's as in the following example: In this case, saying "Vanilla" or "Strawberry" will redirect the call flow to the statement named ComingUp. The previous example demonstrates the use of GoTo's as a means to support many-to-one connections. For that particular example, we could have used the Else-Path construct of the Prompt to achieve the same effect. The Else-Path construct refers to the default connection available from the centermost right or bottom points in the object. The following call flow illustrates this point: Saying "Vanilla" will redirect the call flow to the statement specific to Vanilla. Saying "Chocolate" or "Strawberry" will redirect the call flow to the default, elsepath connection object, ComingUp. 5

Other Considerations Support for DTMF As an option to using Speech Recognition in the voice application, DTMF (Dual Tone Multi-Frequency) allows the use of touch tone keys of a telephone to respond to user prompts and selections. Adding DTMF support to the application is easy, and it guarantees a response from the user that is not subject to voice misrecos. To add DTMF to the speech application, a DTMF key to each of the User Responses can be assigned. Then, the Optional-Speech property for each of the Prompts should be modified, so that the wording accurately reflects the DTMF key assignments in addition to the Speech responses. For example: "Say or Press 1 for Chocolate, Say or Press 2 for Vanilla, etc." Adding DTMF later in the project will also require the re-recording of the speech audio files with the revised wording. Lastly, adding DTMF keys to the application can be especially useful when testing the voice application in the Simulator. The Call Flow Builder supports three modes of interaction: Speech, DTMF and Speech-DTMF. By default, the code generated supports the Speech and Speech-DTMF mode. For users who wish to disable the speech recognition mode and support DTMF only, they can change the mode of the application by changing the following line in the.vxml file: <var name="mode" expr="'speech'" /> to: <var name="mode" expr="'dtmf'" /> 6

Discussion The VoiceXML code generated by the Call Flow Builder is sufficient enough to create and deploy simple voice applications, demos and prototypes. To create more complex, real world applications that include backend processing such as database access and other kinds of automation, a programmer still needs to be involved, to take code generated by the Call Flow Builder and modifying it to his/her needs. Additional programming skills required to deploy a full fledge application include Java, JSP, J2EE, and database programming, among others. In the future, end-to-end integration applications will further assist users in creating complex, real world voice applications. The quality of a voice application depends entirely on the amount of planning and available resources for the task at hand. High-end, high-quality applications require many person hours to create, especially as it regards to organizing and deploying a professional solution that makes good use of specialized voicetalent, user interface designers, human factors engineers, programmers and project managers. This document has been created to help users reach the top of their learning curve in the least amount of time. For questions, comments or feedback please visit the voice toolkit newsgroup at http://www.alphaworks.ibm.com/forum/voicetoolkit.nsf/main 7

8

Conclusion The Call Flow Builder is a rapid application development tool that facilitates the design and development of simple voice applications. It is our hope that this tool propels the expansion of the voice application market, much in the same way that graphical web page editors contributed to the explosive growth of the internet. Perhaps, one day, the voice application market will be as widespread as today s internet. If there is one lesson to be learned from the growth of the internet, is that we need to take extreme care to create friendly and usable applications. In this way, our users will benefit greatly from them, and keep coming back for more. We encourage you to study the material in the following chapter, Recommended Reading Material. We also encourage your questions, comments or feedback via the voice toolkit newsgroup at: http://www.alphaworks.ibm.com/forum/voicetoolkit.nsf/main 9

10

Recommended Reading Material - Chapter 2: Designing a Speech User Interface, in the Voice Toolkit 5.0, VoiceXML Programmer's Guide, shipped with our Voice Toolkit. This describes IBM s recommended best UI practices, and is updated for each release of the toolkit. - Balentine, B., & Morgan, D. M. (2001). How to build a speech recognition application: A style guide for telephony dialogs (2nd ed.). San Ramon, CA: Enterprise Integration Group. (http://www.amazon.com/exec/obidos/tg/detail/- /0967127823/qid=1082401580/sr=1-1/ref=sr_1_1/102-6721599- 9080161?v=glance&s=books) - Cohen, M. H., Giangola, J. P., and Balogh, J. (2004). Voice User Interface Design. Boston, MA: Addison-Wesley. (http://www.amazon.com/exec/obidos/tg/detail/- /0321185765/qid=1082401533/sr=1-1/ref=sr_1_1/102-6721599- 9080161?v=glance&s=books) Related Content Voice Toolkit for WebSphere Studio at: http://www-306.ibm.com/software/pervasive/voice_toolkit/. WebSphere Studio Trial Program at: http://www- 106.ibm.com/developerworks/websphere/downloads/WSsupport.html?S_TACT= 103BGW01&S_CMP=campaign Questions, comments or feedback at: http://www.alphaworks.ibm.com/forum/voicetoolkit.nsf/main Trademarks WebSphere is a trademark of International Business Machines Corporation in the United States, other countries, or both. Other company, product or service names may be trademarks or service marks of others. 11