-
Hintergrund der Erfindung
-
Die
Erfindung betrifft allgemein Sprachnachrichtensysteme, deren Implementierung
sich auf Computer stützt.
-
Es
sind viele verschiedene elektronische Einrichtungen kommerziell
verfügbar,
die Menschen bei ihrer Kommunikation miteinander unterstützen. Außer dem
allgegenwärtigen
Telefon, das bereits seit Jahrzehnten verwendet wird, gibt es auch
schnurlose Telefonapparate im Haus, Mobiltelefonapparate für das Auto,
in der Hand zu haltende drahtlose Telefonapparate, die der Nutzer
in seiner Tasche unterbringen kann, Pagers, lokale und überregionale
Computernetze, Faksimilegeräte,
um nur einige Beispiele zu nennen. Die Anzahl und Art solcher Geräte nimmt
ständig
zu. Damit wächst
auch die Notwendigkeit, effektive Möglichkeiten für die Koordination
und Handhabung der elektronischen Kommunikationen zu finden, die
mit solchen Geräten
möglich sind.
-
Ein
System, das sich mit dieser zunehmend größer werdenden Notwendigkeit
beschäftigt,
ist in der U.S. Patentanmeldung mit der Seriennummer 08/316.635
und dem Titel „A
Network Based Knowledgeable Assistant", angemeldet am 30. September 1994,
beschrieben.
-
Das
darin beschriebene System wird als elektronischer Assistent bezeichnet.
Es handelt sich um eine computergestützte Entität, die einen Nutzer (als autorisierter
Teilnehmer bezeichnet) bei der Kommunikation assistiert, indem sie
bestimmte, auf sie übertragene
Aufgaben durchführt.
Dieser elektronische Assistent, der so aufgebaut ist, dass er menschenähnliche
Eigenschaften aufweist, erkennt Sprache und führt innerhalb des bekannten
Bürobereiches
Funktionen aus.
-
Jedem
autorisierten Teilnehmer mit einem Konto ist mindestens ein elektronischer
Assistent zugeordnet, der ihm allein oder auch anderen autorisierten
Teilnehmern zur Verfügung
stehen kann. Der elektronische Assistent bietet sowohl dem autorisierten
Teilnehmer als auch allen Kontaktierenden oder anderen Anru fern, die
den Teilnehmer zu erreichen versuchen, seine Dienste an. Ein Kontaktierender
ist eine Person, ein Platz oder eine Gruppe, die der autorisierte
Teilnehmer dem elektronischen Assistenten beschrieben hat. Ein Kontaktierender
kann ein anderer autorisierter Teilnehmer oder ein Anrufer von außen sein.
Elektronische Assistenten behandeln sowohl autorisierte Teilnehmer
als auch Kontaktierende als Teilnehmer des Systems.
-
Der
elektronische Assistent bietet seinen autorisierten Teilnehmern
einen weiten Bereich von Diensten an, unter anderen auch die folgenden.
Der elektronische Assistent kann ankommende Anrufe von mehreren Kontaktierenden
aus dem persönlichen
Bereich des autorisierten Teilnehmers bearbeiten, während er
gleichzeitig die jeweils erforderliche seiner Aufgaben abarbeitet,
wozu das Berichten von Nachrichten an den autorisierten Teilnehmer,
Informationen über
die Arbeitsabfolge usw. gehören.
Er kann logische Entscheidungen treffen über die Art der durchzuführenden
Aufgaben, ob die ankommenden Anrufe von den Kontaktierenden des
Teilnehmers durchgeschaltet und wohin sie weitergeschaltet werden
sollen. Der elektronische Assistent kann ebenfalls mit dem autorisierten
Teilnehmer und den Kontaktierenden des Teilnehmers kommunizieren, wozu
er eine Vielzahl unterschiedlicher Kommunikationseinrichtungen wie
beispielsweise Telefonapparate, Faxmaschinen, Pagers, Computer-Endgeräte und kommunikationsfähige Handgeräte (z.B.
Personal Digital Assistants, die auch als PDAs bezeichnet werden)
verwenden kann. Versucht der autorisierte Teilnehmer, einen Kontakt
zu erreichen, oder ein Kontaktierender versucht, den autorisierten
Teilnehmer zu erreichen, dann vermittelt der elektronische Assistent
die Verbindung und steht weiterhin zur Verfügung, um der Verbindung Wert
hinzuzufügen.
Der elektronische Assistent kann für seine autorisierten Teilnehmer
Terminerinnerungen einrichten und verwalten. Wird ein Termin fällig, dann
benachrichtigt der elektronische Assistent den Teilnehmer.
-
Im
U.S. Patent 5528670 wird ein allgemeines Sprachnachrichtensystem
beschrieben, mit dem eine allgemeine Sprachnachricht auf einer Mehrzahl
von Mailboxes eines autorisierten Teilnehmers aufgezeichnet werden
kann. Jeder der möglichen
autorisierten Teilnehmer kann auf die allgemeine Nachricht antworten,
wobei die Erwiderung an eine spezifische Ziel-Mailbox übermittelt
und auch in der Mailbox des Teilnehmers gespeichert wird. Jeder
Teilnehmer kann sich also die allgemeine Sprachnachricht zusammen
mit den individuellen Erwiderungen darauf anhören. Ein Problem bei dieser
Anordnung ist es, dass dieselbe Nachricht sehr oft aufgezeichnet
werden muss – in
Mailboxes, die den individuellen Empfängern zugeordnet sind.
-
Obgleich
solche Systeme einen bedeutenden Fortschritt auf diesem Gebiet darstellen
und den Nutzern deutlich Annehmlichkeiten und Nutzen bieten, gibt
es noch viele Möglichkeiten
zur Verbesserung. Die hier beschriebene Erfindung stellt eine Erweiterung
der Technik dar, die teilweise durch den oben beschriebenen elektronischen
Assistenten repräsentiert
wird.
-
Zusammenfassung der Erfindung
-
Gemäß einem
Aspekt der vorliegenden Erfindung wird ein Verfahren zum Handhaben
von Nachrichten geschaffen, das mit einem computer-gestützten elektronischen
Assistenten durchgeführt
wird. Das Verfahren enthält
als Merkmale den Schritt des Speicherns einer allgemeinen, an eine
Mehrzahl von Empfängern
gerichteten Sprachnachricht in einer Mailbox, die der genannten
Mehrzahl von Empfängern
gemeinsam gehört;
den Schritt des Empfängens
eines Anrufs von einem Anrufenden, wobei der Anrufende einer der
Mehrzahl von Empfängern
ist; den Schritt des Benachrichtigens des Anrufenden, dass die allgemeine
Sprachnachricht für den
Anrufenden zur Verfügung
steht, und, als Reaktion auf den Empfang eines ersten Befehls vom
Anrufenden, den Schritt des Wiedergebens der allgemeinen Sprachnachricht
für den
Anrufenden. Das Verfahren enthält
weiter als Merkmal die Schritte, dass, als Reaktion auf den Empfang
eines zweiten Befehls vom Anrufenden, eine Antwortnachricht des
Anrufenden aufgezeichnet und dass diese Antwortnachricht an die
allgemeine Sprachnachricht angefügt
wird, um eine modifizierte Nachricht zu erzeugen. Das Verfahren
enthält
weiter den Merkmalsschritt, die modifizierte Nachricht in der genannten
gemeinsamen Mailbox für
ein späteres
Abspielen durch mindestens einen anderen der Mehrzahl von Empfängern zu
speichern.
-
Weitere
Vorteile und Merkmale gehen aus der nachfolgenden Beschreibung der
bevorzugten Ausführungsform
und aus den Ansprüchen
hervor.
-
Kurzbeschreibung der Zeichnungen
-
1 ist
ein Gesamtblockschaltbild eines Systems, das die Erfindung darstellt;
-
2 ist
ein Blockschaltbild der Software-Architektur des Systems, das die
Erfindung darstellt;
-
3 ist
ein Blockschaltbild, das den Grundaufbau eines Systems zeigt, das
die Erfindung darstellt;
-
4a–4c sind
ein Dialog, mit dem die relevante Funktionalität dargestellt wird, die durch
das System nach 1 geschaffen und unterstützt wird;
-
5 zeigt
eine Datenstruktur, die zum Speichern von Nachrichten verwendet
wird.
-
Beschreibung von bevorzugten
Ausführungsformen
-
Als
Hintergrund für
diese Erfindung verweisen wir den Leser auf verwandte Technik, wie
sie in der U.S. Patentanmeldung mit der Seriennummer 08/316.635,
angemeldet am 30. September 1994, beschrieben ist, die durch Bezug
hierin eingeschlossen ist. Für
die Implementierung der nachfolgend beschriebenen Funktionen können Technik
und Systeme verwendet werden, wie sie in der oben genannten Patentanmeldung
beschrieben sind, oder es können
andere Wege gewählt
werden, die durchschnittlichen Fachleuten dieses technischen Gebietes
durchaus bekannt sind.
-
Gesamtaufbau der Hardware:
-
In 1 ist
mit einem Blockdiagramm ein System dargestellt, einschließlich der
Hauptsystemkomponenten und Telefonverbindungen, das Kommunikationen
an einen Nutzer oder von einem Nutzer über eine Mehrzahl von Medien
verwaltet. Das System besteht aus einem Personalcomputer CPU 100 (z.B.
Intel 486 oder Intel PentiumTM Prozessor)
und damit entweder als getrenntes Zusatzmodul oder als Fähigkeit
der CPU selbst vorgesehene Telefonleitungsschnittstellen 102,
die eine Anzahl von Telefonleitungen 104 verwalten und das
Beantworten ankommender Anrufe übernehmen,
abgehende Gespräche
platzieren, Signalgabe durch Tonwahl durchführen, Sprach- oder Datensignalen
auf den Leitungen erkennen und diese Signale an die CPU 100 zur
weiteren Bearbeitung durch ein Anwendungsprogramm 110 (das
heißt,
durch einen persönlichen
Assistenten) weiterleiten, das der Computer enthält und das die Möglichkeit
der Spracherkennung bietet. Es sind ebenfalls Endgerätestations-Schnittstellen 112 vorgesehen,
die einen oder mehrere Anschlüsse
für Endgerätestationen 114 enthalten.
Eine Anzahl von Endgerätestationen 114 kann
parallel mit jedem Anschluss verbunden sein. Die Endgerätestations-Schnittstelle 112 liefert
Sprachsignale an die Endgerätestation 114 und
ermöglicht
es, dass das Anwendungsprogramm 110 feststellt, wann der
Telefonhörer
aufgelegt oder abgenommen ist.
-
Es
sind Vorrichtungen auf dem Markt, die für die Implementierung der Hardware-Komponenten nach 1 zu
verwenden sind. Es wäre
beispielsweise möglich,
ein einfaches, preisgünstiges
System mit einer Leitung zu verwenden, das mit fortschrittlichen
Sprach-, Daten- und Fax-Modems zusammenwirkt (in der Industrie als „AT + V-Modems" bezeichnet) und
von einer Reihe von Anbietern zu beziehen ist, beispielsweise ein xxx-xxx
Modem-Controller von Rockwell. Diese Systemaufbauten arbeiten mit
einer ankommenden Leitung und bieten die Möglichkeit, eine Endgerätestation
zu betreiben. Ein System mit zwei ankommenden Leitungen weist jedoch
bedeutende Vorteile auf, obgleich damit die Kosten des Systems steigen.
Ein System mit zwei Leitungen wäre
für kleine
Betriebe und auch für
Familien mit häufig
vorkommenden Telefongesprächen
wichtig.
-
Die
zu beschreibende Ausführungsform
ist ein System mit mindestens zwei unabhängigen Telefonleitungsschnittstellen
sowie mindestens einem, vorzugsweise zwei, Endgerätestationsanschlüssen. Ist
eine Mehrzahl von Anschlüssen
vorhanden, ist auch eine Schaltmöglichkeit
erforderlich, über
die jeder Stationsstellenanschluss mit jeder Leitung oder nur mit
der Spracherkennung und dem Anwendungsprogramm verbunden werden
kann. Die zu beschreibende Ausführungsform
bietet die Möglichkeit,
ein Klingelsignal an jedem Endgerätestationsanschluss zu erzeugen,
das den Telefonapparat klingeln lässt.
-
Es
sind andere Konfigurationen vorgesehen, bei denen mehr ankommende
Leitungen und mehr Endgerätestationsanschlüsse vorhanden
sind. Das, in Kombination mit der Schaltmöglichkeit ermöglicht es,
dass mit der Anwendung der Soft ware eine kleine private Vermittlungsstelle
(PBX) für
ein Büro
geschaffen wird, womit alle das Telefon betreffenden Aufgaben in
einem Computer bearbeitet werden, der nur geringe Kosten verursacht.
-
Es
sind auch Konfigurationen vorgesehen, bei denen die Hardware-Kapazitäten außerhalb
des Computers angeordnet und mit dem Computer über eine Datenverbindung hoher
Geschwindigkeit verbunden sind. Dabei kann es sich um einen parallelen
Anschluss, einen seriellen Anschluss oder um die vor kurzem angekündigte Serial
Bus Architektur von Intel's
Architecture Laboratorien handeln, wie sie im Intel-Dokument Nr. xxx-xxxx
definiert ist. Diese externe Herangehensweise ermöglicht es
Nutzern, ihrem System Hardware-Möglichkeiten
hinzuzufügen,
ohne dass sie das Gerät öffnen und
neue Hardware-Karten installieren müssen.
-
Außerdem sehen
wir vor, dass der persönliche
Assistent von einem mit dem Telefonanschluss zusammenwirkenden Zusatzgerät, einer
Set-top-box, aus betätigt
werden könnte,
wie es von Kabelfernsehgesellschaften angeboten wird. In diesem
Fall würde
die Spracherkennung von der CPU in der Set-top-box durchgeführt und
die Telefon-Schnittstellenaufgaben würden über eine Schnittstelle in dem
Zusatzgerät
durchgeführt
werden.
-
Software-Konfiguration:
-
Aus 2 geht
hervor, dass die Software-Architektur es den Nutzern ermöglicht,
Nachrichten 142, Listen 144, Termine 146 und
Kontakte 148 über
eine Vielzahl von Schnittstellen zu verwalten. Nutzer können eine Bildschirmschnittstelle 150 verwenden,
um Zugang zum Bildschirm des Computers zu erlangen, oder sie können über eine
Sprachschnittstelle 158 und eine Spracherkennungseinrichtung 156 mit
der elektronischen Assistenz-Anwendungseinrichtung sprechen. Außerdem können sie
dem Assistenten über
eine Tonwahl-Schnittstelle 154 Signale übermitteln. Über Sprach-/Daten-Modems
(üblich,
jedoch nicht auf diese Modems beschränkt) können Nutzer ebenfalls bewirken,
dass Daten über
eine Datenschnittstelle 152 geschickt werden.
-
Architektur:
-
Die
grundsätzliche
Architektur für
den persönlichen
Assistenten ist in 3 dargestellt. Der Aufbau enthält eine
Datenzugangsebene 200, die mit dem Datenspeicher 204,
mit einer Maschine 206 und mit einem oder mehreren Assistenten 202 kommuniziert.
Der Assistent 202 und die Maschine 206 kommunizieren
miteinander über
eine Assistenten-Schnittstelle 208. Die Datenzugangsebene 200 und
die Assistenten 202 sind als dynamische Verbindungen mit
der Bibliothek (DLL) ausgeführt.
Bei dem Datenspeicher 204 für den persönlichen Assistenten handelt
es sich um ein Dateiensystem. Die Schleifen für die wichtigsten Programmpunkte
des gesamten Systems sind in der Maschine 206 angeordnet. Über die
Assistenten-Schnittstelle 208, die einfach eine Schnittstelle
für Anwenderprogramme
(API) ist, definiert für
die Verwendung durch die dynamischen Verbindungen mit der Bibliothek
(DLL) des Assistenten, koordiniert die Maschine 206 ankommende
Anrufe, Assistenten und Kommunikation zwischen den Assistenten.
-
Außer dem
in 3 gezeigten System sind noch zwei weitere Teile
vorhanden, die nicht gezeigt sind. Das erste Teil ist eine Erkennungseinrichtung,
die als Erkennungs-DLL aufgebaut ist und von den Assistenten für die Durchführung ihrer
Aufgaben verwendet wird. Das andere Teil ist ein Tischgerät. Außerdem sind
mehrere Möglichkeiten
mit grafischen Benutzeroberflächen
(GUI-Tools) vorgesehen, die sich in das System integrieren.
-
Datenspeicherung:
-
Die
grundlegende Klasse im Datenspeichersystem ist die Speicherklasse.
Jedes Objekt, das überhaupt
in der Datenbasis gespeichert werden kann, wird von der Speicherklasse
hergeleitet. Sie ist abgeleitet von der Objektklasse der Microsoft
Foundation Classes (MFC), die die Verwendung von Serialisierungsroutinen
zum Lesen und Schreiben von Daten auf Disks erlauben. Zusätzlich zu
den Serialisierungsroutinen enthalten aus der Speicherklasse hergeleitete
Objekte auch ein BrowseData-Verfahren, mit dem das Blättern im Datenspeicher
möglich
ist. Mit dieser Routine werden Datenlisten und Objektzeiger (Pointer)
mit ihren Werten in Zeichenkettenform zurückgegeben. Das Speicherobjekt
ist auch, wo das Objekt-Kennzeichen
bzw. die Ojekt-ID jedes speicherbaren Objektes angeordnet ist. Es
ist einfach der Pfadname von dem Stammverzeichnis des persönlichen
Assisten ten, wo die Datei, die zum Speichern dieses Objektes verwendet
wird, angeordnet ist.
-
Um
Objektzeiger bzw. Pointer für
andere Objekte zu speichern, stützt
der Speicher FAT Objektzeiger, d.h. Datenzuweisungstabellen. Jeder
FAT Objektzeiger, der aus der Speicherklasse abgeleitet wird, enthält die Objekt-ID
des Objektes, das er „kennzeichnet". Die Ptr-Klasse überlädt die erforderlichen
Maßnahmen,
um die Benutzung des Speichers durch Programmierer so unsichtbar
wie möglich
zu machen.
-
Zusätzlich zur
Schaffung von Speicherfunktionalität schafft diese Ebene auch
einen einfachen Sperrmechanismus. Hierbei handelt es sich um eine
einzige Sperre, die nur einen Prozesszugang zur Speicherebene nach
dem anderen zulässt.
-
Die Maschine:
-
Die
Maschine ist, wo der Haupt-TAPI (TAPI ist die Telefonschnittstelle
für Anwenderprogramme
von Microsoft und Intel für
Windows) und die Verzweigungen des Window-Programms bei bestimmten
Ereignissen (Events) angeordnet sind. Während unterschiedliche Assistenten
aktiviert und deaktiviert werden, sendet die Maschine jenen Assistenten
die Ereignisse (Events), die für
die Durchführung
ihrer Aufgaben erforderlich sind. Da die Maschine alles antreibt,
brauchen die Assistenten nur Hilfsprogramme für solche Ereignisse zu schreiben,
die von ihnen verwendet werden. Wenn beispielsweise ein Spiele-Assistent
nicht programmiert ist, einen auf der Telefonleitung ankommenden
Anruf zu bearbeiten, erhält
die Maschine die Nachricht und leitet sie an den Hauptassistenten,
der aufwacht und den Anruf auf geeignete Weise bearbeitet.
-
Die
Maschine hat auch einige Funktionen, die von den Assistenten abgerufen
werden können. Üblicherweise
werden bei diesen Anrufen Statusinformationen (wer ist auf der Leitung
usw.) zurückgegeben,
aber sie enthalten auch Anrufe, die Steuerung von einem Assistenten
auf einen anderen zu übertragen.
Möchte
beispielsweise ein Nutzer ein Spiel spielen, dann überträgt der Basis-Assistent
die Steuerung an das Spiel (und erhält sie später zurück).
-
Assistenten:
-
Die
Assistenten befinden sich dort, wo die Arbeit wirklich ausgeführt wird.
In dieser Architektur wird jeder „Arbeiter" als Assistent betrachtet. Die Anruferschnittstelle
ist beispielsweise eine getrennte DLL und damit ein Assistent. Dieser
modulare Aufbau ermöglicht
es, dass unterschiedliche Assistenten schnell und ohne Schwierigkeiten
auf der Basis von Familie/Gruppe oder einzelner Personen in das
System eingesteckt zu werden. Es gibt mehrere unterschiedliche Arten
von Assistenten, und die Schnittstelle für die Anwenderprogramme des
Assistenten enthält
einen Anruf, der es den Setup-Routinen ermöglicht, festzustellen, welche
Assistenten welche Aufgaben ausführen
können.
Die beschriebene Ausführungsform
enthält
die folgenden Arten Assistenten:
Assistent
für ankommende
Anrufe: | beantwortet
das Telefon und nimmt die Nachricht entweder entgegen oder leitet
den Anruf an den Basis-Assistenten weiter |
Basisassistent: | der
Assistent, der die Funktionalität
implementiert, die Gegenstand dieser Erfindung ist |
Hilfsassistent | alle
anderen wie Spiele-Assistenten, Aktienkurs-Assistenten usw. |
-
Schnittstelle für ankommende
Anrufe:
-
Die
Schnittstelle für
ankommende Anrufe ist ein getrennter Assistent in der beschriebenen
Ausführungsform.
Der Anrufer wird nur dann an einen Basis-Assistenten weitergeleitet, wenn festgestellt
worden ist, dass er ein autorisierter Teilnehmer ist und wenn er
das korrekte Kennwort gegeben hat. Es gibt drei unterschiedliche
Schnittstellen für
ankommende Anrufe.
-
Die
erste Anrufer-Schnittstelle ersetzt einfach den Anrufbeantworter,
mit der Ausnahme, dass Namen zum Zweck der Prüfung gesammelt werden. Es wird
eine Ansage abgespielt, die besagt, dass der Angerufene nicht zur
Verfügung
steht, und der Name des Anrufenden wird aufgenommen, wonach ein
Piepton ertönt.
Alle Nachrichten werden in einer einzigen gemeinsamen Mailbox abgelegt,
die über
die grafische Benutzeroberfläche
(GUI) zugänglich
ist. Es ist eine Liste von Ansagen in verschiedenen Stimmen vorhanden,
die besagen, dass der Angerufene nicht zu erreichen ist; aus der
Liste dieser Stimmen kann der Nutzer wählen, oder er kann eine eigene
Begrüßung generieren.
-
Die
zweite Schnittstelle für
ankommende Anrufe verwendet individuelle Mailboxes und ist deshalb
nur dann aktiv geschaltet, wenn die entsprechende Programmstufe
erreicht wurde. In dieser Schnittstelle gibt es gegenüber der
gerade beschriebenen einfacheren Version zwei wichtige Veränderungen.
Zuerst einmal wird der Name der Person oder der Gruppe, die der
Anrufende zu erreichen versucht, über Spracherkennung festgestellt.
Dann wird der Name des Anrufenden aufgenommen und dazu verwendet,
den Anruf anzukündigen. Jede
Nachricht wird nur in die Mailboxes gelegt, für deren Inhaber die Nachricht
gedacht ist.
-
Es
werden zwei Arten von Anruf-Begrüßungen unterstützt. Die
zuerst gehörte
Begrüßung ist
eine Familienansage, wie sie in ähnlicher
Weise die meisten Menschen heute auf ihren Anrufbeantwortern abspielen (z.B. „Hallo,
hier ist der Anschluss von ...").
Diese Nachricht wird allen Anrufenden zugespielt und es gibt davon nur
eine pro System. Die zweite Art der Begrüßung ist jedem Nutzer zugeordnet.
Nur den Anrufenden, die einen bestimmten Nutzer erreichen wollen,
wird diese Begrüßung zugespielt,
nachdem sie bekannt gegeben haben, wen sie erreichen möchten.
-
Für den Anrufenden
gibt es zwei Präsentationsebenen
der Begrüßung. Die
Systembegrüßung wird
allen Anrufenden übermittelt
unmittelbar nachdem der Assistent das Telefon beantwortet hat. Ist
der Ziel-Nutzer identifiziert, (d.h., derjenige, den der Anrufende
erreichen will), dann wird eine Nachricht von dem Nutzer an die
entsprechenden Anrufenden abgespielt, wenn sie vorhanden ist.
-
Die
dritte Schnittstelle ist eine Hybridform der ersten beiden. Das
heißt,
einige Menschen verwenden Anrufbeantworter, ohne die Namen der Familienmitglieder
anzugeben. Hinsichtlich der Schnittstelle für die ankommenden Anrufe spielt
diese Schnittstelle die Begrüßung der
einfachen Schnittstelle ab, nimmt den Namen des Anrufenden auf und
legt eine Nachricht in den Mailboxes aller Familienmit glieder ab.
Damit werden einigen Familienmitgliedern Nachrichten hinterlegt,
die für
sie nicht immer relevant sind.
-
Alle
Schnittstellen für
ankommende Anrufe unterstützen
das Prüfen
von Anrufen. Das geschieht, indem der vom Anruf aufgenommene Name über Lautsprecher,
die mit dem Computer verbunden sind, abgespielt wird. Dem Anrufenden
wird dann sofort ermöglicht,
eine Nachricht zu hinterlegen, die jeder im Haus dadurch unterbrechen
kann, dass er einen der Telefonapparate abnimmt und eine bestimmte
Sequenz der Tonwahlmöglichkeit
drückt.
-
Der Basis-Assistent:
-
Die
grundsätzliche
Idee des Basis-Assistenten ist es, für den Nutzer einen Assistenten
zu schaffen, der die Befehle des Nutzers ausführt und ihm bei der Durchführung von
Aufgaben hilft. Außerdem
unterstützt der
persönliche
Assistent eine Anzahl von wichtigen Funktionen, wozu eine virtuelle
Interkommunikationsanlage, ein virtueller Kühlschrank und eine Anruferübergabe
gehört,
wie sie nachfolgend kurz beschrieben werden.
-
Virtuelle Interkommunikationsanlage:
-
Diese
Interkommunikationsanlage ermöglicht
es einem Nutzer, einen anderen Nutzer (d.h. einen Ziel-Nutzer) jederzeit
anzurufen, und der Assistent interagiert dann mit dem Nutzer mit
der Stimme des Ziel-Nutzers – so
dass das Gefühl
einer Konversation mit dem Ziel-Nutzer entsteht.
-
Die
virtuelle Interkommunikationsanlage des Assistenten ist ein Makrobefehl
für einen „Sende_eine_Nachricht"-Befehl (siehe weiter
unten), der als Erwiderung der Zielperson eine Begrüßung bietet anstelle
der Erwiderung des Assistenten „Fahre_fort", womit auch das
Erkennen des Befehls bestätigt
wird. Um die virtuelle Interkommunikationsanlage zu verwenden, erzeugt
ein Nutzer zuerst einen Makro- oder „Schnell"-Befehl oder <virtuellen Interkommunikations-Trigger>, um den anderen Nutzer
anzusprechen (z.B. „Hallo,
Mama"). Die Erwiderung
des Nutzers, der den Befehl gibt, kommt mit der Stimme der Zielperson
zurück. Nachdem
die Nachricht aufgezeichnet wurde, erwidert der Assistent wieder
mit der Stimme der Zielperson, beispielsweise mit etwas Ähnlichem
wie: „Ich
nehme das mit, wenn ich das nächste
Mal hereinschaue".
Damit wird dem Nutzer das Gefühl
gegeben, dass er direkt mit Kontaktpersonen zu tun hat und nicht
nur mit dem Assistenten.
-
Virtueller Kühlschrank:
-
Es
ist noch ein weiteres Merkmal vorhanden, auf das sich der Assistent
als virtueller Kühlschrank
beziehen kann (a.k.a. der Kühlschrank).
Der Kühlschrank
ist der Ort, an dem Notizen von Familienmitgliedern angebracht werden,
damit alle anderen Familienmitglieder sie durchlesen können. Nutzer,
die Nachrichten an alle senden, wird die Option angeboten, die Nachricht
an den Kühlschrank
zu senden. Nachrichten, die auf diesem Wege gesendet werden, verhalten
sich anders als reguläre
Nachrichten, weil sie nicht verschwinden, nachdem jemand sie abgehört hat.
Tatsächlich
verschwinden sie erst, wenn der Absender sie vom Kühlschrank
entfernt. Zusätzlich
zur Durchsicht können
andere Familienmitglieder Zusätze
an das Original anhängen,
so dass Dinge wie Einkaufslisten aufgebaut werden können. Mit
anderen Worten, jeder, der auf eine Nachricht am virtuellen Kühlschrank
antwortet, wird gefragt, ob die Antwort an alle geschickt werden
soll. Geht die Antwort an jeden anderen, dann wird der Nutzer gefragt,
ob die Antwort an das Original angehängt werden soll, um eine Kette
zu bilden. Eine Nachricht bleibt am Kühlschrank, bis der ursprüngliche
Absender die gesamte Kette entfernt.
-
Ketten
werden auch von Nachrichten unterstützt, die nicht am Kühlschrank
angebracht sind. Während der
Assistent irgendeine Nachricht bereithält, kann ein Nutzer sagen: "Sag mir mehr", um weitere Informationen über die
Nachricht zu erhalten. Die erste Informationsebene gibt Datum und
Zeit der angekommenen Nachricht an sowie Informationen über die
in der Kette voraufgehende Nachricht, wenn es sich bei der gerade behandelten
Nachricht um eine Antwort handelt. Ein weiterer Befehl „Sag_mir_mehr" würde dann
zum Abspielen der in der Kette voraufgehenden Nachricht führen. Auf
diese Weise kann der Befehl „Sag_mir_mehr" dazu verwendet werden,
die gesamte Kette, einschließlich
aller Erwiderungen, bis zur Originalnachricht zu durchqueren. Es
kann vorkommen, dass einige der Nachrichten gelöscht sind; in einem solchen
Fall übermittelt
der Assistent dem Nutzer diese Information.
-
Ein
weiterer wichtiger Teil des Assistenten ist das Ordnen der Nachrichtenliste.
Im allgemeinen ist beim Assistenten ein Stapel von Nachrichten vorhanden,
der vom Nutzer zu bearbeiten ist, analog dem Stapel von Post, die
irgendwo in jemandes Haus vorhanden ist. Wenn nichts anderes vorgegeben
wird, werden die Nachrichten nach folgenden Kriterien geordnet:
Neue
Nachrichten
Neue oder kürzlich
modifizierte Kühlschrankvorgänge
Alte
Vorgänge
Alte
Kühlschrankvorgänge
-
Der
Nutzer kann diese Ordnung jedoch modifizieren.
-
Ein
Assistent sieht nach einem entsprechenden Befehl des Nutzers den
Stapel durch, macht den Nutzer auf Vorgänge aufmerksam und ermöglicht ihm,
sie zu bearbeiten. Außerdem
kann ein Nutzer mit dem Such-Befehl nach einer Person fragen. Als
Reaktion darauf sammelt der Assistent alle neuen, bisher noch nicht
abgehörten
Nachrichten von der identifizierten Person und transportiert sie
zur sofortigen Kenntnisnahme an den derzeitig bearbeiteten Platz
im Stapel.
-
Weitergabe ankommender
Anrufe:
-
Die
Weitergabe ankommender Anrufe ist ein besonderes Merkmal, das es
dem Nutzer ermöglicht,
einen Anruf mitten in einer Unterhaltung an den Assistenten weiterzuleiten.
Es gibt mehrere Szenarien, wo dieses Merkmal wertvoll ist. Ein Szenario
besteht darin, dass ein Nutzer zu Hause anruft, sich mit einem anderen Familienmitglied
unterhält
und dann ihre oder seine Nachrichten erhalten möchte. Es ist auch möglich, dass ein
Anrufender ein Familienmitglied erreicht, aber für ein anderes Familienmitglied
eine Nachricht hinterlassen möchte.
Wahlweise benachrichtigt der Assistent das Familienmitglied mit
dem Abspielen einer einfachen Anweisung: „Wenn der Anruf nicht für Sie bestimmt
war, drücken
Sie bitte <eine
spezifizierte Tastensequenz> und legen
Sie auf".
-
Zu
jedem Zeitpunkt eines Anrufes kann eine Person ebenfalls eine spezielle,
dafür vorgesehene
Tonwahl betätigen,
um den Assistenten aufmerksam zu machen. Als Antwort auf eine solche
Benachrichtigung fragt der Assistent: „Soll ich eine Nachricht aufnehmen?
Ja oder Nein." Diese
Frage ist so gestaltet, dass sowohl der Anrufende als auch die den
Anruf annehmende Person antworten kann. Bejaht der Nutzer die Frage, dann
schaltet der Assistent den Anrufenden durch die Anrufer-Schnittstelle
und ermöglicht
ihm, eine Nachricht zu hinterlassen. Verneint der Nutzer, dann geht
der Assistent in seine gewöhnliche
Eröffnungssequenz,
nachdem er den Nutzer erkannt hat. Auf diese Weise funktioniert
dies für
alle, auch für
Nicht-Nutzer wie kleine Kinder, Babysitter und andere Besucher.
-
Damit
kann der Anrufende ebenfalls ein Nutzer des Assistenten sein. Ruft
beispielsweise ein Vater zu Hause an und sein fünfjähriger Sohn beantwortet den
Anruf, der Vater jedoch möchte
mit dem Assistenten kommunizieren, dann sagt der Vater einfach „Lauffeuer" und beantwortet
die Frage mit „Nein". Damit wird der Vater
mit dem Assistenten verbunden und das Kind kann jederzeit den Hörer auflegen,
nachdem der Vater „Lauffeuer" gesagt hat.
-
Kalender:
-
Der
Kalenderassistent ist eine einfache Möglichkeit, an einem gegebenen
Tag Nachrichten an alle auszugeben. Es gehört zu seinen Funktionen, dass
ein Nutzer eine Notiz an den Kalender sendet und einen Tag festsetzt,
an dem diese Notiz aktiviert werden soll. Jede Notiz enthält eine
kurze Textbeschreibung und einen Audio-Clip. An dem gegebenen Tag
wird eine aktive Notiz am Kühlschrank
angeordnet und wird davon um Mitternacht des für die Notiz aktuellen Tages
entfernt.
-
Benachrichtigung:
-
Die
grafische Benutzeroberfläche
(GUI) enthält
ein Benachrichtigungswerkzeug, mit dem Nutzer vorhandene Nachrichten
abspielen, den Kühlschrank
und den Kalender ansehen und neue Notizen für andere aufsetzen können.
-
Der
Kühlschrank
wird grafisch angezeigt und zeigt die Notizen am Kühlschrank
sowie das grafische Symbol oder den Magneten des Nutzers.
-
Tonwahlmodell:
-
Das
beschriebene Ausführungsbeispiel
verwendet eine Standard Tonwahl-Schnittstelle
Bellcore VMUIF für
Sprachübermittlung
(voice mail). Es bietet die Möglichkeit,
während
der Nachrichten vorwärts
und rückwärts zu springen
sowie für
schnelleren oder langsameren Ablauf. Diese Optionen bieten nur Tonwahl oder
grafische Benutzeroberflächen
(GUI).
-
Das
Tonwahlmodell basiert auf Beschleunigern, ihre Befehle sind nicht
so, wie es für
eine Zweiphasenschnittstelle allgemein üblich ist. Die Hauptschnittstelle
ist einfach, d.h. es muss „0" gedrückt werden,
um eine Liste der vorhandenen Optionen zu erhalten. Die „0" bewirkt eine Tonwahlversion
von Hilfe. Als Antwort darauf bittet der Assistent den Nutzer, die
Taste seiner Option zu drücken,
und danach stehen 9 Optionen zur Verfügung. Gibt es mehr als 9 Optionen,
dann wird der Nutzer aufgefordert, wieder eine „0" zu drücken, um an mehr Optionen zu
kommen, oder *, um abzubrechen.
-
Die
Tasten 1 bis 9 werden auch zur Beschleunigung verwendet. Im Assistenten
sind zwei unterschiedliche Beschleunigungssätze vorhanden, ein Satz wird
im Hauptmenü verwendet
und ein Satz während
des Abspielens der Nachricht.
-
-
-
Es
gibt auch zwei spezielle Situationen, bei denen Tonwahl verwendet
wird: einmal das Einloggen beim Assistenten und das Anordnen des
Assistenten im Vordergrund nach einem Befehl „Das_ist_erst_einmal_alles".
-
Die Befehle
-
Die
nachfolgende Liste gibt die Befehle wieder, die vom Assistenten
unterstützt
werden und für
die eine Funktionsbeschreibung gegeben wird.
-
Befehl: Erste_Nachricht
-
Dieser
Befehl bewirkt, dass der Assistent sich durch den Stapel von Nachrichten
bewegt, so dass er die erste Nachricht des Stapels bereithält. Dann
kündigt
er dem Nutzer an, welche Nachricht er bereithält und ob diese Nachricht bereits
abgehört
wurde oder nicht. Darauf folgt ein Prompt. Welche Art von Prompt
gegeben wird, hängt
von der Instruktionsebene ab, die der Nutzer zu der Zeit verwendet.
Diese Instruktionsebene kann von der Person gewählt werden, die das System
zu Beginn einrichtet.
-
Sind
keine Nachrichten mehr im Stapel vorhanden, dann informiert der
Assistent den Nutzer, dass keine weiteren Nachrichten vorhanden
sind und der Assistent nichts mehr bereithält.
-
Befehl: Nächste_Nachricht
-
Dieser
Befehl bewirkt genau das gleiche wie der Befehl Erste_Nachricht,
nur dass der Assistent zur nächsten
Nachricht in der Liste fortschaltet. Sind keine Nachrichten vorhanden,
reagiert er auf die gleiche Weise wie beim Befehl Erste_Nachricht.
Ist die derzeitige Nachricht die letzte Nachricht in der Liste,
dann schaltet der Assistent wieder zur ersten Nachricht der Liste
und kündigt
jene Nachricht wie oben beschrieben an.
-
Befehl: Vorige_Nachricht
-
Außer einer
geringfügigen
Ausnahme bewirkt dieser Befehl genau das gleiche wie der Befehl
Nächste Nachricht.
Ist die derzeitige Nachricht die erste Nachricht in der Liste, schaltet
der Assistent zur letzten Notiz und kündigt sie entsprechend an.
-
Befehl: Letzte_Nachricht
-
Dieser
Befehl bewirkt genau das gleiche wie der Befehl Erste_Nachricht,
außer
dass er bewirkt, dass der Assistent zum letzten Vorgang der Liste
schaltet.
-
Befehl: Das_ist_erst_einmal_alles
-
Dieser
Befehl bewirkt, dass der Assistent sich in den Hintergrundmodus
schaltet und alles ignoriert, was der Nutzer sagt, bis auf den Befehl,
der ihn wieder in der Vordergrundmodus bringt (z.B. der Befehl „Lauffeuer"). Der Befehl „Lauffeuer" ist die einzige
Möglichkeit
für den
Nutzer, den Assistenten zurückzuholen.
Allerdings kann der Assistent auch zurück in den Vordergrund kommen,
wenn etwas geschieht, das dem Nutzer mitgeteilt werden muss, zum
Beispiel der Empfang einer neuen Nachricht für den Nutzer.
-
Befehl: Lauffeuer
-
Dieser
Befehl wird für
die Durchführung
von zwei Aufgaben verwendet. Er kann verwendet werden, um den Assistenten
in die Unterhaltung mit dem Nutzer zurückzuholen; in dem Fall wird
der Befehl eingesetzt nach dem Befehl „Das_ist_erst_einmal_alles". Er kann auch verwendet
werden, um das Telefon von einem Nutzer zum anderen zu übergeben.
Wenn ich beispielsweise das Telefon benutze (möglicherweise irgendwo einen
Münzfernsprecher)
und mit dem Assistenten spreche, dann könnte ich das Telefon an Sharon
weiterleiten und sie könnte
sagen „Lauffeuer", was dem Assistenten
bedeutet, dass das Telefon an jemand anderen übergeben wurde.
-
Die
Reaktion des Assistenten in solchen Situationen ist unterschiedlich.
Ist die Person, die „Lauffeuer" sagt, derselbe Nutzer,
mit dem der Assistent vorher gesprochen hat, dann sagt der Assistent
einfach „Ich
bin da". Ist es
ein anderer Nutzer, dann begrüßt er sie
mit „Hallo,
Soundso, was kann ich für
Sie tun?"
-
Befehl: Auf_Wiedersehen_Lauffeuer
-
Dieser
Befehl ist dem Auflegen des Telefons äquivalent. Er schafft auch
einen sauberen Abschluss einer Unterhaltung mit dem eigenen Assistenten.
In den allerersten Tagen der Benutzung mag der Assistent mit seiner
Reaktion auf den Empfang dieses Befehls den Nutzer beunruhigen,
wenn er abschaltet, während
noch nicht abgehörte
neue Nachrichten vorhanden sind.
-
Befehl: Hilfe
-
Dieser
Befehl gibt einem Nutzer immer die zur Verfügung stehenden Optionen bei
jedem gegebenen Menü an.
Dieser Befehl verwendet auch den derzeitigen Status der Nutzertätigkeit,
um zu bestimmen, ob weitere Hilfe erforderlich ist. Wenn der Nutzer
beispielsweise mehr als einmal bei der gleichen Position um Hilfe gebeten
hat, schlägt
der Assistent vor, dass der Nutzer einige Beispiele ausprobiert.
-
Befehl: Sende_eine_Kopie
-
Dieser
Befehl sagt dem Assistenten, dass er eine Kopie der derzeitigen
Nachricht an einen anderen Nutzer oder eine andere Gruppe senden
soll. Sind keine Nachrichten vorhanden, informiert der Assistent
den Nutzer. Gibt es eine Nachricht, dann wird der Nutzer nach dem
Namen des Ziels gefragt und der Assistent zeichnet einen Begleitbrief
auf und sendet die Nachricht. Nach dem Abschluss des Vorgangs nimmt
der Assistent wieder Kontakt auf mit dem Nutzer, indem er ihm mitteilt,
was der Assistent bereithält.
-
Befehl: Sende_eine_Nachricht
-
Dieser
Befehl ermöglicht
es dem Nutzer, eine Nachricht (d.h. den Anfang einer neuen Kette)
an einen weiteren Nutzer oder eine Gruppe zu senden. Der Assistent
stellt den Namen des Ziels bereit, zeichnet die Nachricht auf und
sendet die Nachricht. Die gerade zusammengestellte neue Nachricht
bleibt in der Liste von Vorgängen,
die der Assistent bereithält,
und ist dann die derzeitig neue Nachricht. Sie folgt unmittelbar
auf den Vorgang, der vorher die neue Nachricht war.
-
Die
folgende Sequenz von Frage und Antwort wird üblicherweise ablaufen, wenn
dieser Befehl gegeben wird: „Sende
eine Nachricht", <An wen>, „Name des Ziel", <Beginne>, „Nachricht", <Habe
sie erhalten>. Es
wird darauf hingewiesen, dass das in Klammern gesetzte Material,
z.B. <Beginne>, das Prompt oder das Token,
also die Kurznachricht, ist, die auf die Eingabe des Nutzers hin
vom Assistenten abgespielt wird.
-
Befehl: Sende_eine_Antwort
-
Dieser
Befehl ermöglicht
es einem Nutzer, auf die derzeit neue Nachricht zu erwidern. Kam
die Originalnachricht von einer Gruppe, dann fragt der Assistent,
ob die Antwort an jeden geschickt werden soll. In jedem Fall wird
die Erwiderung dann aufgezeichnet und gesendet. Die Erwiderung bleibt
dann in der Liste von Vorgängen,
die der Assistent bereithält,
und ist die derzeit neue Nachricht. Der vorhergehende Vorgang ist
die Nachricht, die beantwortet wurde.
-
Befehl: Sag_mir_mehr
-
Dieser
Befehl ermöglich
es einem Nutzer, mehr Informationen über die derzeit neue Nachricht
zu erhalten. Auf jeder Nachricht sind Datum und Zeit der Ankunft
der Nachricht verzeichnet. Bei Nachrichten, die Erwiderungen auf
andere sind, gibt der Assistent auch die Information an, wann der
Befehl Sag_mir_mehr das erste Mal ausgegeben wurde. Zum Beispiel: „Diese
Nachricht kam gestern um 17.00 Uhr an. Sie ist eine Erwiderung auf
eine Nachricht von Mutter." Wird
in diesem Fall noch einmal der Befehl gegeben „Sag mit mehr", dann wird die Nachricht
von Mutter wiedergegeben. Dieser Zyklus mit dem Befehl „Sag_mir_mehr", bei dem Datum-
und Zeitinformation gegeben werden und die vorherige Nachricht in
der Kette abgespielt wird, kann fortgesetzt werden, bis der Anfang
der Kette erreicht ist oder bis eine gelöschte Nachricht erreicht wurde.
-
Befehl: Wirf_es_weg
-
Dieser
Befehl bewirkt, dass der Assistent die derzeitige Nachricht aus
dem Stapel (d.h. der Liste) entfernt und sie in den Papierkorb legt
(d.h. sie löscht).
Sind keine Nachrichten vorhanden, wird der Nutzer darüber informiert.
Wurde die Nachricht noch nicht abgehört, dann wird der Nutzer gebeten,
seinen Wegwerfbefehl zu bestätigen.
Ist der Vorgang abgeschlossen, wird der Nutzer über die derzeit neue Nachricht,
die beim Assistenten liegt, informiert. Weggeworfene Nachrichten
können,
falls erforderlich, über
das GUI-Benachrichtigungswerkzeug wiedergewonnen werden.
-
Befehl: Lies_die_Nachricht
-
Dieser
Befehl weist den Assistenten einfach an, die derzeit vorliegende
Nachricht abzuspielen. Ist die Nachricht vollständig, dann wird entsprechend
der derzeitigen Instruktionsebene des Nutzers ein geeignetes Prompt
abgespielt.
-
Befehl: Übersichtinformation
-
Dieser
Befehl veranlasst den Assistenten durch den Nachrichtenstapel zu
blättern
und solche Nachrichten herauszuholen, die auf dem Kühlschrank
vorhanden sind, und sie an die derzeit bearbeitete Stelle im Stapel
zu legen. Dann informiert der Assistent den Nutzer, was herausgeholt
wurde, und zwar gibt er die Anzahl der Nachrichten und die Namen
der Absender an. Unabhängig
davon, ob Nachrichten gefunden wurden oder nicht, wird der Nutzer
dann darüber
informiert, was der Assistent zu der Zeit beinhaltet.
-
Befehl: Finde
-
Mit
der Ausgabe dieses Befehls wird der Assistent veranlasst, nach dem
Namen eines zu Kontaktierenden zu fragen. Handelt es sich bei dem
zu Kontaktierenden um einen weiteren Nutzer, dann sammelt der Assistent
alle noch nicht abgehörten
Nachrichten von jenem Nutzer und platziert sie an die derzeit zu
bearbeitende Position im Nachrichtenstapel. Dann informiert der
Assistent den Nutzer über
die Anzahl von Nachrichten und bietet dem Nutzer im geeigneten Fall
ein Prompt an. Handelt es sich bei dem zu Kontaktierenden um den
Namen eines anderen Assistenten (z.B. um einen Spiele-Assistenten),
dann aktiviert dieser Befehl jenen Assistenten.
-
<Virtuelle Interkommunikations-Trigger>
-
Diese
vom Nutzer zu programmierenden Befehle lösen das gleiche aus wie der
Befehl Sende_eine_Nachricht, nur braucht der Assistent nicht zu
fragen „An
wen?", und das „Fahre
fort" wird ersetzt durch
eine Begrüßung von
der Zielperson. Der Nutzer kann beispielsweise den Trigger auf „Hallo, <Name der Zielperson" einstellen. Wird
dieser Befehl gegeben, dann antwortet der Assistent mit der Stimme
der Zielperson.
-
Befehl: Lass gut sein
-
Dieser
Befehl wird verwendet, um ein Submenü zu verlassen oder einen Befehl
zu beenden. Ein Nutzer könnte
beispielsweise sagen Sende_eine_Nachricht und auf das Prompt <An wen?> antworten „Lass gut sein" und damit den Befehl
aufheben.
-
Befehl: Wenn_ein_Anruf_für_mich_ankommt
-
Dieser
Befehl wird von einem Nutzer ausgegeben, um Anrufende mit einer
Begrüßung zu
empfangen. Ist bereits eine Begrüßung vorhanden,
wird der Nutzer gefragt, ob diese Begrüßung entfernt werden soll.
Dann wird dem Nutzer ermöglicht,
eine neue Begrüßung aufzuzeichnen,
wenn er es möchte.
Nach vollendeter Durchführung
dieses Befehls verlässt
der Nutzer das Submenü und
der Assistent resynchronisiert ihn, indem er dem Nutzer sagt, was
der Assistent derzeit enthält
und spielt, falls geeignet, einen Instruktions-Prompt.
-
Dialogdarstellung
-
Es
folgt ein Beispieldialog, mit dem die Merkmale der virtuellen Interkommunikation,
des virtuellen Kühlschranks
und der Nachrichtenreihung dargestellt werden. Er zeigt den Funktionsbereich
des Assistenten und gibt Beispiele für die Anwendung der oben beschriebenen
Befehle.
-
Der
beschriebene Beispieldialog wird als Ganzes in den 4a bis 4c gezeigt.
Die in 4 verwendete Konvention ist
die folgende. Alle Sprachbeispiele, die vom Assistenten erzeugt
werden (z.B. abgespielte Kurznachrichten, d.h. Token, und Erwiderungen)
sind im Fettdruck hervorgehoben, und Sprachbeispiele vom Anrufer
sind in einfachem Druck wiedergegeben. Die Anteile in den Nachrichten,
die vom Assistenten generiert und dem Anrufer vorgespielt werden
und mit der Stimme der identifizierten Person abgespielt werden,
sind in Anführungszeichen
gesetzt. Die mit der Stimme der Zielperson abgespielten Prompts
oder Erwiderungs-Token sind natürlich
zu einem früheren
Zeitpunkt oder während
der Einrichtung des Systems in das System eingegeben worden. Das
heißt,
die Aufzeichnungen der Zielperson mit den unterschiedlichen Prompts und
Token werden verwendet.
-
In
diesem Beispiel ist der Anrufer, der hier Bill genannt werden soll,
ein Nutzer oder autorisierter Teilnehmer und damit berechtigt, sich
des oben beschriebenen Funktionsbereiches zu bedienen. Die Zugangsberechtigung
wird entweder über
Spracherkennung an einem speziellen Wort, über ein Kennwort oder über eine Kombination
von beiden Möglichkeiten
erreicht.
-
Ruft
ein autorisierter Teilnehmer das System an, dann spielt das System
eine Kurznachricht, also ein Token, mit dem es seine Bereitschaft
gegenüber
dem Anrufer ankündigt,
und instruiert den Anrufer über
die möglichen
Optionen. Auf dieser Ebene behandelt das System den Anrufer wie
einen nicht autorisierten Teilnehmer und präsentiert den Funktionsbereich,
der einem nicht autorisierten Teilnehmer zur Verfügung steht. Handelt
es sich bei dem Anrufer um einen nicht autorisierten Teilnehmer,
dann funktioniert der Assistent wie ein sehr ausgeklügelter Anrufbeantworter.
Das System spielt das folgende Token ab (Schritt 200):
Guten
Tag, ich bin der Assistent für
Warner Associates. Bitte nennen Sie den Namen der Person, die Sie
zu erreichen wünschen; „Bill Warner", „Jane", „Sally", „Pete" oder wen sonst.
-
Bei
dem beschriebenen Ausführungsbeispiel
wird der Name der jeweiligen Person mit der Stimme der betreffenden
Person abgespielt. Diese Namen werden während der Einrichtung des Systems
aufgezeichnet und für
die spätere
Verwendung gespeichert.
-
Um
Zugang zum Funktionsbereich für
autorisierte Teilnehmer zu bekommen, d.h. den Assistenten steuern
zu können,
spricht der Teilnehmer ein spezielles Wort aus, in diesem Fall „Lauffeuer" (Schritt 202).
Bei Verwendung der vorher beschriebenen Spracherkennungsmöglichkeiten
führt das
System an diesem Wort eine Spracherkennung durch, um es zu erkennen
und damit zu bestätigen,
dass der Anrufer ein autorisierter Teilnehmer ist. Bestätigt das
System die Identität
des Teilnehmers, dann bestätigt
es dies, indem es den folgenden Token abspielt (Schritt 204):
Hallo, „Bill". Wie geht es?
-
In
diesem Fall sucht das System auch nach einem Kennwort von Bill,
um seine Identität
zu verifizieren (Schritt 206). Das Kennwort ist „Recht
gut". Ist das korrekte
Kennwort gegeben worden, spielt der Assistent ein weiteres Token
ab, mit dem der Status aller Nachrichten angegeben wird, die vom
Anrufer noch nicht angenommen wurden (Schritt 208).
Lass
uns anfangen. Es sind Nachrichten vorhanden von „Joe", „Pam" und „Gregg". Außerdem hat „Bob Smith von
Allied Industries" angerufen.
Es sind eine Erinnerungsnotiz und zwei neue Notizen am Kühlschrank
vorhanden.
-
Nachdem
die vorhandenen Nachrichten aufgelistet sind, schaltet der Assistent
zur ersten Nachricht der Liste mit neuen Nachrichten und sagt:
Die
erste Nachricht ist von „Joe".
-
Um
die Nachricht abzuhören,
muss der Teilnehmer einen der zur Verfügung stehenden Sprachbefehle verwenden
(Schritt 210):
Lies die Nachricht.
-
Bei
Verwendung der Spracherkennung erkennt der Assistent den ausgegebenen
Befehl und führt
die mit dem Befehl angeforderte Aufgabe aus. In diesem Fall spielt
das System die vorher aufgenommene Nachricht ab, die Joe (Schritt 212)
gesprochen hatte.
-
Nachdem
die Nachricht von Joe dem autorisierten Teilnehmer vorgespielt wurde,
stehen ihm für
das weitere Vorgehen mehrere Möglichkeiten
zur Verfügung.
Er kann mit der Nachrichtenliste fortfahren oder andere Funktionen
aufrufen. In dem dargestellten Beispiel ruft der Teilnehmer das
Merkmal der virtuellen Interkommunikation auf, indem er den Namen
eines weiteren autorisierten Teilnehmers ausspricht, was wahlweise von
einem speziellen Trigger-Wort eingeleitet wird und zusätzlich angibt,
dass der Teilnehmer die virtuelle Interkommunikation aufrufen möchte (Schritt 214):
Hallo,
Gregg.
-
Nach
dem Erkennen des Befehls, die virtuelle Interkommunikation aufzurufen,
und nachdem die Identität
der anderen Partei erkannt wurde, an die die Nachricht gerichtet
ist, spielt der Assistent ein Prompt, das zu einem früheren Zeitpunkt
mit der Stimme der anderen Partei, d.h. Gregg (Schritt 216),
aufgezeichnet wurde.
„Was
gibt es, Bill?"
-
Möglicherweise
ist es erwünscht,
den Assistenten so zu programmieren, dass er an diesem Punkt ein Erwiderungs-Token
spielt, mit dem nützliche
Informationen über
die Zielperson gegeben werden. Wenn zum Beispiel die Zielperson
bereits ein anderes Telefongespräch
führt,
das vom System bearbeitet wird (d.h., das System erkennt, dass die
Zielperson ein anderes Telefongespräch führt), dann könnte es
antworten (mit der Stimme der Zielperson) „Ich führe gerade ein Telefongespräch. Bitte
hinterlasse eine Nachricht." Oder,
wenn die Zielperson eine Nachricht für den Anrufer hinterlassen
hat, könnte
das Erwiderungs-Token sein (wieder mit der Stimme der Zielperson) „Ich habe
Dir eine Nachricht hinterlassen."
-
Als
Antwort erzeugt der Teilnehmer die Nachricht, die er Gregg zukommen
lassen möchte.
Ist die Nachricht vollständig,
was durch die Pause am Ende der Nachricht angezeigt wird, dann bestätigt der
Assistent ihren Empfang mit dem folgenden End-Token oder Prompt
(Schritt 218):
Habe die Nachricht empfangen. Ich werde
sie ihm zustellen.
-
Die
aufgezeichnete Nachricht wird dann der Nachrichtenliste für Gregg
angefügt,
so dass Gregg sie später
abspielen kann, wenn er das System aufruft.
-
Mit
dem Befehl Nächster_Vorgang
kann der autorisierte Teilnehmer die Liste der für ihn gespeicherten Nachrichten
weiter durchgehen (Schritt 220). Die Reihenfolge, in der
die Nachrichten wiedergegeben werden, ist die Reihenfolge ihres
Empfangs, die älteste
Nachricht ist die erste. Und die Reihenfolge, in der die Listen wiedergegeben
werden, kann vom Nutzer gewählt
werden.
-
Eine
weitere Funktion, die vom Assistenten unterstützt wird, ist die Möglichkeit,
die Geschichte einer gegebenen Nachricht zu speichern und sie nach
dem Empfang eines geeigneten Befehls, beispielsweise des Befehls
Sag_mir_mehr, wiederzugeben. Diese Funktionsmöglichkeit wird im folgenden
Teil des in den 4a bis 4c dargestellten
Beispiels gezeigt.
-
Nachdem
eine Nachricht abgespielt wurde, kann der Teilnehmer die nächste Nachricht
wiederherstellen, indem er den Befehl Nächster_Vorgang aufruft. Das
heißt,
der autorisierte Teilnehmer sagt:
Nächster Vorgang.
-
Der
Assistent reagiert darauf, indem er die folgende Nachricht lokalisiert
und identifiziert, von wem sie ist:
Nachricht von „Bob Smith
von Allied Industries".
-
Dann
spielt er die aufgezeichnete Nachricht ab.
-
Der
autorisierte Teilnehmer kann durch die Listen der Nachrichten navigieren,
indem er die Befehle Nächster_Vorgang
und Voriger_Vorgang verwendet. Spricht er beispielsweise den Befehl
Voriger_Vorgang aus, dann schaltet der Assistent eine Nachricht
zurück
und identifiziert den Absender der früheren Nachricht.
Nachricht
von Joe.
-
Diesmal
wird der Inhalt der aufgezeichneten Nachricht für den autorisierten Teilnehmer
nur dann wiedergegeben, wenn der entsprechende Befehl verwendet
wird.
-
Mit
dem Befehl Sag_mir_mehr (Schritt 222) hat der autorisierte
Teilnehmer Zugang zu weiteren Einzelheiten der Nachricht, wozu auch
ihr Inhalt und ihre Geschichte gehören. Wie angegeben, berichtet
der Assistent nach dem Empfang dieses Befehls den Zeitpunkt des
Empfangs dieser Nachricht und gibt Informationen über ihre
Geschichte, wenn solche Informationen vorhanden sind (Schritt 224).
In dem dargestellten Beispiel berichtet der Assistent:
Diese
Nachricht kam gestern um 11.oo Uhr. Sie ist eine Antwort auf eine
Nachricht von Dir.
-
Um
Zugang zu weiteren Informationen über diese Nachricht zu bekommen,
kann der autorisierte Teilnehmer den Befehl Sag_mir_mehr (Schritt 226)
aufrufen. Die zweite Verwendung dieses Befehls bewirkt, dass der
Assistent den Inhalt der Nachricht wiedergibt, und zwar geht dieser
Wiedergabe eine Ankündigung
voraus, die das Folgende identifiziert (Schritt 228):
Hier
ist die Originalnachricht.
"...
spiele die Nachricht ab ..."
-
Indem
der Befehl Sag_mir_mehr wiederholt aufgerufen wird, veranlasst der
Nutzer, dass der Assistent sich von oben nach unten durch die Nachrichten
in der Kette bewegt und zuerst über
die Art der Nachricht berichtet (d.h., es ist eine Antwort auf eine
Nachricht von Soundso) und dann ihren Inhalt abspielt. An einem
bestimmten Punkt erreicht der Nutzer die letzte Nachricht der Kette
und der Assistent antwortet (Schritt 232):
Das ist
alles, was ich weiß.
-
Um
eine Nachricht zu erzeugen, die am Kühlschrank befestigt wird, damit
jedes Familien- oder Gruppenmitglied Zugang dazu hat, spricht der
Nutzer einen vorprogrammierten Auslöser bzw. Trigger aus (Schritt 240):
Hallo
an alle.
-
Als
Erwiderung spielt der Assistent ein Prompt ab, das aus den aufgezeichneten
Stimmen aller Familien- oder Gruppenmitglieder zusammengesetzt wird
(Schritt 242):
Hallo, hallo, hallo ...
-
Nachdem
die Bestätigung
dafür abgespielt
wurde, dass die Funktion des virtuellen Kühlschranks aufgerufen wurde,
zeichnet der Assistent die Nachricht vom Anrufer auf.
-
Wenn
die Nachricht vollständig
ist, was durch eine Pause am Ende der Nachricht des Nutzers erkannt wird,
spielt der Assistent eine weitere Bestätigung (z.B. „Hab es
aufgezeichnet"),
mit der er anzeigt, dass die Nachricht empfangen wurde. Danach bittet
er um Bestätigung,
dass der Nutzer die Nachricht tatsächlich am Kühlschrank anbringen möchte (Schritt 244).
-
Indem
er diese Bitte um Bestätigung
bejaht, veranlasst der Nutzer, dass der Assistent die neue Nachricht
dem Kühlschrank
hinzufügt,
wo jedes Familien- oder Gruppenmitglied sie empfangen oder ansehen
kann. Der Assistent bestätigt
den Empfang der affirmativen Antwort des Nutzers, indem er „In Ordnung" sagt (Schritt 246).
-
Reagiert
der Nutzer verneinend, dann fragt der Assistent den Nutzer, an wen
die Nachricht gesendet werden soll. Als Erwiderung kann der Nutzer
jedes andere Familien- oder Gruppenmitglied nennen, und der Assistent
fügt die
Nachricht der Mailbox der identifizierten Person hinzu (d.h. der
Nachrichtenliste).
-
Wenn
der Nutzer das Ende der Liste mit neuen Nachrichten erreicht, dann
gibt der Assistent dies an und schaltet automatisch auf die nächste Liste
um, die in diesem Fall die Notizen am Kühlschrank sind (Schritt 250).
In diesem Fall ist der erste Vorgang am Kühlschrank eine Notiz von Pam,
und es sind zwei Erwiderungen daran angehängt. Der Assistent berichtet über das
Vorhandensein einer Nachricht von Pam und spielt dann ihren Inhalt
ab. Nachdem ihr Inhalt dem Nutzer vorgespielt wurde, geht der Assistent
die Liste der Erwiderungen in der Reihenfolge durch, in der sie
angehängt
wurden, und identifiziert die Person, die die Antwort generierte,
und den Inhalt der Antwort. Wahlweise wird das Ende der Liste vom
persönlichen
Assistenten dadurch angegeben, dass er ein spezielles Geräusch, beispielsweise
einen Piepton, abspielt.
-
Der
Nutzer kann der Notiz etwas hinzufügen, indem er den Befehl gibt
Sende_eine_Antwort (Schritt 252). Der persönliche Assistent
reagiert darauf mit einer aufgezeichneten Bestätigung, die angibt, dass die Nachricht
verstanden wurde (Schritt 254), und zeichnet dann die Nachricht
des Nutzers auf, bis eine Pause ausreichender Länge anzeigt, dass die Nachricht
vollständig
ist (Schritt 256). Am Ende der Aufzeichnung der Nachricht
bittet der Assistent wiederum den Nutzer, zu bestätigen, dass
die neue Nachricht der Notiz am Kühlschrank hinzugefügt werden
soll (Schritt 258). Bejaht der Nutzer, dann fügt der persönliche Assistent
diese Nachricht als eine weitere Erwiderung an die Notiz an, und
zeigt die Durchführung
des Vorgangs dadurch an, dass er zum Nutzer sagt: „Erledigt" (Schritt 260).
-
Wenn
sich der Nutzer entscheidet, die Nachricht der Notiz nicht hinzuzufügen, dann
ermöglicht
der persönliche
Assistent es dem Nutzer, die Nachricht in die Mailbox eines anderen
Nutzers zu legen.
-
Mit
der Verwendung des Befehls Nächster_Vorgang
kann der Nutzer den persönlichen
Assistenten instruieren, durch die Liste der Notizen am Kühlschrank
zu blättern,
indem die oben beschriebene Sequenz für jeden Vorgang wiederholt
wird. Mit einem geeigneten Token identifiziert der Assistent die
neuen Notizen, die am Anfang der Liste stehen, und die alten Notizen,
die dem Ende der Liste näher
sind.
-
Datenstruktur des Speichern
von Nachrichten
-
Die
Datenstruktur für
das Speichern von Nachrichten enthält die Informationen, die in 5 dargestellt sind.
Es sind mindestens sieben Felder 300(1) bis 300(7) vorhanden.
Die Felder 300(1) und 300(2) sind für die Identifikation
der Partei vorgesehen, an die die Nachricht geschickt wurde, und
der Partei, die die Nachricht generierte. Das Feld 300(3) ist
zum Speichern der Zeit vorgesehen, zu der die Nachricht generiert
wurde. Das Feld 300(4) speichert den Ort des tatsächlichen
Inhalts der Nachricht, die als .WAV-Datei gespeichert ist, einem
Standard Windows Sound-Datei-Format. Feld 300(5) speichert
einen Satz von Flags, einschließlich
eines Flags, das anzeigt, ob es sich um eine neue Nachricht handelt
(d.h., die noch nicht gelesen wurde); eines Flags als Anzeige, ob
es sich bei der Nachricht um eine alte Nachricht handelt (d.h.,
sie wurde gelesen), und eines Flags als Anzeige, ob die Nachricht
gelöscht
werden soll. Feld 300(6) ist zum Speichern eines Antworte_auf-Zeigers
auf die Datenstruktur, auf die diese Nachricht eine Erwiderung ist,
wenn es sich um eine Erwiderung handelt. Und Feld 300(7) ist
zum Speichern eines Zeigers auf einen der Zusätze, wie eingebettete Nachrichten
oder Kühlschrankzusätze.
-
Es
wird darauf hingewiesen, dass das Erwiderungsfeld 300(6) dazu
verwendet wird, neuere Nachrichten mit älteren Nachrichten zu verbinden,
auf die sie antworten. Auf die Weise hat jede Nachricht in einer
Kette eine Verbindung zu einer Nachricht, auf die sie eine Erwiderung
ist. Die Liste aller Mitglieder einer vollständigen Kette können einfach
dadurch bestimmt werden, dass die Antwort_Auf-Zeiger, die in dieser
Verbindungsliste von Datenstrukturen gespeichert sind, durchgegangen
werden. Anders ausgedrückt,
Ketten werden nicht für individuelle
Nutzer erhalten. Stattdessen liefert das Feld Antworte_Auf Informationen
hinsichtlich der Nachrichten, die sich in der Kette befinden. Der
Assistent verhindert, dass ein Nutzer an die Nachrichten eines anderen Nutzers
kommt, so dass der Nutzer auch nicht an die Kette des anderen Nutzers
kommen kann.
-
Wird
eine Kette durchgegangen, dann bleibt ein einfacher Zeiger auf der
derzeitigen Nachricht. Dieser Zeiger verfolgt die Datenstruktur,
in die der Nutzer geschaltet ist, und schafft auch direkten Zugang
zur Audio-Datei für
jene Nachricht.
-
Das
Zusatzfeld 300(7) der Datenstruktur wird verwendet, um
Zusatzzeiger von einer Originalnotiz am Kühlschrank zu ihren Anhängen zu
speichern. Das Zusatzfeld der Originalnachricht am Kühlschrank
würde auf die
erste angeheftete Nachricht zeigen und so weiter für jede hinzugefügte Nachricht,
so dass eine zusammenhängende
Liste von Nachrichten gebildet wird.
-
Ein
Nutzerobjekt enthält
eine Liste mit Nachrichten für
einen speziellen Nutzer. Eine gemeinsame Nachricht ergibt eine Datenstruktur
in jeder Nutzerliste, jedoch zeigen alle diese Datenstrukturen auf
dieselbe Audio-Datei, und das An-Feld zeigt auf alle Empfänger (d.h.,
eine Gruppennachricht hätte
alle Nutzer im An-Feld).
-
Andere
Ausführungsform
sind in den folgenden Ansprüchen
enthalten.