37
Voice Composer: Voice Composer: A Development Tool for A Development Tool for Voice Applications Voice Applications Yi-Xuan Li and Nai-Wei Lin Yi-Xuan Li and Nai-Wei Lin Department of Computer Scie Department of Computer Scie nce & Information Engineeri nce & Information Engineeri ng ng National Chung Cheng Univer National Chung Cheng Univer sity sity

Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Embed Size (px)

Citation preview

Page 1: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Voice Composer:Voice Composer:A Development Tool for A Development Tool for

Voice ApplicationsVoice Applications

Voice Composer:Voice Composer:A Development Tool for A Development Tool for

Voice ApplicationsVoice Applications

Yi-Xuan Li and Nai-Wei LinYi-Xuan Li and Nai-Wei LinDepartment of Computer Science & Department of Computer Science &

Information EngineeringInformation EngineeringNational Chung Cheng UniversityNational Chung Cheng University

Page 2: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Outline

• Motivations• Related work• The architecture of Voice Composer• The visual programming editor• The program generator• A case study• Conclusion

Page 3: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

• Prevalence of mobile voice devices requests rapid development and maintenance of voice applications

• Eye-disabled people requests convenient accesses of information and services via voice devices

• Current development tools for voice applications still have enough rooms for improving

Motivations

Page 4: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Voice XML

Voice XML gateway in

terp

rete

r

ASR

TTSca

ll pro

cesso

r Voice XML document

Internet

PSTN

Database

Voice XMLgateway

Audio

VoIP

WebServer

Page 5: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Dialog Flow

Page 6: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Current Tools

• Voice XML editors– syntax-directed editing

• Dialog wizards– programming with dialog components

• Visual dialog flow editors– visual programming of dialog

components

Page 7: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

The Architecture of Voice Composer

Dialog Flow

Editor

Program Generator Simulato

r

Database Integrator

Dialog Component Builder Visual Programming Editor

Page 8: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

• Database Integrator is based on ODBC, and maintains database schemas and database connection information

Database Integrator

database connection

database schemas

Page 9: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

• Builtin dialog components – start 、 exit 、 PHP 、 SQL 、 Menu 、 link

• User-defined dialog components – leaf components– root components: global variables and ev

ents– subdialog components

Dialog Components

Page 10: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

An Example

menu1.article2.music3.exit

read article

play music

menu1.repeat2.exit

press ’#’

press ’#’

menu1.repaet2.exit

Page 11: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

• Builtin dialog components used– start 、 exit 、 Menu

• New dialog components– Two leaf components

• Read article• Play music

– A root component• A global event: return to the main menu w

hen pressing ’#’ key

Build New Dialog Components

Page 12: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Dialog Component Builder

Exposed Attributes

AttributesSelected Element

Dialog ComponentTree

Page 13: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Play Music Dialog Component

Attributes

Page 14: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Play Music Dialog Component

Exposed Attributes

Page 15: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

New Dialog Components

Page 16: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Dialog Flow Editor

description

exposed attributes

link commands

user-defined

builtin

Page 17: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Root Component

exposed attributes

Page 18: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Main Menu Component

exposed attributes

Page 19: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Read Article Component

exposed attributes

Page 20: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Play Music Component

exposed attributes

Page 21: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Menu I Component

exposed attributes

Page 22: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Editing Menu II Component

exposed attributes

Page 23: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

• Translation of builtin dialog components

• Translation of user-defined dialog components

Program Generator

Page 24: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Translation of Builtin Components

Page 25: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Translation of Builtin Components

<?xml version="1.0" encoding="Big5"?><vxml version="2.0" xmlns="http://www.w3.org/2001/vxml"> <menu> <prompt> 這是一個範例測試,選 1 ,聽文章, 選 2 ,聽音樂,選 3 ,離開 </prompt> <choice dtmf="1" next="link-1.vxml"> 聽文章 </choice> <choice dtmf="2" next="link-2.vxml"> 聽音樂 </choice> <choice dtmf="3" next="exit.vxml"> 離開 </choice> </menu></vxml>

Menu_prompt

dtmf-1 string-1

Page 26: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Translation of User-Defined Components

XercesTree

ConversionVoiceXML

PHPConversion

PHP

Dialog

Component

Tree

DOM

Tree

Page 27: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

An Example

Page 28: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Dialog Component Tree

Page 29: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Tree Conversion

• Conversion of external variables• Conversion of grammars• Conversion of SQL commands

Page 30: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Conversion of External Variables

cont=”yesno=’yes’”

vxml

formvarname=question

field

filled

grammarprompt

prompt

expr=question

請選擇是或是否

if else

goto

next=A.vxml

goto

next=B.vxml

Grammar_process()

SQL_process()

Page 31: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Conversion of Grammars

Page 32: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Conversion of SQL Commands

Page 33: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Voice XML Generation

Page 34: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Conversion of PHP files

Page 35: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Case Study

Page 36: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Case Study• System analysis: 4 hours• Database construction: 2 hours• User-defined component constructio

n (4): 1 hour• Dialog flow editing (13): 0.5 hour• 124 Voice XML or PHP files are genera

ted

Page 37: Voice Composer: A Development Tool for Voice Applications Yi-Xuan Li and Nai-Wei Lin Department of Computer Science & Information Engineering National

Conclusion• Voice Composer is a development too

l for voice applications• Voice Composer supports visual prog

ramming of dialog flows• Voice Composer supports extension f

or user-defined dialog component construction

• Voice Composer supports extension for database programming