Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
VXML “in einer Nußschale”
Referat im Rahmen des Seminars Dialogsysteme mit VXML SS2001 Universität Stuttgart, IMS Joachim Vollrath
2
Ziele Einstieg in VXML Überblick über die Technologie
Wichtigste "Tags"
3
VXML "in einer Nußschale”
Kurzübersicht XML Einführung in VXML VXML Grundelemente VXML Formular-Elemente Ausführbare Inhalte Komplexeres Beispiel
4
Kurzübersicht XML Beispiel Bedeutung von XML Sinn und Zweck von XML
5
VXML - ein Beispiel <? xml version="1.0" ?> <mitarbeiter>
<name>Meier</name> <vorname>Heinz</vorname> <gebdatum> <jahr>1938</jahr> <monat>10</monat> <tag>29</tag> </gebdatum> <!-- usw, usf --> </mitarbeiter>
6
Was ist XML? XML = eXtensible Markup Language XML = "SGML fürs Web"
Zitat: "XML wurde entwickelt um ein für alle Mal die von Microsoft und Netscape propagierten Tag-Suppenkriege zu beenden." (comp.infosystems. Entwicklung seit 1996, 1998 W3C-Standard
7
Warum XML? Universelle Metasprache um strukturierte hierarchische Information abzubilden Daten + Meta-Daten Von Mensch und Maschine zu verarbeiten Kostenlos, plattformunabhängig, breite Unterstützung (zumindest in der Theorie)
8
Einführung in VXML Beispiel Bedeutung von VXML Sinn und Zweck von VXML
9
VXML - ein Beispiel <? xml version=" 1. 0"?>
<vxml version=" 1. 0"> <form> <block><prompt>Hello, World!</prompt></block> <field name="greeting"> <prompt> What say you? </prompt> <grammar> hello | howdy | greetings | hey | password </grammar> <help> Say hello, howdy, greetings, hey, or password </help> <filled> You said <value expr="greeting"/> </filled> </field> </form> </vxml>
10
Was ist VXML? VXML = Voice eXtensible Markup Language
Sprach-basierte Telefonieanwendungen Seit 1999 durch das VXML-Forum entwickelt VXML-Forum = Zusammenschluß von AT&T, IBM, Lucent und Motorola
11
Warum VXML? Modellierung sprachgesteuerter Dialogsysteme
Beschreibung Mensch-Maschine-Schnittstelle Integration in bestehende Internet-Infrastruktur Einfaches Erstellen komplexer Applikationen
12
Grundlegende Konzepte
Design-Prinzipien von VXML VXML-Dokumente und -Applikationen VXML Architekturmodell Technologische Einbettung
13
Design-Prinzipien Abstraktion Applikation Plattform-Details
Modularität Unterstützung vieler Ein- und Ausgabeformate Vernetzung von Inhalten mittels URIs Auslagerung komplexer Berechnungen, Datenabfragen, etc.
14
Dokumente & Applikationen
root D2 D1
15
Implementation Plattform
Architekturmodell Document Server Implementation Plattform VXML Interpreter Context VXML Interpreter
16
Technologische Einbettung
17
VXML Grundelemente Formulare Menüs Links Variablen und Ausdrücke
Grammatiken Ereignisse Ausgaben
18
Formular Schlüsselelement in VXML-Dokumenten
Beherbergt Formular- und Kontrollelemente (ähnlich zu HTML) Interpretation durch FIA Directed & Mixed Initiative Form <form> <block><prompt>Hi, I am a form.</prompt></block> <!-- I can do more, but that's still to come --> </form>
19
Menü Erfragt Auswahl des Benutzers
Leitet entsprechend der Auswahl weiter <menu> <prompt>coffe, tea or milk?</prompt> <choice dtmf="1" next="coffe.vxml"> coffee </choice> <choice dtmf="2" next="tea.vxml"> tea </choice> <choice dtmf="3" next="milk.vxml"> milk </choice> </menu>
20
Link Enthält eine oder mehrere Grammatiken
Leitet weiter oder löst Ereignis aus, falls Grammatik mit Eingabe übereinstimmt <link next="books/main.vxml"> <grammar type="application/x-sjgf"> books | Voice XML books </grammar> <dtmf> 2 </dtmf> </link>
21
Variablen und Ausdrücke
Deklaration wie in Programmiersprachen <var name="pi" expr=" "/> Referenzierung über ECMAScript-Sprache <if cond="city == 'LA'"> </if> <assign name="mm" expr="expiry_date.substring(0,1)"/>
22
Grammatiken Menge von legalen Äußerungen Inline: Extern:
<grammar> visa {visa} | master [card] {mastercard} | amex {amex} | american [express] {amex} </grammar> Extern: <grammar src="URI" type="mime-type"/>
23
Ereignisse Auslösen: Abfangen: Verschiedene Ereignisse vordefiniert
<throw event="nomatch"/> Abfangen: <catch event="nomatch noinput" count="3"> <prompt>Security violation!</prompt> <throw event="telephone.disconnect.hangup"> </catch> Verschiedene Ereignisse vordefiniert
24
Ausgaben Ausgabe synthetisierter Sprache und Audio
Auszeichnung der Sprache Ausgabe gespeicherter Werte <prompt> <audio src="tada.wav"/> <emp>Hello</emp>, <value expr="caller">.<break> It has been <value expr="lastlogin"/> since your last call. </prompt>
25
VXML Formular-Elemente
Felder Filled Subdialoge
26
Field Speichert Benutzereingabe
Kann Grammatiken und Reaktionen enthalten <field name="lo_fat_meal" type="boolean"> <prompt>Do you want a low fat meal on this flight?</prompt> <help>Low fat is the opposite of high fat.</help> <filled> <prompt> I heard <emp><value expr="lo_fat_meal"/></emp>. </prompt> </filled> </field>
27
Filled Ausführen von Aktionen nach dem "Ausfüllen" von Feldern
<form id="get_city"> <field name="city"> <grammar src="served_cities.gram"/> <prompt>What is the city?</prompt> <filled> <if cond="city == 'Novosibirsk'"> <prompt>A wise choice indeed, Sir.</prompt> </if> </filled> </field> </form>
28
Subdialog Aufruf eines neuen VXML-Dialogs (Dokument)
Vergleichbar mit Funktionsaufruf <form> <subdialog name="result" src="#getdriverslicense"> <param name="birthday" expr="' '"/> </subdialog> </form> <form id="getdriverslicense"> <var name="birthday"/> <field name="drivelicense"> <filled> <grammar src="drivegrammar.gram" type="application/x-jsgf"/> <return namelist="drivelicense status"/> </filled> </field>
29
Ausführbare Inhalte Var, Assign, Clear If, ElseIf, Else Submit, Return
Exit
30
Var, Assign, Clear Deklaration Wertzuweisung Löschen
<var name=pi expr="3.0"/> Wertzuweisung <assign name="pi" expr=" "/> Löschen <clear namelist="pi"/>
31
If, ElseIf, Else Bedingte Ausführung
analog zu bekannten Programmiersprachen <if cond="city == 'LA'"> <assign name="city" expr=" 'Los Angeles'"/> <elseif cond="city == 'Big Apple'"/> <assign name="city" expr=" 'New York'"/> <else/> <assign name="city" expr="'Oberalfingen'"/> </if>
32
Submit, Return Weiterleitung auf andere Dokumente mit Parameterübergabe <submit next=" namelist="WKN Stueckzahl"/> Rückgabe von Werten an aufrufendes Dokument <return namelist="foo bar"/>
33
Komplexeres Beispiel Siehe Handout
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.