-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung betrifft die Sprachinteraktion bzw. den Sprachdialog über ein
Netzwerk. Insbesondere betrifft die vorliegende Erfindung die Sprachinteraktion über ein
Netzwerk unter Verwendung parametrierter Interaktionsdefinitionen.
-
HINTERGRUND
DER ERFINDUNG
-
Die
Informationsmenge, die über
Kommunikationsnetzwerke verfügbar
ist, ist groß und
wächst mit
hoher Geschwindigkeit. Das bekannteste solcher Netzwerke ist das
Internet, das ein Netzwerk verknüpfter
Computer rund um die Welt ist. Ein großer Teil der Popularität des Internets
kann dem World Wide Web-(WWW-)Teil des Internets zugeschrieben werden.
Das WWW ist ein Teil des Internets, in dem Information normalerweise
zwischen Server-Computern und Client-Computern unter Verwendung
des Hypertext-Übertragungsprotokolls
(HTTP) übermittelt
wird. Ein Server speichert Information und stellt (d.h. sendet)
die Informationen einem Client als Antwort auf eine Anfrage vom
Client zu. Die Clients führen
Computersoftwareprogramme, häufig
als Browser bezeichnet, aus, die beim Anfordern und Anzeigen von
Informationen helfen. Beispiele für WWW-Browser sind Netscape
Navigator, vertrieben von Netscape Communications, Inc., und der
Internet Explorer, vertrieben von Microsoft Corp.
-
Server
und die darin gespeicherte Information sind durch Uniform Resource
Locators (URL) kenntlich gemacht. URLs sind ausführlich in T. Berners-Lee et
al., Uniform Resource Locators, RFC 1738, Network Working Group
1994, beschrieben. Zum Beispiel bezeichnet der URL http://www.hostname.com/document1.html
das Dokument „document1.html" im Host-Server www.hostname.com.
Folglich enthält
eine Anfrage eines Clients nach Information von einem Host-Server
im allgemeinen einen URL. Die von einem Server an einen Client übermittelte
Information wird im allgemeinen als ein Dokument bezeichnet. Solche
Dokumente werden im allgemeinen anhand einer Dokumentensprache definiert,
wie etwa Hypertextauszeichnungssprache (HTML). Auf Anforderung von
einem Client sendet ein Server ein HTML-Dokument an den Client. HTML-Dokumente
enthalten Information, die durch den Browser interpretiert wird,
so daß einem
Anwender an einem Computerbildschirm eine Darstellung gezeigt werden
kann. Ein HTML-Dokument kann Information wie etwa Text, logische
Strukturanweisungen, Hypertext-Links und Anwendereingabeanweisungen
enthalten. Wenn der Anwender einen Hypertext-Link vom Bildschirm
auswählt
(zum Beispiel per Mausklick), fordert der Browser ein anderes Dokument
von einem Server an.
-
Gegenwärtig beruhen
die meisten WWW-Browser auf textlichen und grafischen Anwenderschnittstellen.
Folglich werden Dokumente als Abbildungen auf einem Computerbildschirm
dargestellt. Solche Abbildungen weisen zum Beispiel Text, Grafiken,
Hypertext-Links und Anwendereingabe-Dialogkästchen auf. Die meisten Anwenderinteraktionen mit
dem WWW erfolgen über
eine grafische Anwenderschnittstelle. Obwohl Audiodaten auf einem
Anwendercomputer empfangen und wiedergegeben werden können (z.B.
eine .wav- oder .au-Datei), ist ein solcher Empfang von Audiodaten
für die
grafische Schnittstelle des W W W sekundär. Folglich können mit
den meisten WWW-Browsern Audiodaten als Folge einer Anwenderanforderung
gesendet werden, aber es gibt nicht die Möglichkeit, daß ein Anwender mit
dem WWW unter Verwendung einer Audio-Schnittstelle zusammenwirkt.
-
Ein
Audio-Suchsystem ist in der US Patentanmeldung 08/635 601, übertragen
auf AT&T Corp. und
mit dem Titel Method and Apparatus for Information retrieval Using
Audio Interface offenbart, angemeldet am 22. April 1996 (nachstehend
als „AT&T-Audio-Browser-Patent" bezeichnet). Das
offenbarte Audio-Suchsystem erlaubt einem Anwender, auf Dokumente
auf einem mit dem Internet verbundenen Server-Computer unter Verwendung
einer Audio-Schnittstellenvorrichtung zuzugreifen.
-
In
einer im AT&T-Audio-Browser-Patent
offenbarten Ausführungsform
greift eine Audio-Schnittstellenvorrichtung
auf einen zentralisierten Audio-Browser zu, der auf einer Hilfseinrichtung
zur Audio-Suche ausgeführt
wird. Der Audio-Browser empfängt
Dokumente von Server-Computern, die mit dem Internet gekoppelt sein
können.
Die Dokumente können
spezialisierte Anweisungen aufweisen, die es ihnen ermöglichen,
mit der Audio-Schnittstellenvorrichtung verwendet zu werden. Die
spezialisierten Anweisungen sind normalerweise ähnlich wie HTML. Die speziellen
Anweisungen können
bewirken, daß der
Browser aus einem geschriebenen Text eine Audio-Ausgabe erzeugt
oder eine Eingabe vom Anwender durch DTMF-Töne oder automatisierte Spracherkennung
akzeptiert.
-
Ein
Problem, das bei einem Audio-Suchsystem auftritt, das einen zentralisierten
Browser aufweist, ist, daß die
Eingabe von Anwenderdaten oft eine komplexe Abfolge von Ereignissen
erfordert, die den Anwender und den Browser einbeziehen. Diese Ereignisse
sind zum Beispiel u.a.: a) Auffordern des Anwenders zur Eingabe;
b) Aufzählen
der Eingabewahlmöglichkeiten;
c) Auffordern des Anwenders zur zusätzlichen Eingabe und d) Informieren
des Anwenders, daß eine
frühere
Eingabe falsch oder widersprüchlich
war. Wir haben herausgefunden, daß es wünschenswert ist, den zentralisierten
Browser zu programmieren und kundenspezifisch anzupassen, um die
erlaubten Ereignisabfolgen, die vorkommen können, wenn der Anwender mit
dem Browser zusammenwirkt, zu definieren. Jedoch ist es beim Programmieren
und Anpassen wichtig, bestimmte Ausführungsprobleme, die sich sowohl
aus versehentlich falschem als auch aus böswilligem Programmieren ergeben,
möglichst
gering zu halten.
-
Ein
solches Problem besteht darin, daß ein Browser, der kundenspezifisch
angepaßt
worden ist, unansprechbar werden kann, wenn die kundenspezifische
Anpassung zum Beispiel eine Endlosschleife enthält. Zusätzlich zur Reduzierung der
Leistungsfähigkeit
des Browsers könnte
zum Nachteil anderer durch den Browser ausgeführter Tätigkeit eine solche Schleife
zulassen, daß sich
ein Telefonat über eine
längere
Zeit erstreckt, wodurch sich die Kosten des Telefonats nachteilig
erhöhen,
während
zur selben Zeit anderen Anrufern möglicherweise Zugriff auf den
Browser verweigert wird.
-
Ein
weiteres Problem, bekannt als „Anschlußsperre"-Angriff, ist für den Angreifer
leichter zu bewirken, wenn der Browser kundenspezifisch so angepaßt ist,
daß er
einen Anrufer die Verbindung halten läßt, ohne irgendeine Eingabe
anzubieten.
-
Einige
dieser Betriebsverhaltensprobleme sind im Zusammenhang mit nichtzentralisierten Browsern
weniger wichtig, da nichtzentralisierte Browser, die kundenspezifisch
schlecht angepaßt worden
sind, normalerweise nur den Computer beeinträchtigen, der den Browser und
die Computertelefonleitungen verarbeitet, und deshalb werden Programmierfehler
wirksam isoliert.
-
Jedoch
verschärfen
sich in der zentralisierten Browser-Ausführungsform des im AT&T-Audio-Browser-Patent offenbarten
Audio-Suchsystems und in jeglichem zentralisierten Browser, wenn
sich die Hilfseinrichtung zur Audio-Suche, die den zentralisierten
Browser ausführt,
Ausführungsprobleme
zuzieht, die negativen Auswirkungen der Probleme. In einem Audio-Suchsystem
greifen viele Anwender auf dieselbe Hilfseinrichtung zur Audio-Suche
durch vielfache Audio-Schnittstellenvorrichtungen zu, und folglich
treten bei vielen Anwendern negative Auswirkungen auf, wenn die
Hilfseinrichtung zur Audio- Suche sich
Ausführungsprobleme
zuzieht. Daher ist es wünschenswert,
Ausführungsprobleme
in einem Audio-Suchsystem möglichst
gering zu halten.
-
Ein
weiteres Problem bei den meisten bekannten Browsern ist, daß die am
Client-Computer in den Browser eingegebenen Daten normalerweise
an den Server gesendet werden, wo Überprüfung und Gültigkeitsbestätigung der
Daten ausgeführt
werden. Wenn zum Beispiel ein Anwender Daten durch eine Tastatur
in ein rechnergestütztes
Ausfüllformular
in einen Browser eingibt, werden diese Daten normalerweise an den
Internetserver gesendet, wo durch Überprüfung bestätigt wird, daß das Formular
richtig ausgefüllt
wurde (z.B. alle erforderliche Information eingegeben worden ist,
die erforderliche Anzahl von Stellen eingegeben worden ist usw.).
Wenn das Formular nicht richtig ausgefüllt wurde, sendet der Server
normalerweise eine Fehlermeldung an den Client, und der Anwender
versucht, die Fehler zu korrigieren.
-
Jedoch
liegen in einem Audio-Suchsystem die vom Anwender eingegebenen Daten
häufig
in Form von Sprache vor. Die Sprache wird unter Verwendung von Spracherkennung
in Sprachdaten oder Sprachdateien umgewandelt. Jedoch ist die Verwendung
von Spracherkennung zur Gewinnung von Sprachdaten nicht so genau
wie die Gewinnung von Daten durch die Eingabe über eine Tastatur. Deshalb ist
noch mehr Überprüfung und
Gültigkeitsbestätigung von
Daten erforderlich, wenn sie unter Verwendung von Spracherkennung
eingegeben werden. Ferner sind aus Sprache umgewandelte Sprachdateien
normalerweise im Vergleich zu den über eine Tastatur eingegebenen
Daten groß,
und das macht es schwierig, Sprachdateien häufig von der Hilfseinrichtung
zur Audio-Suche zum Internetserver zu senden. Deshalb ist es wünschenswert,
möglichst
viel Überprüfung und
Gültigkeitsbestätigung eingegebener
Daten im Browser in einem Audio-Suchsystem durchzuführen, so
daß die
Häufigkeit,
mit der die Sprachdaten zum Internetserver gesendet werden, möglichst
gering gehalten wird.
-
D.L.
Atkins et al. beschreibt in „Integrated Web
and Telephone Service Creation",
Bell Labs Technical Journal, Bd. 2, Nr. 1, ein System zur Erzeugung,
Erhaltung und Analysierung interaktiver Dienste, die den Zugriff
von vielen Vorrichtungen aus erfordern.
-
WO
97/23973 A mit dem Titel „Method
and System for Audio Access to Information in a Wide Area Computer
Network" beschreibt
ein Verfahren und System zur Darstellung verschiedener Typen von
Information in einem weiträumigen
Netzwerk in einer für
den Zugang über
eine Audio-Netzwerkschnittstelle
geeigneten Form.
-
Basierend
auf dem Vorhergehenden gibt es einen Bedarf an einem Audio-Suchsystem,
bei dem Ausführungsprobleme
der den Browser ausführenden
Hilfseinrichtung zur Audio-Suche möglichst gering gehalten werden
und bei dem die eingegebenen Daten normalerweise im Browser statt
im Internetserver überprüft und gültigkeitsbestätigt werden.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
Erfindung bietet ein Verfahren zum Betreiben einer Hilfseinrichtung
zur Audio-Suche und ein Audio-Suchsystem in einem Netzwerk, wie
in den beigefügten
Ansprüchen
dargelegt.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 zeigt
eine Darstellung eines Telekommunikationssystems, das für das Betreiben
einer Ausführungsform
der vorliegenden Erfindung geeignet ist.
-
2 veranschaulicht
die allgemeine Form einer parametrierten Interaktionsdefinition.
-
3A, 3B und 3C sind
Beispiele einer parametrierten Interaktionsdefinition.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
1 zeigt
eine Darstellung eines Telekommunikationssystems, das für das Betreiben
einer Ausführungsform
der vorliegenden Erfindung geeignet ist. Eine Audio-Schnittstellenvorrichtung,
wie etwa ein Telefon 110, ist mit einem Ortsnetzbetreiber (LEC) 120 verbunden.
Andere Audio-Schnittstellenvorrichtungen
als ein Telefon können
ebenfalls verwendet werden. Zum Beispiel könnte die Audio-Schnittstellenvorrichtung
ein Multimediacomputer mit Fernsprechfähigkeiten sein. In einer Ausführungsform
fordert ein Anwender des Telefons 110 Information an, indem
ein Telefonanruf zu einer Telefonnummer ausgelöst wird, die sich auf Information bezieht,
die von einem Dokumentenserver, wie etwa Dokumentenserver 160,
bereitgestellt wird. Ein Anwender kann auch Information unter Verwendung
einer beliebigen, als Audio-Schnittstellenvorrichtung funktionierenden
Vorrichtung, wie etwa einem Computer, anfordern.
-
In
der in 1 gezeigten Ausführungsform ist der Dokumentenserver 160 Teil
eines Kommunikationsnetzwerkes 162. In einer vorteilhaften
Ausführungsform
ist das Netzwerk 162 das Internet. Telefonnummern, die
sich auf Information beziehen, die über einen Dokumentenserver,
wie etwa Dokumentenserver 160, zugänglich sind, sind so eingerichtet,
daß sie zu
spezialisierten Telekommunikationsnetzwerkknoten, wie etwa einer
Hilfseinrichtung zur Audio-Suche 150, weitergeleitet werden.
-
In
der in 1 gezeigten Ausführungsform ist die Hilfseinrichtung
zur Audio-Suche 150 ein Netzknoten im Telekommunikationsnetzwerk 102,
das ein Fernsprechfernnetz ist. Folglich wird der Anruf zum LEC 120 weitergeleitet,
der den Anruf zu einer Fernnetzbetreiber-Vermittlungseinrichtung 130 über die Fernsprechhauptleitung 125 weiterleitet.
Das Fernsprechfernnetz 102 würde im allgemeinen weitere Vermittlungseinrichtungen, ähnlich der
Vermittlungseinrichtung 130, zum Weiterleiten von Anrufen
haben. Jedoch ist in 1 der Deutlichkeit halber nur eine
Vermittlungseinrichtung gezeigt. Es sei angemerkt, daß die Vermittlungseinrichtung 130 im
Telekommunikationsnetzwerk 102 insofern eine „intelligente" Vermittlungseinrichtung
ist, als sie eine Prozessoreinheit 131 enthält (oder
mit ihr verbunden ist), die dafür
programmiert sein kann, verschiedene Funktionen auszuführen. Eine
solche Verwendung von Verarbeitungseinheiten in Telekommunikationsnetzwerk-Vermittlungseinrichtungen
und deren Programmierung sind der Fachwelt bekannt.
-
Nach
Empfang des Anrufs in der Vermittlungseinrichtung 130 wird
der Anruf dann an die Hilfseinrichtung zur Audio-Suche 150 weitergeleitet.
Folglich wird dort ein Audio-Kanal zwischen dem Telefon 110 und
der Hilfseinrichtung zur Audio-Suche 150 aufgebaut. Die
Weiterleitung von Anrufen über
ein Telekommunikationsnetzwerk ist der Fachwelt bekannt und wird
hierin nicht weiter beschrieben.
-
Nach
Empfang des Anrufs und der Anforderung von Telefon 110 baut
die Hilfseinrichtung zur Audio-Suche 150 einen Kommunikationskanal
mit dem Dokumentenserver 160 auf, der der angerufenen Telefonnummer über eine
Verknüpfung 164 zugeordnet ist.
In einer WWW-Ausführungsform
ist die Verknüpfung 164 eine
Socket-Verbindung über
TCP/IP, deren Aufbau der Fachwelt bekannt ist. Für zusätzliche Informationen über TCP/IP
siehe Douglas Corner, Internetworking with TCP/IP: Principles, Protocols,
and Architecture, Englewood Cliffs, NJ, Prentice Hall, 1988. Die
Hilfseinrichtung zur Audio- Suche 150 und der
Dokumentenserver 160 kommunizieren miteinander unter Verwendung
eines Dokumentenserverprotokolls. Wie hierin verwendet, ist ein
Dokumentenserverprotokoll ein Kommunikationsprotokoll für die Übertragung
von Information zwischen einem Client und einem Server. In Übereinstimmung
mit einem solchen Protokoll fordert ein Client Information von einem
Server durch Senden einer Anforderung an den Server an, und der
Server antwortet auf die Anforderung durch Senden eines die angeforderte
Information enthaltenden Dokuments an den Client. Folglich wird
zwischen der Hilfseinrichtung zur Audio-Suche 150 und dem
Dokumentenserver 160 ein Dokumentenserverprotokollkanal über eine
Verknüpfung 164 aufgebaut.
In einer vorteilhaften WWW-Ausführungsform
ist das Dokumentenserverprotokoll das Hypertext-Übertragungsprotokoll (HTTP).
Dieses Protokoll ist in der Technik der WWW-Kommunikation bekannt
und wird ausführlich
beschrieben in T. Berners-Lee und D. Conolly, Hypertext Transfer
Protocol (HTTP) Working Draft of the Internet Engineering Task Force,
1993.
-
Es
kommuniziert also die Hilfseinrichtung zur Audio-Suche 150 mit
dem Dokumentenserver 160 unter Verwendung des HTTP-Protokolls.
Dabei verhält
sie sich, was den Dokumentenserver 160 betrifft, als wenn
sie mit irgendeinem konventionellen WWW-Client, der einen konventionellen
grafischen Browser ausführt,
kommunizieren würde.
Folglich stellt der Dokumentenserver 160 Dokumente an die Hilfseinrichtung
zur Audio-Suche 150 als Antwort auf Anforderungen zu, die
er über
Verknüpfung 164 empfängt. Ein
Dokument, wie es hierin verwendet wird, ist eine Informationssammlung.
Das Dokument kann ein statisches Dokument sein, indem das Dokument
im Server 160 vordefiniert wird und alle Anforderungen für dieses
Dokument zu derselben zuzustellenden Information führen. Als
Alternative könnte
das Dokument ein dynamisches Dokument sein, wobei die als Antwort
auf eine Anforderung zugestellte Information dynamisch zu der Zeit
erzeugt wird, zu der die Anforderung gestellt wird. Normalerweise
werden dynamische Dokumente durch Scripts erzeugt, die Programme
sind, die durch den Server 160 als Antwort auf eine Anfrage
nach Information ausgeführt
werden. Zum Beispiel kann ein URL einem Script zugeordnet sein.
Wenn ein Server 160 eine diesen URL aufweisende Anforderung
empfängt,
wird der Server 160 das Script zum Erzeugen eines dynamischen
Dokuments ausführen
und wird das dynamisch erzeugte Dokument an den Client, der die
Information anforderte, zustellen. Dynamische Scripts werden normalerweise
unter Verwendung des Common Gateway Interface (CGI) ausgeführt. Die
Verwendung von Scripts zum dynamischen Erzeugen von Dokumenten ist
der Fachwelt bekannt.
-
Wie
ferner unten beschrieben werden wird, weisen die durch den Server 160 zugestellten
Dokumente in Übereinstimmung
mit der vorliegenden Erfindung Sprachauszeichnungen auf, die Anweisungen
sind, die durch die Hilfseinrichtung zur Audio-Suche 150 interpretiert
werden. Um die Interaktion zwischen dem Anwender des Telefons 110 und
der Hilfseinrichtung zur Audio-Suche 150 zu erleichtern,
weisen die Sprachauszeichnungen in einer Ausführungsform Verknüpfungen
zu parametrierten Interaktionsdefinitionen auf. Näheres über parametrierte
Interaktionsdefinitionen wird unten beschrieben werden. Wenn die
Verknüpfungen
durch die Hilfseinrichtung zur Audio-Suche 150 interpretiert
worden sind, werden die entsprechenden parametrierten Interaktionsdefinitionen
aufgerufen. In einer anderen Ausführungsform sind die parametrierten
Interaktionsdefinitionen in das Dokument eingeschlossen.
-
In
einer Ausführungsform
sind die Sprachauszeichnungen und die parametrierten Interaktionsdefinitionen
geschrieben in einer auf HTML basierenden Sprache, aber speziell
für die Hilfseinrichtung
zur Audio-Suche 150 zugeschnitten. Ein Beispiel für HTML-ähnliche
Sprachauszeichnungsanweisungen ist „Audio-HTML", beschrieben im
AT&T-Audio-Browser-Patent.
-
Wenn
ein HTML-Dokument durch einen Client empfangen wird, der einen konventionellen WWW-Browser
ausführt, übersetzt
der Browser das HTML-Dokument in ein Bild und zeigt das Bild auf
einem Computerbildschirm an. Jedoch wandelt in dem in 1 gezeigten
Audio-Suchsystem die Hilfseinrichtung zur Audio-Suche 150 bei
Empfang eines Dokuments vom Dokumentenserver 160 einige
der Sprachauszeichnungsanweisungen, die sich in dem Dokument befinden,
in bekannter Weise, wie etwa unter Verwendung von Text-Sprache-Umwandlung, in
Audio-Daten um. Weitere Einzellheiten einer solchen Umwandlung sind
im AT&T-Audio-Browser-Patent
beschrieben. Die Audio-Daten werden dann über die Vermittlungseinrichtung 130 und
LEC 120 zum Telefon 110 gesendet. Folglich kann
auf diese Weise der Nutzer von Telefon 110 auf Information
vom Dokumentenserver 160 über eine Audio-Schnittstelle zugreifen.
-
Zusätzlich kann
der Nutzer eine Audio-Anwendereingabe vom Telefon 110 zurück zur Hilfseinrichtung
zur Audio-Suche 150 senden. Diese Audio-Anwendereingaben
können
zum Beispiel Sprachsignale oder DTMF-Töne sein. Die Hilfseinrichtung
zur Audio-Suche 150 wandelt die Audio-Anwendereingabe in Anwenderdaten oder
-anweisungen um, die für
das Übertragen
zum Dokumentenserver 160 über Verknüpfung 164 in Übereinstimmung mit
dem HTTP-Protokoll in einer bekannten Weise geeignet sind. Weitere
Einzelheiten einer solchen Umwandlung sind im AT&T-Audio-Browser-Patent beschrieben. Die Anwenderdaten
oder -anweisungen werden dann über
den Dokumentenserverprotokollkanal zum Dokumentenserver 160 gesendet.
Somit erfolgt die Anwenderinteraktion mit dem Dokumentenserver über eine
Audio-Anwenderschnittstelle.
-
Parametrierte
Interaktionsdefinitionen sind vordefinierte Hilfsprogramme, die
genau angeben, wie die Eingabe vom Anwender über die Audio-Schnittstellenvorrichtung 110 durch
Aufforderungen, Rückmeldungen
und Zeitabschaltungen zusammengetragen wird. Die parametrierten
Interaktionsdefinitionen werden durch spezifische Sprachauszeichnungsanweisungen
in Dokumenten aufgerufen, wenn die Dokumente durch den Audio-Browser
(bezeichnet als der „Browser
für gesprochene
Auszeichnungssprache" (VML-Browser))
interpretiert werden, der in der Hilfseinrichtung zur Audio-Suche 150 ausgeführt wird.
In einer Ausführungsform
definieren die Anweisungen Verknüpfungen
zu parametrierten Interaktionsdefinitionen. Die parametrierten Interaktionsdefinitionen
können
sich im Dokument oder irgendwo anders im in 1 gezeigten
Audio-Suchsystem befinden (z.B. im Dokumentenserver 160,
in der Hilfseinrichtung zur Audio-Suche 150 oder in irgendeiner
anderen Speichervorrichtung, die mit der Hilfseinrichtung zur Audio-Suche 150 gekoppelt
ist). In einer Ausführungsform
werden parametrierte Interaktionsdefinitionen in einer mit einem
Interaktionsdefinitionsserver gekoppelten Datenbank gespeichert.
Der Interaktionsdefinitionsserver ist mit dem VML-Browser gekoppelt,
so daß die
parametrierten Interaktionsdefinitionen für den VML-Browser bei Anforderung
verfügbar
sind. Zusätzlich
können
die Interaktionsdefinitionen Teil der Sprachauszeichnungsanweisungen
sein, in welchem Fall eine Verknüpfung nicht
erforderlich ist.
-
Zum
Beispiel kann eine parametrierte Interaktionsdefinition existieren,
die einem Anwender ermöglicht,
eine Auswahl aus einer Liste von Menü-Auswahlmöglichkeiten zu treffen. Diese
parametrierte Interaktionsdefinition könnte mit dem Titel „MENU_INTERACT" versehen sein. Wenn
ein Dokument einen Abschnitt aufweist, wo eine solche Interaktion
erforderlich ist, kann eine Sprachauszeichnungsanweisung geschrieben
werden, die diese Interaktion aufruft, wie etwa „Call MENU_INTERACT, parameter
1, parameter 2".
Diese Sprachauszeichnung würde,
wenn sie vom VML-Browser
interpretiert wird, die parametrierte Interaktionsdefinition mit
dem Titel „MENU_INTERACT" aufrufen und die
Parameter 1 & 2
durchlaufen.
-
Die
parametrierten Interaktionsdefinitionen ermöglichen es der vorliegenden
Erfindung, die bereits beschriebenen Vorteile zu erreichen (d.h.
Ausführungsprobleme
der Hilfseinrichtung zur Audio-Suche 150 möglichst
gering zu halten und eingegebene Daten an der Hilfseinrichtung zur
Audio-Suche 150 statt am Internetserver zu überprüfen und
ihre Gültigkeit
zu bestätigen).
Die parametrierten Interaktionsdefinitionen passen das Verhalten
des zentralisierten Audio-Browsers an und modifizieren es, um diese Vorteile
zu erreichen.
-
Speziell
definieren die parametrierten Interaktionsdefinitionen in einer
Ausführungsform
endliche Automaten. Es ist bekannt, daß endliche Automaten komplett
analysiert werden können,
bevor sie unter Verwendung bekannter Verfahren ausgeführt werden.
Die Analyse kann zum Beispiel bestimmen, ob die parametrierte Interaktionsdefinition
abbricht, wenn der Anwender nicht auflegt und keinerlei Eingabe
anbietet. Das verhindert, daß ein
Anwender den VML-Browser durch Nichtstun auf unbestimmte Zeit blockiert.
Ferner kann die Analyse bestimmen, ob alle Abschnitte oder Zustände der
parametrierten Interaktionsdefinition vom Anwender erreicht werden können. Ferner
kann die Analyse bestimmen, ob die parametrierte Interaktionsdefinition
Abschnitte oder Zustände
aufweist, die nicht zu einem Endpunkt führen, was eine Endlosschleife
verursachen würde. Dies
Zustände
können
revidiert oder eliminiert werden, bevor die parametrierte Interaktionsdefinition durch
den VML-Browser oder die Hilfseinrichtung zur Audio-Suche 150 interpretiert
oder ausgeführt
wird. Wegen der Verfügbarkeit
dieser Analyse-Programmierwerkzeuge
kann ein Entwickler eines Audio-Browserdokuments, das parametrierte
Interaktionsdefinitionen verwendet, sicher sein, daß, wenn das
Dokument Anwenderinteraktion erfordert, Unterbrechungen des Browsers
durch Implementieren der analysierten Interaktionsdefinitionen möglichst
gering gehalten werden.
-
Ferner
ermöglichen
die parametrierten Interaktionsdefinitionen eine Überprüfung der
Anwendereingabe. Folglich gibt es, da die parametrierten Interaktionsdefinitionen
in der Hilfseinrichtung zur Audio-Suche 150 interpretiert
werden, ein minimales Bedürfnis
nach Anwendereingabe, die zur Überprüfung an
den Internetserver gesendet werden muß. Dies spart Zeit und Telekommunikationskosten,
da eine Anwendereingabe häufig
aus relativ großen Sprachdateien
besteht.
-
Beispiele
einiger der möglichen
Typen parametrierter Interaktionsdefinitionen sind u.a. folgende:
- a) menu, wo der Anwender eine Auswahl aus einer
Liste von Menü-Auswahlmöglichkeiten
treffen muß;
- b) multimenu, wo der Anwender eine Teilmenge von Auswahlmöglichkeiten
auswählt;
- c) text, wo der Anwender eine Zeichenfolge bereitstellen muß;
- d) digits, wo der Anwender eine Zeichenfolge bereitstellen muß, deren
Länge nicht
von vornherein bestimmt ist;
- e) digitslimited, wo der Anwender eine vorbestimmte Anzahl von
Zeichen eingeben muß;
und
- f) recording, wo die Sprache des Anwenders auf einer Audio-Datei
aufgenommen wird.
-
2 veranschaulicht
die allgemeine Form einer parametrierten Interaktionsdefinition.
-
Zeile 200 definiert
eine Interaktion, bezeichnet mit „interaction_name", für den Interaktionstyp „interaction_type". Außerdem gibt
Zeile 200 alle Medien an, die in der Interaktion verwendet
werden können.
Die in Zeile 200 angegebenen Medien schließen automatische
Spracherkennung (ASR), Tastentöne oder
DTMF (TT) und Aufnahme (REC) ein.
-
Zeile 202 definiert
eine Anzahl von attribute-(Attribut-)Parametern. Attributparameter
werden verwendet, um die Interaktion zu parametrieren und sind in
der Sprachauszeichnungsanweisung eingeschlossen, die die Interaktion
aufruft. Wenn keine Parameter in den Sprachauszeichnungsanweisungen eingeschlossen
sind, wird ein Standardwert „default_value" als Parameter verwendet.
-
Zeile 204 definiert
eine Anzahl von message-(Nachrichten-)Parametern. Nachrichtenparameter
können
als formale Platzhalter im Automaten verwendet werden, um Aufforderungen
und Nachrichten, die bei Verwendung der Interaktion spezifiziert
werden, unterzubringen. Nachrichtenparameter werden auch verwendet,
um die Interaktion zu parametrieren und sind in der Sprachauszeichnungsanweisung
eingeschlossen, die die Interaktion aufruft.
-
Zeile 206 definiert
eine Anzahl von counter-(Zähler-)Variablen-Vereinbarungen.
Jeder Zähler wird
mit einem Anfangswert angegeben. Durch Operationen kann diese Variable
von einem festen Anfangswert (normalerweise kleiner als 10) dekrementiert
und auf 0 geprüft
werden.
-
Zeile 208 definiert
eine Anzahl von Boolean-(Booleschen)Variablen-Vereinbarungen. Jede Boolesche
Variable wird mit einem Anfangswert angegeben.
-
Zeile 210 definiert
eine Anzahl von state-(Zustands-)Angaben. Jeder Zustand enthält eines
der folgenden Konstrukte:
- 1) eine action (Aktion),
die aus einer in Sprache übersetzten
Nachricht und einem Code zur Änderung
des Zustands besteht, entweder sofort oder als Ergebnis von aktivierten
Ereignissen. Außerdem
sind die aktivierten input modes (Eingabemodi) angegeben. Zum Beispiel
gibt der Eingabemodus ttmenu, der für Interaktionen des Typs menu definiert
ist, an, daß Ereignisse,
die die Auswahl einer Auswahlmöglichkeit
bezeichnen, als Ergebnis einer Zeicheneingabe des Anwenders vorkommen
können.
Jedes Ereignis wird in einer event transition (Ereignisübergang)
erwähnt,
die die Nebenwirkungen angibt, die zu bewirken sind, wenn das Ereignis
vorkommt; oder
- 2) ein conditional expression (bedingterAusdruck), durch den
die Aktion von den Variableneinstellungen abhängig werden kann. Folglich
besteht ein bedingter Ausdruck aus Aktionen, die in WENN-DANN-SONST-Konstrukte
eingebettet sind.
-
Eine
in der bereits beschriebenen Sprache definierte Interaktion kann
als endlicher Automat betrachtet werden, dessen Gesamtzustandsraum
ein Produkt des aktuellen Zustands und der Werte der verschiedenen
Variablen ist.
-
3A, 3B und 3C sind
ein Beispiel einer parametrierten Interaktionsdefinition. Mit Bezug
auf 3A definiert Zeile 300 den Interaktionstyp
als menu (Menü)
und einen parametrierten Interaktionsnamen. Zeile 302 definiert
die Attribut-Parameter. Zeilen 304 und 306 definieren
Zähler-Variablen. Zeilen 308, 310, 312, 314, 316 und 318 zeigen den
Beginn der Nachrichten-Parameter an.
-
Mit
Bezug auf 3B zeigen die Zeilen 320, 322 und 324 den
Beginn verschiedener Zustände
an.
-
Mit
Bezug auf 3C zeigen die Zeilen 326, 328, 330 den
Beginn verschiedener Zustände
an. Schließlich
zeigt Zeile 332 das Ende der Interaktionsdefinition an.
-
Weitere
Einzelheiten des „initial"-(Anfangs-)Zustands,
der in Zeile 320 gemäß 3B beginnt,
werden beschrieben. Die anderen in 3B und 3C gezeigten
Zustände
funktionieren ebenso.
-
Anfangs
befindet sich der der Interaktion zugeordnete Automat im Zustand „initial", und die zwei Zähler-Variablen
TTERRCOUNT und TOCOUNT werden auf die Anfangswerte MAXTTERROR beziehungsweise
MAXTO gesetzt. Diese Werte sind, wenn nicht ausdrücklich bei
Verwendung der Interaktionsdefinition durch Parameter überschrieben,
2 beziehungsweise 3. Der Zustand „initial" gibt an, daß die Nachricht PROMPT (die
normalerweise ein Parameter ist, dessen aktueller Wert der Text
im Sprachauszeichnungsdokument ist, das der Verwendung der Interaktion
vorangeht) erzeugt werden muß,
während
der Tastenton-Kommandomodus (TT) und der Tastenton-Menüauswahlmodus
(TTMENU) aktiviert sind. Diese Aktivierungen ermöglichen, daß die Ereignisse TTMENU COLLECT
beziehungsweise TT INPUT= "HELPTT" vorkommen. Die erste
Ereignisart bezeichnet eine Wahlaufnahme, die eine Menüauswahlmöglichkeit
angibt. Die zweite Ereignisart bezieht sich speziell auf die Eingabe „HELPTT" (deren Standardwert „##" ist). Wenn ein Ereignis
der ersten Art stattfindet, dann ist der nächste Zustand des endlichen
Automaten „echochoice" (Echowahl). Wenn das
zweite Ereignis zuerst eintritt, dann ist der nächste Zustand „help" (Hilfe). Wenn ein
sinnloser Tastenton vorkommt, dann gibt der das Ereignis TTFAIL
einschließende
Ereignisübergang
an, daß TTERRCOUNT
dekrementiert werden muß und
daß der nächste Zustand „notvalid" (nicht zugelassen)
ist.
-
Wenn
keines dieser drei Ereignisse innerhalb eines durch „INACTIVITYTIME" (Zeit der Nichtaktivität) bestimmten
Zeitraumes eintritt, dann findet das Ereignis TIMEOUT (Zeitbegrenzung)
statt, TTERRCOUNT wird dekrementiert, und der nächste Zustand ist „inactivity".
-
Wie
beschrieben, interpretiert der erfindungsgemäße VML-Browser Dokumente in Übereinstimmung
mit parametrierten Interaktionsdefinitionen. Durch die parametrierten
Interaktionsdefinitionen kann ein Audio-Suchsystem Durchführungsprobleme
der Hilfseinrichtung zur Audio-Suche möglichst gering halten und eingegebene
Daten in der Hilfseinrichtung zur Audio-Suche statt in einem Internetserver überprüfen.
-
Ferner
bauen die parametrierten Interaktionsdefinitionen einen Dialog für die Eingabe
von Daten in ein Feld (z.B. das „HELPTT"-Feld) auf, wo Anwendereingabeabfolgen
und Systemantworten spezifisch sein können und gesteuert werden können. Jedes
anwendererzeugte Ereignis, wie etwa ein Tastendruck oder eine Lautäußerung durch
den Anwender, wird durch die parametrierten Interaktionsdefinitionen
gesteuert und beantwortet.
-
Die
vorangehende ausführliche
Beschreibung ist als in jeder Hinsicht veranschaulichend und beispielhaft,
aber nicht einschränkend
zu verstehen, und der hierin offenbarte Schutzbereich der Erfindung
ist nicht anhand der ausführlichen
Beschreibung zu bestimmen, sondern vielmehr anhand der Ansprüche, wie
sie im vollen Umfang, den die Patentgesetzen erlauben, interpretiert
werden. Es ist zu verstehen, daß die
hierin gezeigten und beschriebenen Ausführungsformen nur Veranschaulichungen
der erfindungsgemäßen Prinzipien
sind und daß verschiedene Änderungen
durch den Fachmann implementiert werden können, ohne vom Schutzbereich
und Erfindungsgedanken abzuweichen. Zum Beispiel führt das
in
-
1 gezeigte
Audio-Suchsystem den VML-Browser als einen zentralisierten Browser
in der Hilfseinrichtung zur Audio-Suche 150 aus. Jedoch kann
die vorliegende Erfindung auch mit anderen Ausführungsformen eines Audio-Suchsystems,
einschließlich
aller im AT&T-Audio-Browser-Patent
offenbarten Ausführungsformen,
realisiert werden.