1 / 44

VoiceXML

VoiceXML. What is VoiceXML?. Voice Extensible Markup Language A standard language for voice applications Builds upon the work of earlier technologies: Motorola ’ s VoXML IBM ’ s SpeechML VoiceXML Forum Founders: AT&T, IBM, Lucent and Motorola Developed the VoiceXML 1.0 specification

blanca
Download Presentation

VoiceXML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. VoiceXML

  2. What is VoiceXML? • Voice Extensible Markup Language • A standard language for voice applications • Builds upon the work of earlier technologies: • Motorola’s VoXML • IBM’s SpeechML • VoiceXML Forum • Founders: AT&T, IBM, Lucent and Motorola • Developed the VoiceXML 1.0 specification • Approved by the W3 consortium, May 2000

  3. whatever

  4. Voice Web Characteristics There is not one World Wide Web, but several • Users may be mobile • No expensive device or software needed • One-dimensional interface time • Dialog design a challenge • Interface suited to transactions rather than surfing • Session duration is less than usual

  5. Browsing the Internet using voice Elements: • Computer • Network • HTML • Server: • Scripts • Multimedia Visual browsers vs. Voice browsers Elements: • Phone • VoiceXML • VoiceXML Gateway • Server • Scripts • Grammars

  6. Advantages of VoiceXML • Cost savings • Main input/ output device (initially) is the phone • A voice browser (phone) instead of a web browser • Implementation of speech solutions without prior knowledge of voice technologies • Make the Web more accessible • To people with visual and motor disabilities • No need for wired connection, just a phone!

  7. VoiceXML Document • Looks a lot like HTML • Tag based • To play an audio file or message • <audio> Hello world! </audio> • Different user Interaction • Audio output: • recorded and/or • text-to-speech (TTS) • Audio input: • touch- tone keys and/or • automatic speech recognition (ASR)

  8. Growth of Voice Web-based Apps. • The growth in demand for voice services is driven by the rapid penetration of mobile phone use.

  9. Wireless Internet

  10. Forms • A form is simply used to present information to a user or to retrieve information from the user. 5 1 6

  11. VoiceXML by Example <?xml version="1.0"?> <vxml version="1.0"> <form> <block>Hello World!</block> </form> </vxml>

  12. Dialogs • VoiceXML defines two types of dialogs that the application uses to interface with the user: • forms • menus.

  13. Forms • A form is simply used to present information to a user or to retrieve information from the user. • The <form> element generally includes a <goto> directive that tells the application where to jump based on the user's input.

  14. Menu • A menu is a specialized form that forces the user to choose a specific option and then branch based on the option that was chosen. • A menu uses multiple <choice> elements to define where to transition to based on the user's selection.

  15. A document may also have • <meta> elements, • <var> and <script> elements, • <property> elements, • <catch> elements, and • <link> elements.

  16. Another Hello Example <?xml version="1.0"?> <vxml version="1.0"> <meta name="author" content="John Doe"/> <meta name="maintainer" content="hello-support@hi.example"/>

  17. <var name="hi" expr="'Hello World!'"/> <form> <block> <value expr="hi"/> <goto next="#say_goodbye"/> </block> </form> <form id="say_goodbye"> <block> Goodbye! </block> </form> </vxml>

  18. <?xml version="1.0"?> <vxml version="1.0"> <var name="hi" expr="'Hello World!'"/> <form> <block><value expr="hi"/>Goodbye!</block> </form> </vxml>

  19. <?xml version="1.0"?> <vxml version="1.0"> <form> <block> Hello World Goodbye! </block> </form> </vxml>

  20. <?xml version="1.0" ?> <vxml version="1.0"> <!--main_greeting form.--> <form id="main_greeting"> <block> <audio> Welcome to I T K 3 52 </audio> <goto next="#ssn_prompt" /> </block> </form> </vxml>

  21. <?xml version="1.0"?> <vxml version="1.0"> <menu id="Simple_Example"> <prompt> <audio>Welecome to my voice mail. Say Mail to leave me a voice mail and Operator to return back to our operator. </audio> </prompt> <choice next="voicemail.vxml"> Mail </choice> <choice next="operator.vxml"> Operator </choice> <default><reprompt/></default> </menu> </vxml>

  22. <?xml version="1.0" ?> <vxml version="1.0"> <form id="test"> <field name="drink"> <prompt> Please, select a drink, tea or coffee? </prompt> <grammar>[tea coffee]</grammar> <help>Say Tea or Coffee.</help> <filled> <prompt> Okay, You want a <value expr="drink" /> Please, Enjoy. </prompt> </filled> </field> </form> </vxml>

  23. <?xml version="1.0"?> • <vxml version="1.0"> • <form> • <field name="drink"> • <prompt>Would you like coffee, tea, milk, or nothing?</prompt> • <grammar src="drink.gram" type="application/x-jsgf"/> • </field> • <block> • <submit next="http://www.drink.example/drink2.asp"/> • </block> • </form> • </vxml>

  24. JSGF • The JavaTM Speech Grammar Format is a platform-independent, vendor-independent textual representation of grammars for use in speech recognition. • Grammars are used by speech recognizers to determine what the recognizer should listen for, and so describe the utterances a user may say. • JSGF adopts the style and conventions of the Java programming language in addition to use of traditional grammar notations.

  25. Predefined Gramars <form id="getPhoneNumber"> <field name="PhoneNumber"> <prompt>What's your phone number? </prompt> <grammar type=“digits”/> <help> Please say your ten digit phone number. </help> </field> </form>

  26. <MENU> <menu> <prompt> What do you want, coffee or tea? </prompt> <choice next="#getcoffee"> coffee </choice> <choice next="#gettea"> tea </choice> <noinput> Please say coffee or tea. </noinput> <nomatch> Please say coffee or tea. </nomatch> </menu>

  27. < Disconnect> <block> You have selected coffee <disconnect /> </block>

  28. < Record> <form> <record name="message" beep="true" maxtime="10s" finalsilence="4s"> <prompt> At the tone, please record your message </prompt> </record> <field name="confirm" type="boolean"> The message is <value expr="message“ mode="recorded"/> <prompt> To keep it, say yes. To discard it, say no. </prompt>

  29. Record continue… . . <filled> <if cond="confirm"> Message saved, goodbye. <else/> Message discarded, goodbye. </if> </filled> </field> </form>

  30. Forms • A form is simply used to present information to a user or to retrieve information from the user. 5 1 6

  31. VoiceXML Calculator <?xml version="1.0" ?> <vxml version="1.0"> <form id="myCalculator"> <var name="result" /> <field name="op"> <!-- OPERATION --> <prompt> A Voice XML calculator. Choose add, or multiply. </prompt> <grammar>[add multiply]</grammar>

  32. Add or multiply? <!-- Choose your operation, add or multiply --> <help>Say add, or multiply.</help> <filled> <prompt> Okay, let's <value expr="op" /> two numbers. </prompt> </filled> </field>

  33. First number… <!-- FIRST OPERAND --> <field name="a" type="number"> <prompt>What’s the first number? </prompt> <help>Please say a number. This number will be the first operand. </help> <filled> <prompt> <value expr="a" /> </prompt> </filled> </field>

  34. Second Number… <!-- SECOND OPERAND --> <field name="b" type="number"> <prompt>and the second number?</prompt> <help>Please say a number. This number will be the second operand. </help> <filled> <prompt> <value expr="b" /> Okay. </prompt> </filled> </field>

  35. Adding (op==add) <block> <!-- NOW SAY THE RESULT --> <if cond="op=='add'"> <assign name="result" expr="Number(a) + Number(b)" /> <prompt> <value expr="a" /> plus <value expr="b" /> equals <value expr="result" /> </prompt>

  36. Multiply (op==multiply) <elseif cond="op=='multiply'" /> <assign name="result" expr="a * b" /> <prompt> <value expr="a" /> times <value expr="b" /> equals <value expr="result" /> </prompt> </if> <clear /> <!-- clear all fields, and continue! --> </block> </form> </vxml>

  37. References • VoiceXML Forum www.voicexml.org • Be Vocal Café café.bevocal.com • W3C WWW Consortium www.w3.org/TR/voicexml/

  38. What is Voice XML Builder? • Project Goal • A development platform for voice-based applications • General Features • A Java / XML application • runs on multiple systems • Makes writing VoiceXML code a lot easier • Provides VoiceXML insert tag tree, • Parsed VoiceXML syntax colorizing • Tutorials, online reference and more… • No need to install • Access to it using a web browser

  39. VoiceXML Builder Features • VoiceXML Builder • Designed as an editor for speech-based telephony applications • Compliant with the VoiceXML 1.0 Specification • General Purposes • Platform for the development of voice-based applications • Encourage the interest in voice browsing programs • Create Voice driven applications: • e-commerce • banking • voice portals

  40. VoiceXML Tutorials • Tutorials act as guides on how to use the editor • They also provide insight on how to build vxml applications • Start up a tutorial • How to create a simple VoiceXML application http://www.acs.ilstu.edu/faculty/javila/vxml/index.html

  41. VoiceXML Builder Demo http://www.acs.ilstu.edu/faculty/javila/vxml/index.html Lets create our first VoiceXML program!

  42. Voice XML Builder

  43. Hello World! Example

More Related