-
Für die vorliegende
Patentanmeldung wird gemäß Art. 35
U.S.C. § 119(e)
die Priorität
der Vorläufigen
US-Patentanmeldung 60/104,255 von
Bradley S. Templeton, eingereicht am 14. Oktober 1998, beansprucht.
-
ALLGEMEINER STAND DER TECHNIK
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft im allgemeinen Produktivitätswerkzeuge
und insbesondere ein Verfahren und eine Vorrichtung, welche dabei
helfen, Telefonanrufe und Treffen zu verwalten.
-
Stand der Technik
-
Die
meisten Menschen haben ihre Erfahrung mit einem Phänomen, das
als „Hinterhertelefonieren" bekannt ist. Eine
Person ruft eine zweite Person an und hinterläßt eine Sprachnachricht. Die
zweite Person beantwortet den Anruf, nur um wiederum eine Sprachnachricht
zu hinterlassen. Diese Abfolge wird über den Verlauf von Stunden
oder Tagen wiederholt, was beide Anrufer aufgrund der Tatsache,
daß sie
nicht persönlich miteinander
gesprochen haben, frustriert zurückläßt. Ein ähnliches
Phänomen
tritt auf, wenn zwei Menschen versuchen, Konferenzschaltungen und
Treffen zu terminieren, oder wenn zwei Menschen versuchen, für ein persönliches
Gespräch
zusammenzukommen.
-
Auch
Sprachnachrichten, Faxe, Pager, Mobiltelefone und E-mails haben
dieses Problem nicht gelöst. Tatsächlich haben
sie es nur noch schlimmer gemacht. Ein Hinterhertelefonieren für Sprachnachrichten,
Faxe und Pager führt
zu riesigen Mengen an verlorener Zeit – nicht nur durch die Zeit,
anzurufen und Mitteilungen zu hinterlassen, sondern auch durch Verzögerungen
darin, wichtige Telefonanrufe durchgeführt zu bekommen. Außerdem wird
unermeßlich
viel Zeit dadurch verschwendet, daß man versucht, für wichtige
Anrufe erreichbar zu sein, und noch mehr dadurch, daß man gerade
zur falschen Zeit durch Anrufe unterbrochen wird, wenn man dabei
ist, echte Arbeit zu verrichten.
-
WO 98/21870 offenbart eine
Vorrichtung und ein Verfahren zum Terminieren eines Telefonanrufs,
welche ein Kalendersystem innerhalb eines Telefonsystems umfassen
und ein Schnittstellenmittel, um Informationen von einer anrufenden
Partei zu erhalten, Kalenderdaten, welche einen Kalender für eine angerufene
Partei umfassen, und ein Agentenmittel aufweisen. Das Agentenmittel
durchsucht in Reaktion auf eine Anforderung, einen Telefonanruf
mit einer angerufenen Partei zu terminieren, den Kalender der angerufenen
Partei, um eine verfügbare
Zeitlücke
für den
Telefonanruf zu bestimmen. Nach der Bestätigung, daß die verfügbare Zeitlücke für den Telefonanruf für die anrufende
Partei annehmbar ist, terminiert das Agentenmittel den Telefonanruf
in der verfügbaren
Zeitlücke
des Kalenders für
die angerufene Partei.
-
EP 0 557 777 betrifft ein
Telekommunikationssystem für
die Verbindung von Kommunikationsendstellen, durch welches es möglich ist,
nach einem erfolglosen Versuch, ein Telefongespräch zwischen zwei verbundenen
Kommunikationsendstellen aufzubauen, an der anrufenden Endstelle
eine Rückrufanweisung
in dem Systemspeicher zu speichern, wobei die Rückrufanweisung bewirkt, daß die Steuereinheit
des Zentralsystems ein Anrufaufbauverfahren zwischen den betreffenden
Kommunikationsendstellen durchführt.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Gemäß der vorliegenden
Erfindung wird ein Verfahren und eine Vorrichtung bereitgestellt,
um bei der Vermittlung von Telefonanrufen und Treffen zu unterstützen. Die
beschriebene Ausführungsform
der Erfindung ähnelt
einem Licht auf dem Schreibtisch, welches aufleuchtet, wenn sich
die Person, die man zu erreichen versucht, in ihrem Büro befindet
und bereit ist, Anrufe entgegenzunehmen.
-
In
der vorliegenden Beschreibung wird die Person, die anfänglich eine
Anforderung einer Verbindung oder eines Telefongesprächs vornimmt,
als Anforderer bezeichnet. Die Person, die sie versucht anzurufen, sich
mit ihr zu verbinden oder zu treffen, wird als Ziel bezeichnet.
Es sollte angemerkt werden, daß am
Ende in Reaktion auf die anfängliche
Anforderung des Anforderers das System des Ziels das System des
Anforderers anrufen kann. Daher beziehen sich die Begriffe Anforderer
und Ziel auf den anfänglichen
Anforderer und sein Ziel und identifizieren nicht notwendigerweise,
wer schließlich
einen Anruf vornimmt oder ein Treffen einleitet. Sowohl Anforderer
als auch Ziel werden hierin manchmal als „Benutzer" oder „Parteien" bezeichnet, wenn eine solche Verwendung
eine Erklärung
zu verdeutlichen scheint.
-
In
einer ersten Ausführungsform
zeigt ein Anforderer an, daß er
ein Ziel anrufen möchte,
sich mit diesem treffen oder auf andere Weise verbinden möchte. Ein
solcher Anruf, eine solche Verbindung oder ein solches Treffen wird
als Echtzeittreffen bezeichnet. Sein System sendet eine Anforderung,
einen Anruf des Zielsystems in eine Warteschlange zu setzen. Wenn
das Ziel verfügbar
ist und mit dem Anforderer sprechen möchte, wird eine Verbindung
hergestellt, und die Benutzer fahren mit ihrer Kommunikation fort.
Anderenfalls wird die Anforderung in eine Warteschlange gesetzt,
bis beide Benutzer gegenseitig verfügbar sind (oder bis ein Quorum
gegenseitig verfügbar
ist, wenn es für
ein Treffen mehr als zwei Parteien gibt). In anderen Ausführungsformen
werden Anforderungen immer in eine Warteschlange gesetzt, bevor
die Verfügbarkeit
festgestellt wird.
-
In
einer ersten Ausführungsform
kommunizieren die Systeme der Benutzer direkt. In anderen Ausführungsformen
kommunizieren die Systeme der Benutzer mittels dazwischen geschalteter
Server, mittels eines zentralen Servers oder durch irgendein anderes
geeignetes Verfahren. Telefonanrufe können über ein Telefonsystem (z.B.
ein POTS, ein schnurloses System oder ein Mobiltelefon), über Internettelefonie
oder über
irgendeinen anderen geeigneten Mechanismus vorgenommen werden. Im
Fall von Mobiltelefonen kann das Mobiltelefon als ein Datenverarbeitungssystem 100 fungieren,
wobei es die Verfügbarkeit
verfolgt durch Aktionen wie das Drücken von Tasten auf dem Telefon,
das Sprechen in das Telefon, das Erkennen, wann und wie schnell
(gemäß dem Unterschied
zwischen Gehen und Autofahren) der Benutzer sich bewegt, das Erkennen, wann
sich das Telefon auf dem Körper
des Benutzers befindet (Körperwärme), das
Erkennen des genauen Ortes des Benutzers von Zeit zu Zeit, sowohl
um über
die Verfügbarkeit
zu entscheiden, als auch um, wenn erwünscht, Anrufe zu Überlandleitungen
an diesem genauen Ort weiterzuleiten.
-
Jeder
Benutzer kann Prioritäten
für die
Personen einstellen, welche ihn anrufen oder kontaktieren. Anforderungen
von Personen hoher Priorität
unterbrechen vorzugsweise den Benutzer, auch wenn er sich in einem
anderen Gespräch
befindet. Anforderungen von Benutzern niedrigerer Priorität werden
in eine Warteschlange gesetzt. Alternativ werden Anforderungen von
Personen hoher Priorität
markiert. Benutzer können auch
andere Benutzer bewerten. In Ausführungsformen, wo eine Bewertung
ermöglicht
ist, können
der Benutzer und das System die Bewertung des Anrufers benutzen,
um der Anforderung eine Priorität
zuzuordnen, die Anforderung zu akzeptieren oder abzuweisen. Der
Benutzer kann Bewertungen sehen, die auf seinen eigenen Eingaben
beruhen, oder Bewertungen, die auf Eingaben von jedem, der eine
Einzelperson bewertet hat, beruhen.
-
Wenn
ein Benutzer nicht verfügbar
ist, wenn ein Anruf empfangen wird, wird eine Anforderung in eine Warteschlange
gesetzt. Für
in der Warteschlange stehende Anforderungen bestimmt das System,
welche Anforderungen gegenseitig verfügbare Benutzer aufweisen, und
zeigt an, daß jene
Anrufe entgegengenommen werden können.
Die Verfügbarkeit
wird vorzugsweise basierend auf einer Vielfalt von Faktoren bestimmt,
z.B. basierend darauf, ob der Benutzer etwas an seinem Computer
eintippt, ob sich der Benutzer physisch im Raum befindet, und auf
terminierte Verfügbarkeitsperioden
für einen
Benutzer. Die Anrufe, die entgegengenommen werden können, können gemäß einer
Prioritätsbestimmung
in eine Rangfolge gesetzt werden. Die Priorität wird vorzugsweise basierend
auf einer Vielfalt von Faktoren bestimmt, z.B. darauf, wer den Anruf
wünschte, auf
der Beziehung der Anrufer, auf nutzerspezifizierten Faktoren, auf
der vergangenen Zeit seit der Anforderung des Anrufs und auf der
vorhergesagten Anrufdauer.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1(a) ist ein Blockdiagramm der Gesamtarchitektur
eines Datenverarbeitungssystems gemäß einer Ausführungsform
der vorliegenden Erfindung.
-
1(b) bis 1(d) sind
Blockdiagramme von Datenprozessoren gemäß anderen Ausführungsformen
der vorliegenden Erfindung.
-
2(a) bis 2(f) sind
Blockdiagramme verschiedener beispielhafter Netzwerkorganisationen,
die mit der vorliegenden Erfindung benutzt werden können.
-
3 ist
ein Ablaufdiagramm, welches ein Verfahren zum Anfordern und Vollenden
einer Echtzeittreffens (Realtime Meeting, RTM) zwischen einem Anforderer
und einem Ziel zeigt.
-
4 ist
ein Ablaufdiagramm, welches das Setzen einer Anforderung in die
Warteschlange zeigt.
-
5 ist
ein Ablaufdiagramm, welches die Überprüfung der
in der Warteschlange stehenden Anforderungen zeigt.
-
6 ist
ein Ablaufdiagramm, welches eine beispielhafte Hauptschleife zeigt,
die Ereignisse verarbeitet.
-
7 ist
ein Ablaufdiagramm, welches weitere Schritte der Hauptschleife der 6 zeigt.
-
8 ist
ein Ablaufdiagramm, welches zeigt, wie ein Anruf vorgenommen wird,
welcher ein spezielles Beispiel für die Durchführung eines
Echtzeittreffens ist.
-
9(a) bis 9(c) zeigen
eine beispielhafte Benutzerschnittstelle auf dem System eines Ziels.
-
9(d) zeigt eine beispielhafte Benutzerschnittstelle
auf dem System eines Anforderers.
-
9(e) bis 9(g) zeigen
eine weitere beispielhafte Benutzerschnittstelle auf dem System
eines Ziels.
-
9(h) zeigt ein beispielhaftes Dialogfeld, welches
dem Benutzer ermöglicht,
das System zu informieren, wenn er unter Verwendung eines Telefons
einen Anruf beendet hat.
-
9(i) zeigt ein beispielhaftes Dialogfeld, welches
dem Benutzer ermöglicht,
einen Internettelefonie-Telefonanruf direkt vom Computer aus vorzunehmen,
ohne das Telefon zu benutzen.
-
DETAILLIERTE BESCHREIBUNG
-
Allgemeine Beschreibung
-
Die
vorliegende Erfindung kann auf einem Computersystem verwirklicht
werden, z.B. auf dem Datenverarbeitungssystem 100 des Anrufers,
welches in 1(a) dargestellt ist. Es ist
zu erwarten, daß eine
Person, die angerufen wird, über
ein ähnliches
System verfügt,
wie hierin beschrieben. Das Datenverarbeitungssystem 100 weist
mindestens einen Prozessor 102 und einen dazugehörigen Computerspeicher 104 auf.
Der Speicher 104 weist mindestens eine Softwarekomponente 112 auf,
um die hierin beschriebenen Aufgaben zu erfüllen. Die beschriebenen Ausführungsformen
der vorliegenden Erfindung können
durchgeführt
werden, wenn Befehle, die im Speicher 104 oder anderen
geeigneten Speichern enthalten sind, durch den Prozessor 102 oder
andere geeignete Prozessoren ausgeführt werden. Das System weist
auch vorzugsweise eine Datenbank 106 auf. Bestimmte Verwirklichungen
des Systems können
auch an ein Telekommunikationssystem 116 angeschlossen
sein, um Anrufe vorzunehmen (oder können über die Netzwerkverbindung 114 die
Internettelefonie verwenden).
-
Das
Datenverarbeitungssystem 100 weist auch vorzugsweise eine
Netzwerkverbindung 114 auf, z.B. eine Verbindung zu einem
LAN, einem WLAN und/oder dem Internet oder zu irgendeinem anderen
geeigneten Netzwerk. Das System 100 weist vorzugsweise
(eine) Eingabeeinheit(en) 118 auf, z.B. eine Tastatur,
einen Berührungsbildschirm
oder ähnliches.
Das System 100 weist vorzugsweise (eine) Ausgabeeinheit(en) 120 auf, z.B.
einen Drucker, einen Anzeigebildschirm oder ähnliches. Das System 100 weist
auch ein computerlesbares Medium 124 auf. Bei dem computerlesbaren
Medium 124 kann es sich um irgendein geeignetes Medium
handeln, welches darauf gespeicherte Befehle und/oder Daten aufweist.
Diese Befehle und Daten können
von den computerlesbaren Medien 124 in den Computerspeicher 104 geladen
werden. Befehle und Daten können auch
in Form einer Trägerwelle
oder durch irgendeine andere Art von Signal über die Netzwerkverbindung 114 in
den Speicher geladen werden.
-
Das
System 100 umfaßt
auch ein Betriebssystem (nicht dargestellt). Der Durchschnittsfachmann
wird verstehen, daß der
Speicher 104 und das computerlesbare Medium 124 weitere
Informationen enthalten können,
z.B. andere Anwendungsprogramme, Betriebssysteme, andere Daten usw.,
welche aus Gründen
der Deutlichkeit in der Figur nicht dargestellt sind. Es versteht
sich, daß das
Datenverarbeitungssystem 100 (oder jedes andere hierin
beschriebene Datenverarbeitungssystem) zahlreiche Elemente aufweisen
kann, die in 1 nicht dargestellt sind,
z.B. weitere Daten, Software und/oder Informationen im Speicher,
Plattenlaufwerke, Tastaturen, Anzeigeeinheiten, Netzwerkverbindungen,
weitere Speicher, weitere CPUs oder Prozessoren, Eingabe/Ausgabe-Leitungen usw.
-
In
der hier vorliegenden Beschreibung versteht es sich, daß die Erfindung
nicht auf irgendeine spezielle Verwirklichung oder Programmierungstechnik
beschränkt
ist, und daß die
Erfindung unter Anwendung irgendwelcher geeigneter Techniken zur
Verwirklichung der hierin beschriebenen Funktionalität verwirklicht
werden kann. Die Erfindung ist nicht auf irgendeine spezielle Programmiersprache,
ein spezielles Betriebssystem oder Netzwerkprotokoll beschränkt. In
dem System kann jede geeignete Art von Telekommunikationssystemen verwendet
werden, z.B., aber nicht darauf beschränkt, das POTS (Plain Old Telephone
System, herkömmliche Telefonsystem),
Mobiltelefone, schnurlose Telefone und Internettelefonie.
-
Einige
oder alle der Befehle und Datenstrukturen im Speicherbereich 104 können von
den computerlesbaren Medien 124 in den Speicher eingelesen
werden. Die Ausführung
von Abfolgen von Befehlen, die in den Speicherbereichen enthalten
sind, bewirkt, daß der
Prozessor 102 die hierin beschriebenen Verfahrensschritte
durchführt.
In alternativen Ausführungsformen
kann statt oder in Kombination mit Software-Befehlen ein festverdrahtetes
Schaltungssystem verwendet werden, um die Erfindung zu verwirklichen.
Somit sind die bevorzugten Ausführungsformen
der Erfindung nicht auf irgendeine spezielle Kombination von Hardware-Schaltungssystemen
und Software beschränkt.
-
In 1(a) speichert die Datenbank 106 die
Anforderung einer Partei, eine andere anzurufen oder sich mit ihr
zu treffen, zusammen mit verschiedenen Parametern und Optionen für den gewünschten
Anruf. Die Software 112 verwendet verschiedene Metriken,
um zu entscheiden, ob eine Partei für einen Anruf verfügbar ist,
z.B. explizite Handlungen (dadurch, daß die Partei ein Programm ausführt oder
eine Funktion in einem laufenden Programm aufruft) und implizite
Messungen, z.B. durch Verfolgen der Tastatur- und Mausaktivität, der Geräusche in
dem Raum, der Telefonbenutzung, des Lichts, der Türaktivität, durch
Bewegungssensoren (und andere Vorrichtungen, die von Sicherheitssystemen
verwendet werden), ein „elektrisches
Auge" usw. Bei dem
Computernetzwerk 114 handelt es sich zum Beispiel um eine
Netzwerkverbindung wie das Internet oder irgendein LAN oder WAN
(oder sogar Modem-Anrufe), um zu ermöglichen, daß irgendein System (welches entweder
zu einem Anrufer oder zu einem zentralen Server gehört) bestimmt,
daß zwei
Parteien, die einen Anruf wünschen,
beide für
den Anruf verfügbar
oder möglicherweise
verfügbar
sind (oder ein Quorum verfügbar
ist, wenn es für
ein Treffen mehr als zwei Parteien gibt).
-
1(b) zeigt eine alternative Ausführungsform,
bei welcher das Datenverarbeitungssystem 100 zwischen einem
Telefon und dem POTS-System angeordnet ist. 1(c) zeigt
eine alternative Ausführungsform, bei
welcher das Datenverarbeitungssystem 100 in eine Leitung
zwischen einem Telefon und dem POTS-System sticht. 1(d) zeigt eine alternative Ausführungsform,
bei welcher das Datenverarbeitungssystem 100 über einen
Netzwerk-Server mit einem PBX-System kommuniziert. Der Netzwerk-Server
kommuniziert mit dem PBX-System unter Verwendung des bekannten CTI(Computer-Telefonie-Integrations)-Standards
oder eines anderen geeigneten Standards.
-
Wie
oben beschrieben kann, wenn einmal die gegenseitige Verfügbarkeit
festgestellt worden ist, jeder der Benutzer Schritte unternehmen,
um den Anruf zu beginnen, entweder direkt durch Computersteuerung
des Mediums (des Telefons oder der IP-Telefonie oder anderer Medien)
oder durch Informieren einer oder beider Parteien, daß der Anruf
durchgeführt
werden sollte, und Auffordern des einen, ihn manuell vorzunehmen
(und des anderen, ihn manuell zu empfangen).
-
Beschreibung bestimmter bevorzugter
Ausführungsformen
-
In
den folgenden Abschnitten werden bestimmte Ausführungsformen der vorliegenden
Erfindung beschrieben, die Teil einer Ausführungsform „Die beschriebene Ausführungsform" der Erfindung sind.
Die beschriebene Ausführungsform
der vorliegenden Erfindung ähnelt
einem Licht auf dem Schreibtisch, welches aufleuchtet, wenn sich
eine Person, die man zu erreichen versucht, in ihrem Büro befindet
und bereit ist, den Anruf entgegenzunehmen.
-
In
einer Ausführungsform
nimmt Alice, wenn sie Bob anrufen möchte, nicht nur das Telefon
ab und wählt.
Stattdessen nimmt sie die Maus und klickt auf Bob oder gibt seine
Telefonnummer, E-mail-Adresse
oder andere Adresse ein. (Alternativ kann Alice auf einem Standardtelefon
wählen,
und ihr Wählen
wird einfach in einen Computer eingegeben, indem den hierin beschriebenen
Verfahren gefolgt wird, statt des direkten Signalisierens des herkömmlichen
Telefonnetzes.) Diese Aktionen melden in Abhängigkeit von der Ausführungsform entweder
bei Bobs Server, dem zentralen Server oder einem lokalen Firmen-Intranet-Server
einen Gesprächswunsch
an.
-
In
diesem Beispiel führt
Bob ebenfalls den Client der beschriebenen Ausführungsform aus. Weil Bobs Client
an seinen Bildschirmschoner und andere Anwendungen angeschlossen
ist, weiß er,
wann sich Bob an seinem Computer befindet. Wenn dies der Fall ist
und er für
ihren Anruf bereit ist, dann könnte
Alice mitgeteilt werden, daß sie
sofort anrufen kann. Bobs aktuelle Nummer wird auf dem Bildschirm
eingeblendet, und sie kann diese wählen. Bei fortschrittlicheren
Telefonsystemen könnte
der Computer auf dem Telefon wählen
oder den Anruf vollenden – wodurch
es für
Alice genau wie ein Telefonanruf aussieht: „Wählen" einer Nummer, und ein Anruf wird durchgeführt.
-
Wenn
sie sprechen, sind Bobs und Alices Software-Clients damit beschäftigt, sie
zu unterhalten und ihnen Werbungen zu zeigen. Diese Situation ist
vorteilhaft für
Werbende, weil bekannt ist, daß beide
anwesend sind und sprechen, aber ihre Augen frei und auf den Bildschirm
gerichtet sind.
-
Vorzugsweise
erkennen Bobs und Alices Computer, wenn Bob und Alice fertig sind.
Sie können
eine preiswerte Schaltung zu den physischen Telefonleitungen aufweisen,
oder das Mikrofon des Computers kann bemerken, daß einige
Minuten lang nicht gesprochen wird. Oder sie können manuell klicken, um anzuzeigen, daß sie fertig
sind und entweder fortgehen, für
andere Anrufe bereit sind oder wünschen,
daß Anrufe
für eine Weile
gehalten werden. Es wird nur einer von ihnen benötigt, um die Beendigung des
Anrufs zu signalisieren. Das Signalisieren des Endes eines Anrufs
bedeutet gewöhnlich,
daß der
Benutzer verfügbar
ist, obwohl es in bestimmten Ausführungsformen dem Benutzer freistehen
kann, die Verfügbarkeit
zu signalisieren.
-
Das
System weiß,
wann sich Bob und Alice an ihren Schreibtischen befinden und für Anrufe
bereit sind. Sobald beide zur selben Zeit dort sind, bemerkt es
dies und macht sich bereit, den von Alice gewünschten Anruf aufzubauen. So
vermeidet die Ausführungsform
Hinterhertelefonieren und Unterbrechungen.
-
2(a) bis 2(f) sind
Blockdiagramme verschiedener beispielhafter Netzwerkorganisationen, welche
mit der vorliegenden Erfindung verwendet werden können. 2(a) zeigt eine Ausführungsform, in welcher sich
das System 202 eines Anforderers über ein Netzwerk wie das Internet,
ein Intranet, ein drahtloses Netzwerk oder irgendein anderes geeignetes
Netzwerk mit dem System 206 eines Ziels verbindet.
-
2(b) zeigt eine Ausführungsform, in welcher sich
das System 212 eines Anforderers über ein Telefonsystem 214 wie
das POTS, ein Mobilfunknetz, ein drahtloses Netz oder irgendein
anderes geeignetes Telefonsystem mit dem System 216 eines
Ziels verbindet. Die Systeme können
Daten zum Beispiel über
Tastentöne
oder Modemübertragungen
kommunizieren.
-
2(c) zeigt eine Ausführungsform, in welcher sich
das System 222 eines Anforderers über ein Netzwerk 224 und
ein Telefonsystem 225 mit dem System 226 eines
Ziels verbindet. In solch einem System könnten Mitteilungen über die
Anrufverfügbarkeit über das
Netzwerk gesendet werden, während
die tatsächliche Verbindung
für den
Anruf über
das Telefonsystem hergestellt wird.
-
2(d) zeigt eine Ausführungsform, in welcher sich
das System 236 eines Anforderers über ein Netzwerk 234 mit
dem System 232 eines Ziels (oder den Proxy eines Ziels)
verbindet, in welcher sich aber das anfordernde System nur über ein
Telefon mit dem Ziel verbindet. Es kann zum Beispiel sein, daß der Anforderer
keinen Software-Client auf seinem Computer installiert hat. Der
Anforderer kann immer noch seine Verfügbarkeit anzeigen, indem er
das Zielsystem oder einen zentralen Server, der für das Ziel
(oder den Anforderer) arbeitet, anruft und Tastentöne eingibt.
Alternativ kann es sich bei dem Zielsystem auch um ein speziell
gestaltetes Telefon handeln.
-
2(e) zeigt eine Ausführungsform, in welcher sich
das System 242 eines Anforderers über ein Netzwerk 244 mit
dem System 246 eines Ziels verbindet, und in welcher ein
zentraler Server die Verwaltung von Anrufen für die Benutzersysteme koordiniert.
In zumindest einer Ausführungsform
befinden sich die Warteschlange der wartenden Mitteilungen und die
Datenbanken für
die Priorität
und die Sortierung auf dem zentralen Server.
-
2(e) zeigt auch optionale Server, welche den Anforderer
und das Ziel mit dem Netzwerk verbinden. Bei diesen Server kann
es sich zum Beispiel um Proxy-Server, Firewalls, Sicherungen oder
Verzeichnis-Server für
das Ziel oder den Anforderer handeln.
-
2(f) zeigt eine Ausführungsform, in welcher sich
das System 262 eines Anforderers über ein Netzwerk 264 mit
dem System 266 eines Ziels verbindet. Mindestens eines
der Benutzersysteme 262, 264 weist einen Primär-Server 267 und
einen Sicherungs-Server 268 für eine zusätzliche Redundanz und Fehlertoleranz auf.
-
3 ist
ein Ablaufdiagramm, welches ein Verfahren zum Anfordern und Vollenden
eines Echtzeitmeetings (RTM) zwischen einem Anforderer und einem
Ziel zeigt. (Ein RTM wird hierin als „Anruf" bezeichnet, weil es in vielen Ausführungsformen
der Erfindung der Zweck der Ausführungsform
ist, Telefonanrufe zu vermitteln.) Beispiele für Echtzeitmitteilungen sind
Telefonanrufe, persönliche
Treffen und Konferenzschaltungen zwischen zwei oder mehreren Personen.
In Element 304 der 3 sendet
ein Anforderer eine Mitteilung, mit welcher ein Echtzeittreffen
angefordert wird. Diese Anforderung wird an ein oder mehrere Ziele
gesendet. Alternativ können
Ziele und Anforderer in einem beliebigen Diagramm miteinander verbunden
sein, basierend auf Anforderungen zwischen Parteien. Zum Beispiel
kann der Benutzer A ein Treffen mit dem Benutzer B anfordern, und
B kann anfordern, den Benutzer C hinzuzuziehen. Alle drei Parteien
werden Parteien des Treffens.
-
In
Schritt 304 wird ein RTM in den Systemen aller Parteien
(also für
den Anforderer und das (die) Ziel(e)) in eine Warteschlange gesetzt.
Wenn die Benutzer verfügbar
werden, signalisieren ihre Systeme den anderen Systeme diese Verfügbarkeit.
In ähnlicher
Weise wird auch signalisiert, wenn Benutzer nicht mehr verfügbar sind.
-
In
Element 306 werden die Benutzer darüber informiert, wenn eine gegenseitige
Verfügbarkeit
der Parteien (oder eines Quorums bei mehr als zwei Parteien) eintritt,
und ihnen wird ermöglicht,
ein RTM zu beginnen. In bestimmten Ausführungsformen beginnt das System
ein RTM ohne Benutzermitwirkung, wenn eine gegenseitige Verfügbarkeit
festgestellt wird. In Element 310 werden nach der erfolgreichen
Vollendung eines RTM die RTMs für
den Anforderer und die Ziele aus der Warteschlange genommen.
-
4 ist
ein Ablaufdiagramm, welches das Setzen einer RTM-Anforderung in
die Warteschlange zeigt. Die Warteschlangen befinden sich im allgemeinen
auf den Benutzersystemen. In einem System mit optionalen Server
sucht das System, wenn ein Benutzersystem eine RTM-Anforderung vom
Benutzer A an den Benutzer B empfangt, nach Servern, welche Anforderungen,
den Benutzer B anzurufen, behandeln. In Element 406 informiert
das System, wenn das System des Benutzers B den Anruf nicht akzeptiert,
den Benutzer A darüber,
daß die
Anforderung abgelehnt wird. Anderenfalls wird die RTM-Anforderung
in Element 408 auf dem Server des Benutzers A aufgezeichnet,
und das System fordert die Server von B auf, eine RTM-Anforderung
vom Benutzer A aufzuzeichnen.
-
5 ist
ein Ablaufdiagramm, welches die Überprüfung der
in der Warteschlange stehenden RTM-Anforderungen zeigt. Es kann sein, daß ein Benutzer
eine Anforderung durch Benutzerwahl oder durch Vorprogrammierung
nicht annimmt. In Element
502 findet das System die in
der Warteschlange stehenden RTMs, die für Benutzer vorgesehen sind,
welche gegenseitig verfügbar
sind. Gegenseitig verfügbar
bedeutet zumindest, daß beide
Benutzer anwesend und dafür
verfügbar
sind, miteinander zu sprechen oder sich zu treffen. Verschiedene
Ausführungsformen
der vorliegenden Erfindung verwenden verschiedene Kriterien zur
Bestimmung der Verfügbarkeit.
Verfügbarkeitsereignisse
können
zum Beispiel die folgenden sein, sind aber nicht auf diese beschränkt: – Beginn
oder Ende eines Anrufs oder einer anderen Verwendung des Telefons
Abgehoben: | Nicht
verfügbar |
Kürzlich abgehoben: | Möglicherweise
verfügbar |
-
– Kürzliche
Aktivität
an Computereingabevorrichtungen (Maus, Tastatur usw.)
-
-
– Konversation
nahe dem Mikrofon
-
- Verfügbar,
aber möglicherweise
in einem Treffen; Möglicherweise
verfügbar,
nachdem die Konversation endet
-
– Licht
ein-/ausgeschaltet (basierend auf der Tageszeit)
-
- Möglicherweise
verfügbar,
wenn Licht kürzlich
eingeschaltet und noch an; Nicht verfügbar, nachdem Licht außerhalb
der Tageslichtstunden ausgeschaltet
-
– Gewicht
im Stuhl oder auf dem Boden
-
- Möglicherweise
verfügbar,
wenn im Stuhl sitzend
-
– Bewegungssensor
wird ausgelöst/beendet
die Auslösung
-
- Verfügbar,
wenn kürzliche
Bewegung im Raum erfasst (andere, falls benötigt)
-
– Öffnen/Schließen der
Tür
-
- Der Benutzer kann „geschlossene
Tür" als Signal für Nicht-Verfügbarkeit
konfigurieren
-
– Gesprochene
Anweisungen
-
- Einfache Spracherkennung (beste Übereinstimmung) von Begriffen
wie „Anrufe
halten" usw.
-
– Anweisungen über Computertastatur/-maus
-
- Der Benutzer kann natürlich
den Verfügbarkeitsstatus
einstellen oder sogar wartende Anrufe unter Verwendung einer Computerschnittstelle
durchsehen
-
– Tastenton-Anweisungen
-
- Wenn das System DTMF-Töne
vom Telefon hören
kann, können
Benutzer bevorzugen, diese anstelle von Computerbefehlen zu benutzen
-
– Fernbedienungs-Tastenton-Anweisungen
-
- Wenn sich der Benutzer nicht am Schreibtisch befindet, aber
eine fernbediente Telefonschnittstelle benutzt, Tastentoncodes (und
Anrufer-Kennungsinformationen des eingehenden Anrufs), um das System
zu steuern, den Ort zu wechseln, den Verfügbarkeitsstatus einzustellen
-
– Terminierte
Verfügbarkeitsperioden
-
- Der Benutzer kann Standardperioden aufweisen, wann er immer
verfügbar
ist, solange er es nicht anders signalisiert oder die Metriken es
anders signalisieren. Das System kann seine Verfügbarkeit bestimmen, indem es
den Kalender der Benutzers liest.
-
In
bestimmten Ausführungsformen
kann die Verfügbarkeit
verschiedene Zustände
einnehmen, welche mit der Anforderungspriorität in Wechselwirkung stehen.
Außerdem
erfordert die Verfügbarkeit
für eine
gegebene Partei im allgemeinen, daß es keine andere Partei oder
andere Parteien gibt, für
welche eine gleichzeitige Verfügbarkeit
auch vorliegt, wenn das RTM mit dieser Partei oder diesen Parteien
eine höhere
Priorität
aufweist.
-
Bestimmte
Ausführungsformen
ermöglichen
Anforderern und Zielen, ihre Verfügbarkeit während einer vorgegebenen Zeitperiode,
z.B. der geschätzten
Dauer des RTM, zu spezifizieren.
-
Sobald
die Verfügbarkeit
festgestellt worden ist, wird die gegenseitige Verfügbarkeit
bestimmt. Die Kommunikation und Bestimmung der gegenseitigen Verfügbarkeit
hängt von
der Kombination der Persönlichkeitsrechte
und Anforderungen aller Benutzer für die spezielle Kommunikation
ab. Möglichkeiten
sind z.B., aber nicht darauf beschränkt:
- 1)
Die Partei sendet immer jede Veränderung
des Verfügbarkeitsstatus über das
Netzwerk an andere Parteien, für
welche eine RTM-Anforderung in der Warteschlange steht. Beide Systeme
erfassen sofort eine gegenseitige Verfügbarkeit und gehen zu Anrufaufbaumaßnahmen über.
- 2) Die Partei sendet keine Verfügbarkeitsveränderungen,
aber fragt von Zeit zu Zeit oder nach Statusveränderung für Parteien in RTM-Anforderungs-Warteschlange
entfernt die Verfügbarkeit
ab.
- 3) Die Partei überträgt Verfügbarkeitsveränderungen
und Status an einen Vertrauens-Drittserver.
Dies tun auch andere Parteien. Der Drittserver erkennt eine gegenseitige
Verfügbarkeit
und informiert eine oder beide Parteien.
-
In
allen Fällen
kann ein Proxy-Server für
einen direkten Benutzer in Aktion treten, und ein Pollen kann den
Platz einer „Push"-Übertragung von Status/Verfügbarkeits-Informationen
einnehmen. Der Verfügbarkeitsstatus
ist benutzerspezifisch. Ein Benutzer kann für eine Person verfügbar sein,
nicht aber für
eine andere. Die Übertragung
von Zustandsinformationen kann unidirektional geschehen, d.h. eine
Partei kann die andere über den
Zustand unterrichten wollen, aber keine umgekehrten Informationen
erwarten. Normalerweise wird die Partei, welche den Anruf wünscht, den
Zustand offenlegen, und der Empfänger
wird ihn verbergen, solange nicht anders spezifiziert. Abfragen
können,
wenn sie vorgenommen werden, anonym oder mit Identifizierung vorgenommen
werden. Benutzer können
anonyme Abfragen abweisen und Aufzeichnungen von Abfragen mit Identifikation
behalten.
-
Jedes
Programm, welches an die Bildschirmschoner-Schnittstelle angeschlossen
ist, erkennt, warm ein Benutzer seinen Computer benutzt. Wenn der
Benutzer seinen Computer benutzt, ist anzunehmen, daß er sich
in seinem Büro
befindet. Und solange er nicht einen einfachen Klick vornimmt, um
dazu aufzufordern, seine Anrufe zu halten, ist er bereit für Anrufe.
Eine andere einfache Hardware kann sich an andere Anhaltspunkte halten,
z.B. Geräusche
oder eingeschaltetes Licht. Für
den ernsthaften Benutzer können
kleine Drucksensoren in Stühlen
oder ein Paar Fotozellen-Türsensoren
weiterhelfen. Oder die Empfangsperson des Benutzers kann verfolgen,
wann er für
Anrufe bereit ist, wie es menschliche Assistenten normalerweise
tun.
-
Wenn
der Benutzer vergißt,
die Anrufe zu halten, muß sein
erster Anrufes nicht tatsächlich
klingeln lassen. Er klingelt auf dem Computer, und es wird ein Fenster
eingeblendet, um zu fragen, ob der Benutzer ihn entgegennehmen möchte (siehe 9). Der Benutzer kann dies entweder tun,
oder er kann die Anrufe halten, als ob er nicht im Büro sei.
-
In
Element 504 der 5 sortiert das System die Mitteilungen,
welche eine gegenseitige Verfügbarkeit aufweisen,
gemäß einer
Mitteilungspriorität.
Diese Prioritäts-Sortierfaktoren
können
z.B. die folgenden sein, sind aber nicht darauf beschränkt:
-
– Wer
wünschte
den Anruf
-
- Anrufe, welche der Benutzer einleitete, sind normalerweise
wichtiger als solche, welche andere zu dem Benutzer einleiteten
-
– Beziehung
(Kunde/Lieferant/Familie/Freund/Kollege usw.)
-
- Gespräche
mit Kunden sind wichtiger als solche mit Lieferanten. Gespräche mit
Familie/Freunden können
eine höhere
oder niedrigere Priorität
aufweisen als andere. Der Chef erhält eine höhere Priorität als Untergebene usw.
Alles ist durch den Benutzer einstellbar. Für Kunden können das Serviceniveau, welches
ein Kunde erworben hat, oder andere Faktoren, die sich auf die Wichtigkeit
des Kunden beziehen, ebenfalls hineinspielen.
-
– Manuell
eingegebene Prioritätsfaktoren
(beide Benutzer, sowohl auf den Anruf als auch auf den Benutzer bezogen)
-
- Der Benutzer kann Standardprioritäten für verschiedene Personen spezifizieren.
Der Benutzer kann auch den Bildschirm nach in der Warteschlange
stehenden Anrufen durchsuchen und deren Priorität verändern.
-
– Vergangene
Zeit seit der RTM-Anforderung
-
- Je länger
jemand auf ein Gespräch
gewartet hat, seit er darum gebeten hat, desto wichtiger ist es.
-
– Ablaufzeit
für die
RTM-Anforderung
-
- Wenn der Anrufer anzeigte, daß das Gespräch vor einem bestimmten Zeitpunkt
stattfinden muß,
dann ist es umso wichtiger, je näher
dieser Zeitpunkt heranrückt.
-
– Erwartete
verbleibende Verfügbarkeitszeit
-
- Wenn eine Partei anzeigte, daß sie nur für eine begrenzte Zeit verfügbar sein
wird, sind solche Gespräche wichtiger.
-
– Vorhergesagte
Anrufdauer
-
- Wenn zu erwarten ist, daß das Gespräch kurz ist, kann es eine höhere Priorität erhalten.
-
– Frühere Historie
(Anrufschwierigkeiten, Wahrheitsliebe, Anrufhäufigkeit)
-
- Parteien, welche nicht oft anriefen, können eine höhere oder niedrigere Priorität erhalten.
Parteien, welche bei der Bereitstellung von Anrufinformationen die
Unwahrheit gesagt haben, können
eine viel geringere Priorität erhalten.
Parteien mit einer Historie, in welcher die Periode zwischen dem
Setzen in die Warteschlange und der Einleitung lang ist, können eine
höhere
Priorität
erhalten („schwer
zu erreichende Personen").
-
Das
System kann darauf programmiert werden, verschiedene Personen unterschiedlich
zu behandeln. Einige können
durchkommen, wenn andere dies nicht können. Die Familie eines Benutzers
könnte
zu jeder Zeit durchkommen, wenn ihre Anforderung eine dringende
Priorität
aufweist. Die Mitarbeiter des Benutzers und die Schlüsselkunden
könnten
einen Zugang auf höherer Stufe
aufweisen. Unerbeten Anrufende müßten sich
identifizieren und mitteilen, worum es bei dem Gespräch geht.
Dieser Text erschiene auf dem Bildschirm, bevor ein Anruf entgegengenommen
würde.
-
Unerbeten
anrufende Anlagevermittler könnten
sich auf diese Weise bewußt
identifizieren, weil jeder, der mehr als einige Male über seinen
Anrufzweck die Unwahrheit sagt, in der Rangdatenbank auf eine schwarze
Liste geraten könnte
(siehe zum Beispiel 9(c)).
Wenn er versucht, irgendjemanden anzurufen, wird die Tatsache, daß er auf
der schwarzen Liste steht, für
den Benutzer hervorgehoben zu sehen sein, bevor er sich entscheidet,
den Anruf entgegenzunehmen. Daher kann der Benutzer, obwohl er die
beschriebene Ausführungsform
in sehr einfacher Weise benutzen kann, um verfügbar zu sein oder nicht, sie,
wenn er möchte,
auch feinabstimmen, um für
verschiedene Klassen von Personen zu verschiedenen Zeiten verfügbar zu
sein oder nicht.
-
In
Element 506 bereitet das System ein Gespräch mit einer
Partei höchster
Priorität
vor. In Element 508 nimmt das System den Anruf vor (oder
zeigt die Empfangsabsicht an und wartet darauf, daß das Ziel/System
einen Anruf vornimmt).
-
6 und 7 sind
Ablaufdiagramme, welche eine beispielhafte Hauptschleife zeigen,
die Ereignisse verarbeitet. Die Server-Hauptschleife umfaßt vorzugsweise
das folgende:
- – Empfangen von Anforderungen
und Statusinformationen von externen Servern
- – Für jene Server,
welche keine Push-Übertragungen
vornehmen können,
oder welche für
eine lange Zeitdauer keinen Kontakt hergestellt haben, Pollen in
einem geeigneten Pollintervall
- – Überprüfen der
Benutzerverfügbarkeit
auf Pollbasis (Auch Empfangen von und Reagieren auf ereignisbasierte
Informationen über
die Verfügbarkeit)
- – Erfassen,
wann beide Parteien für
das Gespräch
verfügbar
sind
- – Senden
von Statusveränderungsinformationen
an Sekundär-Server
und Partner-Server,
die für
diese Informationen freigegeben sind
-
Die
vom Server verarbeiteten Ereignisse sind z.B. die folgenden, aber
nicht darauf beschränkt:
- – Der
Benutzer ist verfügbar
für einen
ausgehenden Anruf
- – Der
Benutzer ist nicht verfügbar
- – Der
Benutzer ist bereit, angerufen zu werden
- – Das
Ziel ist derzeit nicht verfügbar
- – Das
Ziel ist verfügbar
- – Das
Ziel ist in Kürze
verfügbar
- – Eingehende
RTM-Anforderung
- – Veränderung
einer RTM-Anforderung
- – Offene
Verfügbarkeitsanforderung
- – Gespräch abgelehnt
- – Synchronisationsanforderung
(von anderem Server für
den Benutzer)
- – Neue
Daten vom Server
-
8 ist
ein Ablaufdiagramm, welches zeigt, wie ein RTM durchgeführt wird
(zum Beispiel, wie ein Telefonanruf vorgenommen wird). In Element 804 bestimmt
das System, wer den Anruf einleiten sollte, und ermittelt das Medium,
welches für
den Anruf zu benutzen ist. Die beschriebene Ausführungsform kann auch einfach
Probleme bezüglich
dessen lösen,
wer wen anruft. Beim herkömmlichen
Hinterhertelefonieren werden die Anrufkosten demjenigen auferlegt,
der „es" war, wenn der Anruf
zustandegekommen ist, und in der Geschäftswelt wird dies gewöhnlich akzeptiert.
Aber wenn dies gewünscht
und gegenseitig akzeptiert wird, kann das System so konfiguriert werden,
daß die
Person, die zuerst das RTM angefordert hat, aufgefordert wird, den
Anruf vorzunehmen. Oder vielleicht zahlt der Lieferant immer für den Anruf,
sogar wenn der Kunde ihn eingeleitet hat, wie bei einer 0800-Nummer.
Vielleicht leitet die Person mit dem unangenehmsten Anrufabschirmung
den Anruf ein, oder die Person, für die es am praktischsten ist.
-
In
einigen Fällen
könnte
es sein, daß ein
Benutzer sogar nicht möchte,
daß andere
seine Telefonnummer kennen. In diesem Fall würde er darum bitten, immer
den Anruf vorzunehmen. In einer Ausführungsform fordern die Parteien
einen zentralen Server auf, der zu einer Telefongesellschaft gehört, den
Anruf herzustellen, indem die Telefongesellschaft beide Benutzer
anruft und sie zusammenschaltet, ähnlich wie bei einer Konferenzschaltung.
So muß niemand
seine Telefonnummer offenlegen. Alternativ könnte sich der Benutzer an einem öffentlichen
Fernsprechgerät
oder in einem Hotel oder an einem ausländischen Telefon befinden und Schwierigkeiten
haben, Anrufe vorzunehmen oder zu empfangen. Es könnte sein,
daß er
sich nicht einmal an seiner normalen Nummer befindet. Er könnte unterwegs
sein und dem System unter Verwendung seines Telefons oder seiner
Web-Schnittstelle seine vorübergehende
Nummer mitteilen. Dann könnten
Anrufe zu ihm an seinen momentanen Ort gesendet werden, sogar wenn
der Anrufer beim Wählen
seine „Basis"-Telefonnummer eingibt.
-
In
Element 806 leitet das System des Benutzers einen Anruf
ein oder erwartet einen solchen. Während es wartet, empfangt es
weiter Ereignisse. Wenn es einleitet und der Anruf in Element 812 nicht
zustandekommt, sendet das Benutzersystem eine Mitteilung über das
Nichtzustandekommen des Anrufs an die Server der anderen Parteien
und an den zentralen Server. Anderenfalls wartet das System auf
Ereignisse (siehe 6 und 7). In bestimmten
Ausführungsformen
können
während
eines Anrufs auch Werbung oder Aktualisierungsstatusfenster angezeigt
werden.
-
In
Element 808 signalisiert das System, wenn der Anruf endet,
anderen Servern das Ende des Anrufs und nimmt den Anruf aus der
Liste der wartenden Anrufe. In bestimmten Ausführungsformen wird der Anruf auch
protokolliert. In bestimmten Ausführungsformen muß das System
auch ausdrücklich
erklären,
daß sein Benutzer
verfügbar
ist.
-
9(a) bis 9(c) zeigen
eine beispielhafte Benutzerschnittstelle auf dem Benutzersystem
eines Ziels. 9(a) zeigt ein beispielhaftes
Dialogfeld, welches mitteilt, daß ein bestimmter Benutzer („Bob") ein RTM (Anruf)
mit dem Zielbenutzer angefordert hat. Das Ziel kann entscheiden,
den Anruft zurückzuweisen oder
entgegenzunehmen. 9(b) zeigt ein beispielhaftes
Dialogfeld, welches aus einer Anforderung von einem Benutzer hoher
Priorität
resultiert. In solch einem Fall kann die Mitteilung auf dem Bildschirm
des Ziels erscheinen, auch wenn das Ziel beschäftigt oder für gewöhnliche
Benutzer nicht verfügbar
ist. 9(c) zeigt ein beispielhaftes
Dialogfeld, welches aus einer Anforderung von einem Benutzer resultiert,
der zuvor als nicht vertrauenswürdig
bewertet worden ist (entweder durch dieses Ziel oder durch die Gemeinschaft
im allgemeinen). Seine Bewertung wird zusammen mit einer Mitteilung
angezeigt, daß er
einen Anruf wünscht.
-
9(d) zeigt eine beispielhafte Benutzerschnittstelle
auf dem System eines Anforderers. In diesem Beispiel hatte der Anforderer
zuvor versucht, Bob zu kontaktieren, war aber nicht erfolgreich.
Nun ist Bob verfügbar
geworden. Der Anforderer kann das Gespräch mit Bob akzeptieren oder
zurückweisen.
-
9(e) bis 9(g) zeigen
eine weitere beispielhafte Benutzerschnittstelle auf dem System
eines Benutzers, wobei der Benutzer sowohl ein Anforderer als auch
ein Ziel für
verschiedene von mehreren RTMs ist. Die Anzeige der 9(e) wird vorzugsweise die meiste Zeit auf dem
System eines Benutzers angezeigt. Die Anzeige zeigt den Status von
Anforderungen für
RTMs, welche an den oder von dem Benutzer gesendet worden sind.
Wenn der Benutzer zum Beispiel nicht im Büro oder auf andere Weise nicht
verfügbar
war, sind RTMs in seiner Abwesenheit in eine Warteschlange gesetzt
worden. Die Anzeige umfaßt
für jede
Anforderung einen Status des Anforderers (z.B. anwesend, außerhalb
oder unbekannt); ein Alter der Anforderung; den Namen oder die Identität des Anforderers,
eine Priorität
der Anforderung, einen Grund für
die Anforderung (wenn der Anforderer ihn mitgeteilt hat) und Informationen,
welche das System über
den Anforderer hat (z.B. Telemarketing-Mitarbeiter (Wahrscheinlichkeit
93 %)). Im Feld der 9(e) könnte ein
eingehender Anruf bewirken, daß der
spezifizierte Anrufer blinkt und an die oberste Stelle der Anzeige
rückt,
zusammen mit Klingeltönen.
Alternativ könnte
der spezifizierte Anrufer in einem Dialogfeld eingeblendet werden,
was die Bestätigung ermöglicht,
daß der
Anruf entgegengenommen werden soll.
-
9(f) zeigt ein Dialogfeld, das vorzugsweise angezeigt
wird, wenn der Benutzer zu seinem System zurückkehrt und möglicherweise
verfügbar
wird (wie vom System festgestellt oder vom Benutzer angezeigt). Dieses
Feld (welches auch Werbung enthalten könnte) zeigt die Anzahl der
schwebenden Anforderungen für RTMs
durch den Benutzer, die Anzahl der schwebenden Anforderungen für RTMs von
anderen Benutzern an den Benutzer und die Anzahl der Benutzer (sowohl
Ziele als auch Anforderer), die verfügbar, nicht verfügbar und
unbekannt sind. In der beschriebenen Ausführungsform kann der Benutzer
anzeigen, daß er
1) sofort verfügbar
werden möchte
und die schwebende Anforderung der höchsten Priorität für ein RTM
entgegennimmt, 2) nicht verfügbar
bleiben möchte,
oder 3) nicht verfügbar
bleiben möchte,
aber entscheiden möchte,
einige der schwebenden Anrufe/RTMs durchzuführen. Wenn der Benutzer RTMs
durchführt
(Anrufe vornimmt oder Treffen arrangiert), kann er diese selbst
wählen,
oder er kann das System wählen
lassen. Wie oben erwähnt, kann
der Benutzer ein RTM einleiten, wenn er der Anforderer ist oder
wenn er das Ziel ist, solange eine gegenseitige Verfügbarkeit
zwischen dem Ziel und dem Anforderer vorliegt. Vorzugsweise wird,
wenn der Benutzer nicht in einer vorgegebenen Zeitperiode auf das
Feld reagiert, eine Standardaktion vorgenommen, die von dem Benutzer
konfiguriert ist, z.B. nicht verfügbar zu bleiben, und das Feld
wird ausgeblendet.
-
9(g) zeigt ein Dialogfeld, das vorzugsweise angezeigt
wird, wenn der Benutzer ein RTM durchführt (einen Anruf vornimmt oder
ein Treffen arrangiert). Das Dialogfeld zeigt eines oder mehreres
des folgenden, obwohl es sich versteht, daß auch andere Informationen
oder weniger Informationen angezeigt werden könnten: daß der Benutzer angerufen hat
(oder daß die
andere Partei angerufen hat, wenn dies zutrifft); die Anrufdauer,
die Ortszeit und die auswärtige
Zeit (z.B. PST und EST); das Datum des letzten Gesprächs mit diesem
Benutzer; die Gesamtzahl der Gespräche mit diesem Benutzer; der
Grund für
den Anruf (falls mitgeteilt) und andere Informationen über den
anderen Benutzer aus lokalen Datenbanken. Das Dialogfeld enthält vorzugsweise
auch Anrufskosteninformationen, einen Link zu der Internetseite
des Anrufers und die in 9(f) gezeigten
Statusinformationen über
schwebende Anrufe.
-
Außerdem enthält das Dialogfeld
der 9(g) vorzugsweise Schaltflächen, welche
den Benutzer entscheiden lassen, ob der Anruf beendet und der nächste Anruf
entgegengenommen werden soll (nur am Ende des Anrufs abgefragt);
die Anrufklasse geändert
werden soll; der Anruf beendet und Anrufe gehalten werden sollen;
der Anrufer bewertet werden soll (z.B. als nicht vertrauenswürdig oder
eine hohe Priorität
aufweisend); die Typenkennung des Anrufs verändert werden soll; spezielle
Parameter für
den Benutzer oder den Anruf konfiguriert werden sollen; individuelle
Einrichtung des Aussehens und des Eindrucks der Schnittstelle oder
anderer Aspekte der Software 112; und Telefonsteuerungen
(falls über
den CTI-Standard an eine PBX angeschlossen). Das Dialogfeld zeigt
vorzugsweise auch ein Bild des Anrufers an.
-
9(h) zeigt ein beispielhaftes Dialogfeld, welches
dem Benutzer ermöglicht,
das System zu informieren, wenn er unter Verwendung eines Telefons
einen Anruf beendet hat. Der Benutzer wird vorzugsweise auch mit
Informationen versorgt, die dabei helfen, den Anruf vorzunehmen.
-
9(i) zeigt ein beispielhaftes Dialogfeld, welches
erscheinen könnte,
wenn ein Internettelefonie-Telefonanruf
direkt vom Computer aus vorgenommen wird, ohne das Telefon zu benutzen.
-
Die
folgenden Abschnitte liefern weitere Informationen über die
oben beschriebenen Ausführungsformen
und weitere Ausführungsformen
der vorliegenden Erfindung.
-
Anklopfen
-
Vertrauenspersonen
können
nicht nur durchkommen, wenn der Benutzer Anrufe hält, sondern
sie können
sogar durchkommen, wenn er gerade telefoniert (siehe zum Beispiel 9). In dieser Ausführungsform wird dem Benutzer
mitgeteilt, wer der Anrufer ist, und in den meisten Fällen wird
eine schnelle Textmitteilung oder Antwort ermöglicht, ähnlich wie beim Instant Messaging,
dessen Verwirklichung dem Fachmann bekannt ist. In mindestens einer
Ausführungsform
ertönt
kein Piepen, und somit weiß eine
Person am anderen Ende des Telefons während eines Telefonats nicht,
daß für den Benutzer
ein anderer Anruf verfügbar
ist.
-
Nicht nur Telefonanrufe
-
Durch
die beschriebene Ausführungsform
können
auch persönliche
Treffen in größeren Organisationen
terminiert werden, wenn zwei oder mehrere Personen bereit sind,
sich zu treffen, und dies tun möchten, sobald
alle von ihnen im Büro
und frei für
ein Treffen sind. In der Ausführungsform
wird dies bemerkt, und ihnen allen wird eine Mitteilung gegeben,
an dem Treffen teilzunehmen.
-
IP-Telefonie
-
Wenn
der Benutzer die IP-Telefonie benutzen möchte (insbesondere über Firmen-Intranets,
wo sie zuverlässig
arbeiten kann, aber auch über
WANs), wird in der beschriebenen Ausführungsform erkannt, ob beide Parteien über eine
solche Ausrüstung
verfügen, über welche
Ausrüstungsqualität sie verfügen und
ob sie wünschen,
die Ausrüstung
zu benutzen, und es kann ein solcher Anruf arrangiert werden. In
einigen Ausführungsformen
kann der Anruf durch die Ausführungsform
auch tatsächlich
durchgeführt
werden.
-
Netmeeting und Videotelefone
-
Die
Datenbank der beschriebenen Ausführungsform
erkennt, ob beide Parteien über
Dinge wie Microsoft Netmeeting oder Datenzusammenarbeitswerkzeuge
verfügen,
und insbesondere, ob sie beide Videotelefonate senden und/oder empfangen
können.
Wenn ja, kann sie Netmeeting für
ein Shared Whiteboard und andere gemeinsame Anwendungen anrufen
und oder ein Videotelefonat allein oder zusammen mit einem gewöhnlichen
Telefonanruf einleiten. Derzeit benutzt niemand Videotelefonate,
weil es zuviel Arbeit verursacht zu wissen, ob die andere Person über die
Ausrüstung
verfügt,
und die beiden Enden gleichzeitig aufzubauen. In der beschriebenen
Ausführungsform
kann sich der Computer um all dies kümmern.
-
Außerhalb des Büros
-
In
bestimmten Ausführungsformen
könnten
zahlende Kunden eine Tastenton-Fernschnittstelle erhalten, so daß sie sich
selbst als dafür
verfügbar
erklären
können,
auf einer auswärtigen
Nummer angerufen zu werden. Anweisungen können als Audiodateien hinterlassen
werden. Mit Spracherkennung oder Tastentönen könnten komplexere Anweisungen
gegeben werden. Abhängig
davon, wie sehr ihnen vertraut wird, könnten Benutzer auch durch die „Versuchen-und-Finden"-Kette geleitet werden. Die beschriebene
Ausführungsform könnte auch
solche Systeme steuern, wobei sie versucht, den Benutzer zu finden,
und sich erinnert, wenn der Benutzer lokalisiert ist.
-
Privatsphäre
-
Bestimmte
Ausführungsformen
stellen Mechanismen bereit, um den Fluß persönlicher Informationen (z.B.,
wann sich ein Benutzer an einem speziellen Ort, z.B. am Telefon,
befindet) zu steuern. Einige Parteien empfangen Live-Aktualisierungen
dieser Informationen, einige nicht. Andere Ausführungsformen ermöglichen dem
Benutzer, zu konfigurieren, wieviele Informationen an bestimmte
andere Benutzer gesendet werden können und wann. Zum Beispiel
werden unbekannte andere Benutzer als Fremde klassifiziert, aber
einige Benutzer könnten
als Mitarbeiter, Familienmitglieder oder „Enge Vertraute" verschiedener Stufen
klassifiziert werden. Solche engen Vertrauten empfangen Mitteilungen über die
Veränderungen
des Status des Benutzers ungeachtet dessen, ob sie die Anrufanforderung
eingeleitet haben, oder der Benutzer dies getan hat. Einige enge Vertraute
könnten
sogar den Status abfragen können,
bevor sie eine Anrufanforderung vornehmen.
-
Normalerweise
werden Fremden, die Anrufe anfordern, keine Informationen über die
Echtzeitverfügbarkeit
des Ziels gegeben. Stattdessen senden sie dem Ziel ihre eigenen
Verfügbarkeitsinformationen
und lassen das System des Ziels entscheiden, ob die Parteien nun
gegenseitig verfügbar
sind. Einige Ausführungsformen
stellen eine Schnittstelle für
Benutzer bereit, um einfach die Eigenschaften von Anrufern und Zielen
zu verändern,
insbesondere wenn sich ein Anruf/RTM in der Schwebe befindet. In
bestimmten Ausführungsformen
ist es erforderlich, daß ein
Anforderer ein Paßwort
bereitstellt, bevor das Zielsystem eine Anforderung eines RTM akzeptiert.
-
Fehler
-
Die
Software 112 wird gelegentliche Fehler hinsichtlich der
Verfügbarkeit
eines Benutzers machen. In einem System, welches automatisch die
Verfügbarkeit
bestimmt, wird es zum Beispiel, wenn der Benutzer seinen Schreibtisch
verläßt, einige
Minuten dauern, bevor das System entscheidet, daß der Benutzer gegangen ist
und für
Anrufe nicht länger
verfügbar
ist. Einige wenige solcher Anrufe werden durchkommen, aber der andere
Benutzer kann immer zurückrufen.
-
Von
Zeit zu Zeit werden für
Personen, die nicht auf den Listen der Vertrauenspersonen stehen,
Wettlaufbedingungen herrschen, wobei A den Anruf von B zur selben
Zeit bestätigt,
wenn B ein Gespräch
mit C aufbaut. Angemessene Reaktionszeiten des Systems begrenzen
die hierdurch vergeudete Zeit auf ein Mindestmaß.
-
Integration
-
Vorzugsweise
ist die Software 112 in die Informations-Push-Werkzeuge
des Bildschirmschoners integriert, z.B. Pointcast, Backweb, Wayfarer,
Netcaster, Netmeeting und Active Desktop. Vorzugsweise ist die Software 112 auch
in Computertelefonsysteme integriert, so daß alles durch ein System gesteuert
wird.
-
Call-Center
-
Call-Center
für den
Kundendienst können
die vorliegende Erfindung benutzen. Anstatt die Benutzer auf der
kostspieligen 0800-Nummer zu halten, könnten die Benutzer RTMs anfordern,
die mit dem Call-Center-Personal von dem Benutzer vermittelt werden.
Sobald eine Antwort des Kunden im Call-Center verfügbar wäre und der
Benutzer, der Hilfe benötigt,
ebenfalls verfügbar
wäre, würde der
Anruf durchgeführt.
-
Call-Center
vermarkten oder verteilen somit die Basis-Client-Software 112 an
ihre eigenen Kunden. Man stelle sich die Warteschleifenmusik in
großen
Firmen vor, die aussagt: „Sind
Sie es leid, in der Warteschleife zu warten? Wir wollen Sie nicht
warten lassen. Laden Sie unseren Client noch heute herunter, und
wir rufen Sie an, wenn es für
Sie praktisch ist."
-
Bitte warten Sie
-
In
der Tat könnte
die vorliegende Erfindung die Worte „Bitte warten Sie" zumindest für lange
Warteschleifen aus dem Vokabular entfernen. Stattdessen nimmt der
Anforderer seine Anforderung eines RTM vor, trennt die Verbindung
und baut sie wieder auf, wenn beide Parteien bereit sind. Diese
Verwendung ist besonders effektiv mit neuen Telefonverfahren wie
ISDN und IP-Telefonie, welche sehr kurze (unter 1 Sekunde) Wähl- und
Verbindungszeiten für
einen Anruf aufweisen. Eine Integration in Call-Center-Systeme und PBX-Computer
können
das Verfahren für
Benutzer jener Systeme nahezu unsichtbar machen.
-
Komponenten eines Vereinfachungssystems
für Echtzeit-Multimediatreffen(RTMM)
-
Bei
einem RTMM handelt es sich typischerweise um einen Telefonanruf,
es kann sich aber auch um ein persönliches Treffen, ein Videotelefonat
oder ein digital vermitteltes Treffen (Chat, Shared Whiteboard) oder
irgendeine Mischung aus den obigen handeln.
- a)
Eine Zusammenstellung von Aufzeichnungen des Wunsches für einen
Benutzer des Systems, ein einmaliges RTMM mit einem oder mehreren
Benutzern des Systems zu haben; Diese Zusammenstellung kann zentralisiert
sein oder mit „Client"-Komponenten des
Systems gespeichert sein, die zu den Benutzern gehören, oder
es kann sich um eine Mischung daraus handeln.
- b) Metriken, um zu bestimmen, ob ein gegebener Benutzer des
Systems bereit und verfügbar
für ein
RTMM oder ein RTMM mit speziellen anderen Parteien ist. Diese können die
direkte Eingabe von Wünschen
oder anderen Status durch den Benutzer in ein Software-System umfassen,
Daten, die durch Überwachung
der Aktivität
an dem Computersystem des Benutzers, dem Telefon oder anderen elektronischen
Werkzeugen im Besitz des Benutzers gesammelt werden, oder Daten,
die von zu dem Benutzer gehörenden
Messumformern gesammelt werden, welche Dinge wie Geräusche, die
Gegenwart von Licht, die Gegenwart von Gewicht auf dem Boden oder
in einem Stuhl oder Bewegung oder physische Anwesenheit, erfaßt von Bewegungssensoren
oder Kameras, messen. Die Verwendung des Systems an sich, um RTMMs
zu arrangieren, liefert ebenfalls eine solche Metrik.
- c) Ein zentraler Server, an welchen diese Metriken kommuniziert
werden, insbesondere wenn sie sich verändern, so daß der Server
berechnen kann, wann alle Parteien für ein gewünschtes RTMM anwesend, verfügbar und
gewillt sind, und das RTMM einleiten kann. Alternativ besteht eine
Möglichkeit
für lokale
Clients, sich direkt mit den Systemen anderer Benutzer zu verbinden,
um die Metriken zu kommunizieren, zu berechnen, ob es die richtige
Zeit für
einen Anruf ist, und das RTMM einzuleiten.
- d) Systeme, um ein RTMM einzuleiten, entweder durch Informieren
von Benutzern, daß es
nun angebracht sei, einen speziellen Telefonanruf oder eine RTMM-Einleitung
vorzunehmen (und möglicherweise
Bereitstellen von Informationen darüber, wie der Anruf vorzunehmen
ist), oder durch tatsächliches
Einleiten des RTMM durch Medien wie computergesteuerte Telefonwählvorrichtungen,
computergesteuerte Telefonie, computerbasierte Telefonie oder computerbasierte
oder – gesteuerte
digital vermittelte Treffen.
- e) Systeme, um das Ende eines RTMM zu erfassen, entweder mit
Metriken oder einer Eingabe vom Benutzer, um den Verfügbarkeitsstatus
der Benutzer zu ändern.
Außerdem
wird nach einer erfolgreichen Herstellung eines RTMM die aufgezeichnete
Anforderung des RTMM als erledigt markiert und wird aus der Datenbank
entfernt oder ist dort nicht mehr aktiv.
- f) Systeme, um den Benutzern zu ermöglichen, Kontrolle über ihre
Verfügbarkeit
für ein
RTMM mit verschiedenen anderen Benutzern oder Klassen von Benutzern
auszuüben
und wahlweise Wünsche
zu bestätigen, bevor
Treffen eingeleitet werden.
- g) Systeme, um Vorlieben von Benutzern hinsichtlich dessen,
wer manuell aufgebaute RTMMs einleiten und/oder dafür bezahlen
sollte, und andere Verfahrensweisen aufzuzeichnen, und um diese Entscheidungen
zu vermitteln, ebenso wie Vorlieben für Arten und Zeiten von Treffen
aufzuzeichnen und diese zu vermitteln.
-
Einige Beispiele spezieller bevorzugter
Ausführungsformen
-
Alice
(A) möchte
Bob (B) anrufen, aber B ist nicht verfügbar. Wenn sie beide gleichzeitig
verfügbar
sind (und keinen schwebenden Anruf höherer Priorität aufweisen),
können
in Abhängigkeit
von ihrer Beziehung verschiedene Dinge geschehen.
- a)
A und B sind enge Vertraute
A wird informiert, und der Anruf
wird eingeleitet, normalerweise durch A. Bs Computer zeigt an, daß der Anruf
eingeht, er weiß aber
möglicherweise
nichts darüber,
bis das Telefon klingelt.
- b) Zwei weniger enge Vertraute
B wird über As Anrufswunsch informiert.
B bestätigt
entweder, und der Anruf wird eingeleitet. Wenn A anrufen soll, wird
A darüber
informiert, daß B
verfügbar
ist, und nimmt den Anruf vor. Anderenfalls ruft B an, und A weiß möglicherweise
nichts darüber,
bis das Telefon klingelt. A kann auch anzeigen, daß sie nicht bereit
ist, und den Anruf verschieben. B wird hierüber kurz informiert, und der
Anruf wartet darauf, daß A dies
zurücknimmt.
- c) A und B sind Fremde
B wird über As Wunsch informiert. B
kann wählen,
den Anruf zu verschieben, in diesem Fall wird A nicht darüber informiert,
bis B dies zurücknimmt.
B kann die Anrufanforderung abweisen, in diesem Fall wird A darüber informiert
und erhält
möglicherweise
eine Mitteilung über
den Grund oder einen Vorschlag darüber, was sie tun sollte, um
angenommen zu werden.
- d) B kann auch den Anruf verwerfen, was bedeutet, daß der Anruf,
soweit es A betrifft, bis zu irgendeiner „Ablaufzeit" aktiv bleibt, die
von A eingestellt wurde und zu der nicht entgegengenommene Anrufe
verschwinden. A wird es möglicherweise
herausbekommen.
- e) Bei A handelt es sich um einen Anrufertyp (Telefonwerber),
von dem B keine Anrufe entgegennimmt
A wird sofort mitgeteilt,
daß der
Anruf nicht angenommen wird, sie wird aber gewarnt, daß eine falsche
Darstellung zu einem Entzug des Rechts führen kann, Anrufe oder Anforderungen
vorzunehmen.
- f) A erklärt
den Anruf für
dringend
Wenn es sich bei A um die Art von Anrufer handelt,
der eine solche Erklärung
vornehmen kann, wird B auf dem Bildschirm über den Anruf informiert, auch
wenn er nicht vollständig
verfügbar
ist (wenn er sich also in einem Gespräch oder Treffen befindet, oder
wenn der Bildschirmschoner aktiv ist)
- g) A steht B sehr nah
Wenn A zur Familie gehört oder
irgendeine andere enge Beziehung zu B aufweist, kann A möglicherweise auf
Informationen über
Bs Status zugreifen, zum Beispiel darüber, wie lang es her ist, seit
B verfügbar
war, ob sich B in einem Gespräch
befindet, und vielleicht sogar, mit wem B spricht.
-
Wer bezahlt für den Anruf?
-
Dies
wird vorzugsweise durch verschiedene Faktoren bestimmt:
- – Wer
wünschte
den Anruf?
- – Wenn
alle anderen Dinge gleich sind, wählt die Person, welche den
Anruf einleiten wollte, und bezahlt dafür.
-
Weitere Einzelheiten
-
Ein
Benutzer könnte
auch seinen Computer Anrufe sichten lassen und nur die Anrufe hineinlassen,
die er für
ihn in eine Warteschlange gesetzt hat, entweder mit Anrufer-Kennung
oder unter Aufforderung des Benutzers, einige Tastentöne einzugeben
(diese wurden ihnen gegeben, als ihr Computer bestätigte, daß es Zeit für den Anruf
war).
-
Computer unterbricht eingehende
Anrufe
-
Der
Computer des Benutzers unterbricht (vermutlich über ein sprachfähiges Modem)
eingehende Anrufe, gibt Sprachmitteilungen aus, wartet auf Tastenton-Codes.
- a) Wenn momentan im Begriff, einen Anruf vorzunehmen
Dieses
Anzeigen, Auffordern, sich in die Warteschlange zu setzen, Bereitstellen
eines Codes für
ein Dringlichkeits-Aufschalten (Erfassen der Anrufer-Kennung des
erwarteten Anrufs für
alle Fälle)
- b) Wenn momentan ein bestimmter Anruf erwartet wird
Dieses
Anzeigen, Auffordern, eine Codenummer für diesen Anruf oder eine Anrufer-Kennung
zur Identifizierung des Benutzers einzugeben; Anderenfalls Auffordern
des Anrufers aufzulegen, und Setzen dessen eigenen Anrufs in die
Warteschlange jetzt oder später;
Ermöglichen
eines Dringlichkeits-Aufschaltens
- c) Wenn momentan kein Anruf erwartet oder vorgenommen wird
Erklären des
Systems der beschriebenen Ausführungsform;
Akzeptieren permanenter Zugangscodes oder Akzeptieren von Anrufer-Kennungen
bekannter Parteien, falls diesen zugänglich, und Durchstellen solcher Anrufe;
Anderenfalls Unterrichten des Anrufers, wie ein Anruf in die Warteschlange
gesetzt wird
- d) Wenn der Anrufer keinen Computer hat, Ermöglichen des Setzens in die
Warteschlange über
Tastentöne oder
Unterstützen
beim Sichten des Anrufs
-
Finden eines Servers nach dem Eingeben
der Kennung der Partei, die der Benutzer anrufen möchte
-
Wenn
der lokale (optionale) Server dem Namen nach bekannt ist, versucht
das System, mit ihm in Kontakt zu treten. Es führt einen DNS-Suchlauf durch,
um Codes für
Sekundärserver
zu finden, und versucht, mit diesen in Kontakt zu treten. Es tritt
mit einem Hauptserver in Kontakt, um Informationen darüber zu erhalten,
mit welchem Server es in Kontakt treten soll. Vorzugsweise kann
jeder Server einen Versuch auf einen anderen Server umleiten.
-
Für Treffen statt Anrufen
-
Statt
des Einleitens eines Anrufs einfach Senden von Anweisungen an alle
Parteien eines Treffens, daß es
Zeit ist, sich zu treffen
-
Mehrparteienanrufe
-
Warten
auf die Verfügbarkeit
aller Parteien oder aller Schlüsselparteien
plus eines gewissen Bruchteils der Sekundärparteien; Dann Einleiten des
Treffens oder der Konferenzschaltung
-
Anrufweiterleitung bei besetzter
Leitung
-
Eine
zweite Nummer empfängt
den Anruf und benutzt Benutzer-Kennungs-Informationen und andere Anrufsichtungstechniken,
um das Sichtungsverfahren zu duplizieren. Diese Funktion kann statt
an einer vom Benutzer geführten
Anlage an einem zentralen Server stattfinden. Ein Notfallcode kann
bewirken, daß der Computer
den Benutzer über
den Notruf informiert.
-
Arten der Anrufeinleitung
-
Das
System weiß,
welche Art der Ausrüstung
an jedem Ende der Leitung vorhanden ist, und kennt die momentane
Situation jeder Partei. Diese Parameter beeinflussen, wie der Anruf
momentan bewerkstelligt wird. Die Parteien bestätigen die Einleitung oder akzeptieren
eine automatische Einleitung basierend auf Vorlieben und auf den
Anrufer/Angerufenen bezogenen Vorlieben. Obwohl ein Computer-Wahlverfahren
bevorzugt wird, wenn verfügbar,
kann der Benutzer auch auswählen,
ein manuelles Wählverfahren
anzuwenden. Wenn es einen Computerempfang gibt, wird er bei einem
automatischen Wählverfahren
automatisch durchgeführt.
-
Computerempfang gg. persönlichen
Empfang gg. Empfangsperson
-
Eine
Partei kann selbst das Telefon beantworten oder eine Computervorrichtung
haben, die das Telefon beantwortet, wie oben beschrieben. Eine menschliche
oder elektronische Empfangsperson kann ebenfalls den Anruf sichten
und wissen, warm er an die Empfängerpartei
weiterzuleiten ist. In ähnlicher
Weise kennt das System die Vorlieben seines Benutzers und verwendet
eines aus einem gewöhnlichen
analogen Telefon, einem digitalen (Sprache über IP usw.) oder einem Videotelefon.**
-
Beide Parteien rufen ein zentrales „Konferenzsystem" an
-
Wenn
beide Parteien nicht einfach Nicht-0800-Anrufe vornehmen können oder
nicht ohne großen
Aufwand überhaupt
Anrufe vornehmen können,
kann ein zentraler Netzknoten verwendet werden. Dieser Netzknoten
kann für
die zwei oder mehr Parteien 0800-Nummern aufweisen, um anzurufen
(ein herkömmliches Konferenzschaltungszentrum),
oder er kann die Fähigkeit
aufweisen, die Parteien anzurufen, wenn Kostentragungsvereinbarungen
möglich
sind. Beispiel: Übersee-Orte,
von wo aus Anrufe in die USA teuer sind, aber Anrufe von den USA
aus viel billiger sind. Ein zentrales System ruft beide Parteien
(oder alle Parteien) an und verbindet sie.
-
Pager
-
Eine
Pager-Nummer oder E-mail-Adresse wird verfügbar gemacht. Ein Anruf wird
durch Pagen/Anfordern einer Partei eingeleitet, welche dann die
andere Partei oder ein Call-Center anruft.
-
Call-Center-Version
-
Anders
als bei einem Einzelsystem können
Anrufe zu einer Gemeinschaft verschiedener möglicher Empfänger geleitet
werden. Der erste verfügbare
Empfänger
bearbeitet den Anruf, der sofort aus der Warteschlange entfernt
wird, so daß andere
ihn nicht bearbeiten. Möglichkeit
für die
Mitarbeiter des Call-Centers, Verfügbarkeits-/Terminierungsinformationen
aus den eigenen Computersystemen des Call-Centers zu erhalten; Weitere
Prioritätsfaktoren:
Serviceniveau des Kunden, in Halteposition verbrachte Zeit usw.;
Momentan gehaltene Anrufer vermischt mit in der Warteschlange stehenden
Anrufen
-
Allgemeine Kommentare
-
- a) In der grundlegenden Verwirklichung der
Software 112 werden Mitteilungen verwendet. Jedes System, sowohl
Server als auch Clients als auch Unterserver, wartet normalerweise
auf Ereignisse und reagieren dann auf diese. Ereignisse sind z.B.
das Vornehmen einer Anforderung, ein RTM/eine Anforderung in die Warteschlange
zu setzen, und Veränderung
der Verfügbarkeit
einer anrufenden oder angerufenen Partei. Ereignisse sind z.B. auch
Veränderungen
der Informationen, welche die Verfügbarkeit bestimmen, und natürlich alle
Ereignisse eines Anrufs: Versuch der Verbindung, Rückbestätigung der
Verfügbarkeit,
Herstellung der Verbindung (d.h. Live-Audio oder Treffen) und dann
Beendigung der Verbindung.
-
Es
kann jedoch in einigen Fällen
notwendig sein, den Status zu „pollen", anstatt einfach
Ereignisse anzunehmen, die den Status verändern. Wenn zum Beispiel Internetfilter,
Proxys oder Firewalls das Empfangen eingehender Mitteilungen unmöglich machen,
kann es sein, daß ein
Client alle wenige Minuten pollen muß, um den Status zu überprüfen. (Dies
ist in Internet-„Push"-Clients recht verbreitet.)
-
In
einer Ausführungsform
werden zwei Software-Clients verwendet, welche direkt miteinander
sprechen, sobald sie herausgefunden haben, wo sie sich im Internet
befinden. In der Praxis können
jedoch für
die folgenden Zwecke dazwischengeschaltete Server verwendet werden:
- a) Um der aktuellen Internetadresse für die anzurufende
Person den Namen eines Menschen oder eine Telefonnummer zuzuordnen
- b) Um mit sich ändernden
Internetadressen (aufgrund einer dynamischen DHCP-Wirtskonfiguration)
umzugehen oder mit gemeinsam benutzten Internetadressen umzugehen,
wenn z.B. eine Netzwerkadressenübersetzung
angewendet wird
- c) Um Status und Verbindungen zwischen Fremden zu vermitteln
- d) Um Aufzeichnungen über
Benutzer zu erstellen, so daß ein
Benutzer den anderen als Lügner
brandmarken kann, wenn dieser mit einer falschen Eröffnungsmitteilung
anruft
- e) Um als Proxy Verbindungen an Benutzer hinter Firewalls zu
leiten
- f) Um ein Pollen durch Benutzer hinter solchen Firewalls zu
ermöglichen
- g) Um auf dem freien Client Werbungs-Kontrollinformationen zu
empfangen
-
In
bestimmten Ausführungsformen
umfassen Server die „Hauptserver", die von einer Zentralfirma
geführt
werden, und Proxy-Server, die von Gesellschaften geführt werden,
welche diese Software kaufen. Im allgemeinen beginnen Gespräche zwischen
Fremden (zwei Personen, die sich niemals zuvor angerufen haben) über einen
zentralen Server. Sobald sich die Parteien kennen, kann es möglich sein,
ohne den zentralen Server anzurufen, wenn sie statische Netzwerkadressen
besitzen. Wenn sie eine dynamische oder nicht permanent verbundene
Adresse besitzen, kann es sein, daß sie einen zentralen Server
benutzen müssen.
-
Ein
Anruf kann immer noch abgewiesen werden, auch wenn beide Parteien
im allgemeinen verfügbar sind.
Dies dient dazu, die Privatsphäre
des Benutzers zu schützen.
Wenn ein Fremder einen Benutzer anruft, findet der Fremde normalerweise
nicht heraus, ob der Benutzer verfügbar ist oder nicht. Stattdessen
kann der Benutzer sehen, ob der Fremde anwesend ist oder nicht (Fremde
senden dem Benutzer eine Statusveränderungsmitteilung), und dann,
wenn der Fremde verfügbar
ist und der Benutzer für
einen Anruf bereit ist, wird der Anruf vorgenommen. Andererseits
kann ein Benutzer ein versehentliches Signal der Verfügbarkeit
oder Nichtverfügbarkeit
haben und dieses zurücknehmen
wollen. In diesem Fall sendet das System des Benutzers die Verfügbarkeit
aus, und die angerufene Partei sendet ihre Zeit für einen
Anruf zurück.
Zu jener Zeit kann der Benutzer sich dafür entscheiden abzubrechen.
Wenn der Benutzer sich häufig
dafür entscheidet
abzubrechen, wird dies von anderen Benutzern bemerkt und beeinflußt ihre
Bewertung, sehr ähnlich
einer Person, die immer wieder auf dem Telefon anruft, wenn man
nicht anwesend ist, und die Anrufer-Kennungs-Aufzeichnungen hinterläßt.
-
Wie
angemerkt, arrangiert die Technologie, obwohl sie auf das Telefon
fokussiert ist, in Wirklichkeit jede Art von Echtzeit-„Treffen". Dies umfaßt persönliche Treffen.
Ein Benutzer kann also ein Treffen mit seinem Chef anfordern. Wenn
beide verfügbar
sind, benachrichtigen beide Systeme die Parteien.
-
In
bestimmten Ausführungsformen
checkt ein Software-Client, wenn er initialisiert wird, bei seinem Server
ein. Dort kann er herausfinden, ob es eine neue für den Benutzer
verfügbare
Client-Aktualisierung
gibt, und alle neuen Werbeinformationen herunterladen. Der Grundzustand
des Clients, während
er „in
Betrieb" ist, wird
vom Server aufgezeichnet, so daß der
Server ihm nach einer gewissen Zeit Ereignisse senden kann. Normalerweise
ist die Verbindung keine permanente, obwohl Firewalls dies in einigen
Fällen
erzwingen können. Wenn
der Client einen Unterserver verwendet, ist dieser Server normalerweise
dafür verantwortlich,
den Hauptserver über
Dinge zu informieren. Ein Grund dafür, bei einem Unterserver einzuchecken,
ist es, daß dieser
Server Zustandsveränderungsinformationen über Parteien,
für welche
der Benutzer in der Warteschlange stehende Anrufe aufweist, empfangen
haben wird, während
der Client des Benutzers außer
Betrieb war. Beim Anlaufen können
diese Informationen synchronisiert werden, wenn sie verfügbar sind,
und die Systeminformationen des Benutzers aktualisiert werden.
-
RTM-Anforderungen
können
direkt hereinkommen oder können über den
Server kommen, mit welchem der Client verbunden ist. RTM-Anforderungen
von Fremden kommen normalerweise auf diesem Weg, um die Offenlegung
privater Informationen an den Fremden zu vermeiden. Außerdem können Server
benutzt werden, um die Kommunikation zu anonymisieren, beide Parteien
sprechen also zu dem Server, so daß keiner von beiden (und auch
keiner, der schnüffelt)
zu sehen bekommt, wer mit wem spricht.
-
Clients
teilen normalerweise dem zentralen Server mit, daß sie außer Betrieb
gehen (bis zu einer weiteren Meldung für zukünftige Mitteilungen nicht verfügbar sind).
Sie gingen jedoch gelegentlich, und ein Server, der keine Pings
erhält,
wird den Client als außer
Betrieb aufzeichnen. Server weisen auch Sicherungsserver auf. Wenn
sie außer
Betrieb gehen, wissen Clients die Sicherungsserver zu benutzen.
Wenn ein Server wieder in Betrieb kommt, signalisiert er dies den
Servern, die sein Pensum bearbeitet haben, und sie synchronisieren die
Daten und geben das Pensum zu dem Server zurück.
-
Die
tatsächliche
Abfolge eines Anrufs läßt sich
in die folgenden Untertypen aufteilen:
- a) A
ruft B an, der kein enger Vertrauter ist, aber B ist nicht verfügbar. A
informiert B nun regelmäßig über jede
Statusveränderung.
Wenn Bs System bemerkt, daß A
verfügbar
ist und B verfügbar
ist, teilt Bs System A mit, daß die
Zeit für
den Anruf gekommen ist. Die Systeme entscheiden, wer tatsächlich anruft,
und der Anruf wird ausgelöst.
- b) A ruft seinen engen Vertrauten B an. Nun informieren A und
B beide den anderen über
jede Statusveränderung.
Der neu verfügbare
Anrufer zeigt, indem er den neuen Status sendet, an, daß er einen
Anruf beginnen möchte,
und die Systeme gehen zur Entscheidung über, wer anruft, und der Anruf
wird ausgelöst.
-
Wenn
der Anruf über
ein Computernetz stattfindet, wird er dort vorbereitet. Wenn der
Anruf über
ein POTS stattfindet, arbeiten das Computernetz und das POTS-Netz
zusammen. Ein Wähler
(nicht immer derselbe wie der Anforderer des Anrufs) nimmt den Anruf
vor. Dies geschieht entweder, weil der Computer des Wählers den
Anruf vornehmen kann (also ein Modem oder CTI), oder der Computer
des Wählers
eine Mitteilung einblendet, die besagt „Wählen Sie nun xxx-xxxx und fragen
Sie nach Mr. Jones".
Das System der angewählten
Partei geht in einen Wartezustand über. Wenn es ein Modem steuert,
welches das Telefon beantwortet, wartet es auf den Anruf. Der Anruf
sendet, wenn er hereinkommt, Tastentöne aus, um durchzukommen. Andere
Anrufer, die sich während
dieser Zeitperiode einschleichen, können in irgendeiner Weise abgeleitet werden
(kurze Mitteilung und Trennen der Verbindung). Wenn ein Benutzer
selbst an sein Telefon geht und das System dies nicht erkennen kann,
muß einer
der Benutzer anklicken, daß der
Anruf aktiv ist (oder wenn sie gar nichts anklicken, wird er nach
einer Weile als aktiv angenommen. Während all diesem sind beide
Anrufer für
andere nicht verfügbar,
außer
für diejenigen,
die unterbrechen können.
-
Während des
Anrufs können
immer noch Ereignisse eingehen und verarbeitet werden. Das einzige spezielle
ist die Anforderung einer Unterbrechung, welche von engen Vertrauten
kommen kann, welche dafür freigeschaltet
sind, dies zu tun, oder von jenen, die einen Notfall erklären. (Eine
solche Erklärung
muß normalerweise über zentrale
Server laufen, so daß sie
zurückverfolgt
werden kann, um die Vertrauenswürdigkeit
des Benutzers zu bestimmen.) Eine Unterbrechung beendet nicht den
Anruf, es wird aber eine Mitteilung eingeblendet, die besagt, daß ein Anrufer
unterbrechen möchte.
Diese kann einen Text von dem Anrufer enthalten. Der Benutzer kann
dann die Unterbrechung akzeptieren (sehr ähnlich wie beim Anklopfen)
oder abweisen, wobei er möglicherweise
mit irgendeinem Text antwortet.
-
Ein
Fehlschlagen eines Anrufs (keine Antwort) zeigt an, daß der Empfänger möglicherweise
nicht wirklich verfügbar
ist, obwohl er dies signalisiert. Dies bewirkt, daß sein Computer
eine Mitteilung aufblinken läßt (und
sogar spricht), die den Benutzer auffordert, seinen Status zu aktualisieren.
Wenn der Benutzer nicht antwortet, wird er als nicht verfügbar gekennzeichnet,
insbesondere wenn andere unterstützende
Anhaltspunkte vorliegen, wie eine lange Untätigkeitszeit. Hierbei wird
ein Fenster auf dem Bildschirm hinterlassen, um die Veränderung
anzuzeigen, wenn er wiederkommt.
-
Wenn
ein Benutzer nicht verfügbar
ist (wenn sich zum Beispiel sein Bildschirmschoner eingeschaltet hat),
dann befindet er sich auf dem Weg dahin, wieder verfügbar zu
werden, wenn er zurückkommt
und den Computer berührt.
Er wird jedoch nicht sofort allgemein für alle als verfügbar gekennzeichnet.
Ein kleines Fenster kann eingeblendet werden, welches besagt „Möchten Sie
jetzt verfügbar
sein?", auf das
er mit Ja oder Nein antworten kann oder auf Anrufer klicken kann,
für welche
er verfügbar
sein möchte.
-
Wenn
er jedoch schwebende Anrufe von engen Vertrauten aufweist, können jene
engen Vertrauten eine Mitteilung der „schwebenden Verfügbarkeit" erhalten, welche
sie benutzen können,
um zu entscheiden, ob sie dringlich einen Anruf anfordern möchten, auch
bevor der Benutzer eine Chance hatte, seine Anrufwarteschlange durchzusehen.
-
Wenn ein Benutzer sich nicht
an einem Computer befindet
-
In
mindestens einer Ausführungsform
können
RTMs (hauptsächlich
Telefonanrufe) vorgenommen werden, wobei sich eine der Parteien
nicht an einem Computer befindet, der an ein Netzwerk anschließbar ist, oder
nicht einmal ein Benutzer des Systems ist. In dem System registrierte
Benutzer, welche es normalerweise von ihrem „Basiscomputer" aus benutzen, können von
dem System entfernt sein, aber trotzdem wünschen, es zu benutzen, um
Telefonanrufe zu vermitteln. (Entfernt von dem System ist es weniger
wahrscheinlich, dieses zu benutzen, um Treffen zu arrangieren.)
-
Dies
kann auf einer Vielfalt von Wegen stattfinden, u.a.:
- a) Die Partei kann, während
sie einen Computer benutzt, einen Zeitplan sowohl über die
Verfügbarkeit
als auch über
die Telefonnummer, unter welcher der Benutzer erreichbar ist, eingeben.
Zum Beispiel könnte sie
spezifizieren, daß sie
für einige
oder alle Anrufer entweder zu speziellen Zeiten oder zu jeder Zeit,
wenn sie von einem mit dem Netzwerk verbundenen Computer entfernt
ist, unter einer Mobiltelefonnummer verfügbar ist. Sie könnte auch
Zeiten terminieren, wann sie unter einer Heimatnummer oder auswärtigen Nummern
oder auch in Hotels verfügbar
ist.
- b) Die Partei könnte
einen allgemeinen Computer erreichen, welcher einen Web-Browser
aufweist, und unter Verwendung eines Zugangscodes allgemeine Internetseiten
benutzen, die entweder mit zentralen oder Proxy-Servern oder deren
Client verbunden sind, um ihren Status und ihren Zeitplan und ihre
Telefonnummer zu verändern
und zu aktualisieren. Ein „Applet" könnte ihr
bei Verwendung des Java-Systems gut einen Großteil der Schnittstelle zur
Verfügung
stellen, die sie gewöhnt
ist, auch an einem entfernten Computer.
- c) Die Partei könnte
sich in ihren eigenen Computer (wenn er das Telefon beantwortet)
oder einen zentralen Server einwählen.
Sobald sie eingewählt
ist, könnte
sie über
die Verwendung von Tastentönen
oder Spracherkennung Anweisungen geben, ihren Status und Ort für einige
oder alle anderen Parteien zu verändern. Wenn möglich, könnte sie
dies einfach tun durch Übermitteln
der Telefonnummer, wo sie sich befindet, über die Verwendung einer Anrufer-Kennung
oder einer automatischen Rufnummernerkennung (Automatic Number Identification,
ANI) an eine 0800-Nummer.
In diesem Fall würde
die Verfügbarkeit
ausgelöst,
kurz nachdem dieser Steueranruf aufgelegt worden ist.
-
Wenn
Gespräche
mit anderen Parteien vorgenommen werden, die sich an Computer befinden,
die ans Netzwerk angeschlossen sind, stellen die anderen Parteien
dem System Signale darüber
bereit, warm der Benutzer Gespräche
mit wem beginnt und beendet, damit diese an alle Systeme gesendet
werden, welche die Anrufe des Benutzers steuern. Wenn der Benutzer
ein Gespräch
mit einer anderen Partei hat, welche sich ebenfalls nicht an einem
Computer befindet, der ans Netzwerk angeschlossen ist, muß dem System
entweder mit einem anderen Anruf mitgeteilt werden, daß dieses
Gespräch
beendet ist, oder das System muß dies
einfach abschätzen.
Unter solchen Umständen
weist die Verwendung eines zentralen Servers, welcher beide Parteien
anruft und diese verbindet, Vorteile auf.
-
Wenn
ein Benutzer sich einwählt,
um mit Tastentönen
seinen Status zu aktualisieren, kann es auch sein, daß er über Computersprache
seine schwebenden Anrufe und Prioritäten abhören kann und steuern kann,
in welcher Reihenfolge sie durchgeführt werden. Es besteht die
Hoffnung, daß eines
Tages insbesondere Mobiltelefone eine systemeigene Unterstützung für die Anrufvermittlung
unter Verwendung der vorliegenden Erfindung bereitstellen werden.
-
Nichtbenutzer (Nichtmitglieder):
-
Es
ist auch erforderlich, daß Telefongespräche zwischen
Benutzern („Mitgliedern") des Systems und Nichtbenutzern
stattfinden. Obwohl Nichtbenutzer ermutigt werden, dem System beizutreten und
die notwendige Software laufen zu lassen, ist dies keine Notwendigkeit.
Nichtbenutzer können
auf verschiedene Weisen teilhaben, u.a.:
- a)
Der Nichtbenutzer kann zu einem vorübergehenden Nutzer werden,
indem er eine Internetseite besucht und Gespräche mit „Mitglieds"-Benutzern anfordert. Die Internetseite
weist Schaltflächen
für das
Nichtmitglied auf, um seinen Verfügbarkeitsstatus anzuzeigen.
Diese Internetseite kann, wenn sie auf dem Bildschirm verbleibt,
für diesen
Zweck verwendet werden, wobei sie sich unter Verwendung automatischer
Mechanismen alle wenige Minuten aktualisiert.
- b) Der Nichtbenutzer kann auf einer Internetseite, die ein System
wie Java verwendet, ein „Applet" herunterladen und
ablaufen lassen. Dieses Applet kann fast alle Funktionen des regulären Clients
durchführen, obwohl
es keinen Zugang zu Maschineninformationen wie Tastaturstillstandszeiten
hat, um die Verfügbarkeit
des Nichtmitglieds zu bestimmen.
Benutzer, die mit diesem Kontrollniveau
zufrieden sind, könnten
durch solch ein Applet oder eine vollständige Java-Anwendung tatsächlich Mitglieder
werden.
- c) Bei Nichtmitgliedern, die Mitglieder auf die herkömmliche
Weise anrufen, kann deren Anruf sofort durch den Client des Mitglieds
unterbrochen werden. Dieser Client könnte Anrufe entweder durchleiten,
wenn der Benutzer verfügbar
ist und keinen schwebenden Anruf aufweist, oder er könnte den
Anruf unterbrechen und einen halbtraditionellen „Sprachnachrichts"-Dienst durchführen, um
dem Anrufer zu ermöglichen,
eine Mitteilung zu hinterlassen. Diese Grußmitteilung weist möglicherweise
den Anrufer ein, wie das System als Nichtmitglied oder Mitglied
zu benutzen ist, indem der Anrufer auf eine Internetseite mit solchen
Informationen geleitet wird.
-
Das
System könnte
auch Tastentöne
oder Sprachbefehle von dem Benutzer akzeptieren, um dem Benutzer
zu ermöglichen,
eine Telefonnummer oder einen Namen einzugeben. Anrufer-Kennung
oder ANI könnten
auch verwendet werden, um diese Informationen zu entnehmen. Ein
Anruf könnte
dann in dem System in die Warteschlange gesetzt werden, wobei das
Mitglied aufgefordert wird, das Nichtmitglied anzurufen, wenn das
Mitglied verfügbar
wird. Es ist auch möglich,
daß das
Nichtmitglied unter Verwendung solcher Eingaben Verfügbarkeitszeiten
spezifizieren könnte,
obwohl die Schnittstelle hierfür
für ein
ungeübtes
Nichtmitglied komplex wäre.
(„Geben
Sie die Anzahl der Minuten ein, wie lange Sie unter dieser Nummer
verfügbar
sind, gefolgt vom Pfundzeichen.")
Natürlich
könnte
der Anrufer, wie angemerkt, einfach eine Mitteilung hinterlassen, auf welche
das Mitglied entweder über
eine Schnittstelle im Sprachnachrichts-Stil oder idealerweise über den Computer,
der seinen Client verwendet, zugreifen könnte.
- d)
Die Bediener des zentralen Servers könnten auch Telefonnummern (0800-Nummer
oder andere) für Nichtmitglieder
zur Verwendung beim Anrufen des Mitglieds anbieten. Diese Nummern
könnten
das Leiten von Anrufen zu dem Mitglied, wenn das Mitglied verfügbar ist,
oder spezielle Sprachnachrichtsfunktionen wie oben umfassen. In
diesen Fällen
sind offensichtlich, wenn das Nichtmitglied sich nicht an einem
Computer befindet, die Informationen darüber, wann das Nichtmitglied
verfügbar
ist oder nicht, begrenzt. Das System kann dazu gezwungen sein, mit
Abschätzungen
zu arbeiten. Wenn jedoch falsche Abschätzungen vorgenommen werden
und Anrufe aufgrund von Besetztsignalen oder Nichtbeantworten fehlschlagen, kann
ein Mitglied das Fehlschlagen aufzeichnen, um die Abschätzung der
Verfügbarkeit
des Nichtmitglieds zu verbessern.
-
Zusammenfassend
ermöglichen
die beschriebenen Ausführungsformen
der Erfindung der Anmelder den Benutzern, RTMs, z.B., aber nicht
darauf beschränkt,
Telefonanrufe und Treffen, mit einem Mindestmaß an vergeudeter Zeit und Aufwand
effizient zu arrangieren. Die hierin beschriebenen Ausführungsformen
werden nur als Beispiele angeführt,
wobei der Umfang der Erfindung durch die folgenden Patentansprüche dargestellt
wird.