Die vorliegende Erfindung betrifft die Verwaltung von netzwerkbasierten
Konferenzsystemen und findet insbesondere Anwendung in Audiokonferenzen mit einer
Bildschirmoberflächen-Anwenderschnittstelle.
Wenngleich die Mehrzahl des Verkehrs auf Telefonbasis zwischen nur
zwei Teilnehmern stattfindet, besteht für öffentliche Telefonnetzschaltungen
seit vielen Jahren ein Technologiebedarf für eine Bereitstellung einer audiotechnischen
Zusammenkunft zwischen einer größeren Anzahl von Leuten. Es stehen den
Endnutzern von digitalen Vermittlungsstellen kommerzielle Dienste mit einer 3-Wege-Konferenzschaltung
zur Verfügung, sowie außerdem Dienste, die es zehn oder sogar hunderten
von Endnutzern ermöglichen, über ein Bedienelement mit einer Audiokonferenz
verbunden zu werden. Audiokonferenzschaltungen auf telefonischer Basis bieten derzeit
eine hohe Audioqualität für Gruppen von zehn oder mehr Teilnehmern, wobei
sie außerdem billiger und weniger intrusiv als Videokonferenzschaltungen sind.
Entsprechende Schallschutzalgorithmen sind ein Hinweis dafür, dass die Tonqualität
zunehmend besser wird. Andererseits tendieren Audiokonferenzsysteme dazu, entweder
teuer oder aber schwer handhabbar zu sein, da sie entweder das Abspeichern von geheimen
Steuercodes für das Mehrfrequenzwahlverfahren (DTMF) benötigen, oder aber
da die Endnutzer die Konferenz erst über eine Vermittlungsstelle einrichten
lassen müssen.
Die Begriffe Telefonie oder Telekommunikation bedeuten in dem vorliegenden
Zusammenhang die An von Kommunikation, welche mithilfe eines Netzwerks auf Vermittlungsbasis
bereitgestellt werden kann, und welche in der Regel zwischen den verschiedenen Endgeräten
den Aufbau eines bestimmten Durchschaltewegs [Route] über ein Netzwerk erfordert,
somit eine Verbindung, die mithilfe eines einzurichtenden Verfahrens zustande kommt.
Die Kommunikation verfolgt für den Ablauf einer Kommunikationssitzung, wie
beispielsweise eines Telefongespräches, den gleichen Durchschalteweg über
das zwischen den Endgeräten befindliche Netzwerk. Die Verbindung wird schließlich
am Ende einer Kommunikationssitzung wieder abgebaut.
Dies erfolgt im Gegensatz zu einem Datennetzwerktyp, bei dem die Datenpakete
über das ganze Netzwerk verschiedene Durchschaltewege [Routen] nehmen und,
wodurch die Datenpakete in dem empfangenden Endgerät wieder in der richtigen
Reihenfolge zusammengesetzt werden müssen.
Telefon-/Audiokonferenz-Anwendungen auf Netzwerkbasis im Internet,
beginnen populär zu werden. Hiermit können sich Gruppen von Menschen irgendwo
auf der Welt miteinander unterhalten, wobei paketvermittelte Protokolle, wie beispielsweise
RPC-Protokolle (RPC = Remote Procedure Calls = Fernprozeduraufrufe) eingesetzt werden.
Diese Systemanwendungen ermöglichen, dass Konferenzen über eine grafische
Benutzeroberfläche relativ leicht eingerichtet und gesteuert werden können.
Diese Benutzeroberflächen-Schnittstelle kommuniziert mit einer Anwendung auf
Serverbasis, die steuert, welche Leute sich miteinander unterhalten können.
Anwender können Textmerkmale oder Bilder sehen, die sowohl sie selbst als auch
weitere Anwender darstellen, wobei sie den Vorteil der relativ intuitiven und leistungsstarken
Steuerungs- und Rückkopplungsfacetten einer grafischen Benutzeroberfläche
genießen können. Viele dieser Systeme verfolgen einen auf Basis von „Räumen"
bilddarstellenden Ausdruck [Metapher], in dem jede Konferenz in einem Raum stattfindet.
Anwender wandern von Raum zu Raum und nehmen dort an Konversationen teil, wo sie
hingehen.
Das Problem bei dieser Systemart besteht darin, dass die Sprachqualität
sowohl von der Verbindungsbandbreite zu jedem Benutzer abhängig ist, die nämlich
groß genug sein muss, als auch von der Gesamtleistung des Netzwerks, die über
einen vorgegebenen Grenzwert hinausgehen können muss. Dies macht es schwierig,
ein akzeptables Tonqualitätsniveau für jeden Endnutzer jederzeit zu gewährleisten.
Außerdem besteht ein Problem bezüglich eines Nachhallechos, das durch
Verzögerungen während der digitalen Kodierung der Sprache eines jeden
Benutzers verursacht wird; das heißt, dass die Benutzer deren eigene Stimme
hören, die nach einer Verzögerung an dem/n fernen Ende/n wiederholt wird,
es sei denn, alle Benutzer tragen Mikrofonkopfhörer. Schließlich versuchen
einige Service-Provider auch Dienste zu sperren, einzuschränken oder extra
zu berechnen, für die dann anspruchsvolle Protokolle, wie es beispielsweise
das RPC-Prokoll ist, zur Anwendung kommen.
Es gibt eine Reihe von audiografischen Standardnormen, die bereits
für die integrierte Telefonie in gemeinsam genutzten Computeranwendungen existieren.
Die namhaftesten dieser Standardnormen sind die ITU's T.120, H.320, H.323 und H.324
-Empfehlungsreihen, welche die Kommunikationsprotokolle entsprechend der audiografischen
Telekonferenzschaltung detaillieren können. Diese ermöglichen den Aufbau
von Diensten, welche die Telefonieintegration in Computeranwendungen beinhalten,
und welche Bestandteile einrichten, wie beispielsweise gemeinsam genutzte, virtuelle
Elektroniknotiztafeln [Whiteboards]. Die T.120-Standards basieren auf der Vorgabe,
dass ein Clientsystem eine Software ausführt, die Computer- und Telefonieanwendungen
miteinander integrieren kann. Der Nachteil bei diesen Systemen besteht darin, dass
jedes Clientsystem eine Software besitzen und diese so ausführen können
muss, dass sie mit den Standardprogrammen kompatibel ist. Die Systementwickler müssen
außerdem mit den API-Schnittstellen (API = Application Programming Interface
bzw. Programmierschnittstellen) vertraut sein, auf welchen das System aufgebaut
ist.
Das Integrationsproblem bei den Kommunikationsdiensten wird in dem
von Hewlett Packard Laboratories in Palo Alto/USA im Juni 1996 veröffentlichten,
technischen Bericht „The Internet Telephony Red Herring" von Colin Low auf
den Seiten 1–15 beschrieben. Im Besonderen erläutert diese Dokumentation
die Entwicklung von Systemen zum Bereitstellen einer Echtzeit-Sprachkommunikation
über das Internet.
Gemäß der vorliegenden Erfindung wird eine Verwaltungs-
und Steuereinheit für ein Konferenzsystem auf Netzwerkbasis zur Verfügung
gestellt, wobei die Einheit folgendes aufweist:
i) eine Schnittstelle zum Ausgeben von Steuersignalen an eine Plattform für
ein Einrichten von Audioverbindungen über ein Netzwerk zwischen verschiedenen
Endnutzern;
ii) eine Schnittstelle zum Empfangen von Steuersignalen von mindestens einer
Plattform zur Bereitstellung einer grafischen Benutzeroberflächen-Schnittstelle
für einen Endnutzer zum Anwenden der Steuerung in dem netzwerkbasierten Konferenzsystem;
und
iii) Zugriff auf eine Datenbank zur Aufrechterhaltung, einschließlich Aktualisierung,
von Verwaltungsdaten, die sich auf eine oder mehrere bestehende Konferenzen beziehen,
so dass die Verwaltungs- und Steuereinheit Steuersignale empfangen kann, die auf
der grafischen Benutzeroberfläche in Bezug auf eine Audiokonferenz von einem
Benutzer eingegeben worden sind, Ausgabe von Steuersignalen an eine Plattform zum
Einrichten von Audioverbindungen, wodurch eine Audiokonferenzverbindung zwischen
dem Benutzer und mindestens zwei weiteren Benutzern über das Netzwerk aufgebaut
wird, und Ausgabe von Verwaltungsdaten an die grafische Benutzeroberfläche
während einer bestehenden Konferenz zur Verwendung durch den Benutzer für
die Verwaltung der Konferenz.
Bevorzugt ist das Netzwerk ein Telekommunikationsnetzwerk, wobei die
Schnittstelle zum Empfangen von Steuersignalen eine Schnittstelle zu einem Datennetzwerk
ist, wie zum Beispiel zum Internet. Vorteilhafte Ausführungsformen gemäß
der vorliegenden Erfindung versetzen damit die Benutzer in die Lage, eine qualitativ
hoch entwickelte Audiokonferenz zu genießen, die sie unter Verwendung einer
Bildschirmoberflächen-Schnittstelle auf World-Wide-Web-Basis verwalten können.
Solche Ausführungsformen erlauben den Anwendern das Arbeiten mit weltumspannendem
Informationsmaterial auf Internetbasis, wobei Folgendes entfällt:
i) das Vorbereiten und Einrichten von Wählaufrufen über eine Fernsprechvermittlungsstelle,
ii) das Merken von DTMF – Steuerkodierungsbefehlen [MFV],
iii) das Investieren in eine neue Telefonie-Hardware, oder
iv) die Installation von speziellen Software-Programmen.
Die Verwaltungs- und Steuereinheit wird von einem Server unterstützt,
wie beispielsweise von einem Webserver, der mit dem Internet verbunden ist, während
die grafische Benutzeroberflächen-Schnittstelle mit einem Clientsystem [angeschlossene
LAN-Station] vorgesehen werden kann, das auch mit dem Internet verbunden ist. Die
Verwaltungs- und Steuereinheit kann damit ein leistungsstarkes und sehr vielseitiges
Instrument zum Bereitstellen einer Audiokonferenz bieten.
Audiokonferenzsysteme gemäß den vorliegenden Ausführungsformen
der vorliegenden Erfindung können die einfache Anwendung eines GUI-Bediensystem
(GUI = Graphical User Interface/Grafik-Benutzer-Oberfläche) kombinieren, während
außerdem die zuverlässige Sprachqualität, die mit einem Telefonnetz
verbunden ist, verwertet werden kann. Solche Systeme stellen für jeden Benutzer
ein Minimum an technischem oder erkenntnismäßigem Aufwand dar und wenden
vorteilhafterweise bereits vorhandene Protokolle an, wann immer dies möglich
ist.
Dieses System erlaubt jedem, der gleichzeitig einen Zugang zu einem
Internetanschluss (oder ähnlichem Anschluss) – um die grafische Benutzeroberfläche
bereitzustellen – sowie einen separat und direkt wählbaren Telefonleitungsanschluss
hat, qualitativ hoch entwickelte Audiokonferenzen einzurichten, zu steuern, aufzuzeichnen
und zu beenden.
Es ist von Vorteil, wenn eine Datenbank zur Anwendung kommt, um speziell
für jeden Benutzer aktualisierbare Informationen aufrechterhalten zu können.
Diese Informationen können beispielsweise Abbildungen über die in einer
Konferenz involvierten Endnutzer enthalten, so dass diese – bei Anwendung
des Systems – von jedem, der mit der Konferenz verbunden
ist, kommentierte Bilder sehen können.
Nicht nur, dass für die Benutzer keine Notwendigkeit gegeben
ist, sich die Steuerkodierungen zu merken, auch müssen sie keine Telefonnummern
der anderen Teilnehmer kennen. Auch können die Konferenzen nichtöffentlich
abgehalten werden, und Benutzer können ihre abgehende Telefonnummer ändern,
wenn sie von einem Standort zu einem andern gehen wollen.
Obgleich die Ausführungsformen gemäß der vorliegenden
Erfindung in Bezug auf das Internet beschrieben sind, können sie außerdem
nützlich sein, wenn sie anstelle des Internets mit anderen Netzwerken angeschlossen
sind. Zweifellos sind die Ausführungsformen gemäß der vorliegenden
Erfindung auch dann zutreffend, wenn der Benutzer mit einem weniger extensiven Netzwerk
als dem Internet bzw. mit einem firmeninternen „Intranet" verbunden ist.
Bevorzugte Ausführungsformen gemäß der vorliegenden
Erfindung demonstrieren eine enge Integration zwischen Software, die auf der Client-Station
läuft, dem WWW-Server, einer Audiokonferenz-Plattform und einer Datenbank.
Ausführungsformen der vorliegenden Erfindung lassen eine World-Wide-Webbasierte
Grafikbenutzeroberfläche (GUI) zum Steuern einer Audiokonferenz auf Telefonbasis
zu. Es wird an der Client-Station keine zusätzliche Software benötigt
und das System kann jedem Endnutzer mit einem TCP/IP-Protokollanschluss [TCP = Transmission
Control Protocol und IP = Internet Protocol] zum Internet und mit einer Telefonleitung
zur Verfügung gestellt werden.
Das Audiokonferenzsystem kann mit einem World-Wide-Web-Server einschließlich
seiner zugehörigen Datenbank mit einem Link verknüpft werden.
In bevorzugten Ausführungsformen kann das System die Spur mehrerer,
parallel stattfindender Konferenzen aufrechterhalten, wobei in jeder einzelnen mehrere
Endnutzer involviert sein können. Jedem Benutzer können die entsprechenden
Informationen detailliert angezeigt werden, wo sie sich im System gerade befinden,
und auch wo die anderen Teilnehmer gerade sind; diese Informationen können
immer dann aktualisiert werden, wenn Änderungen, die einen teilnehmenden Benutzer
betreffen, eintreten.
Jeder Benutzer kann Aspekte des Systems vorteilhaft steuern, für
die er zum Ändern privilegiert ist. Es ist von Vorteil, dass diese ohne ein
Konfliktverursachen ausgeführt werden können.
Schließlich ist das ganze System so konstruiert, dass die Gebühren
der Benutzer korrekt abgerechnet werden können, und dass es sicher vor betrügerischer
Nutzung ist.
Ein Audiokonferenzsystem gemäß einer Ausführungsform
der vorliegenden Erfindung wird nachstehend – aber nur anhand eines Ausführungsbeispiels
– mit Bezug auf die zugehörigen Figuren beschrieben, in denen:
1 ein Diagramm von der System-Plattform und die damit
verbundene Anordnung zeigt;
2 ein Schaltschema der serverbasierten Architektur
für das in 1 dargestellt System darstellt;
3 eine grafische Benutzeroberfläche für die
Anwendung auf einem Client-Browser in Bezug auf das System in 1
darstellt.
Die 4, 5,
6 und 7 zeigen die funktionalen
Aufgliederungen in den Objekten für die Nutzung während einer Anwendung,
die sich auf einem Server des in 1 dargestellten Systems
befinden.
Mit Bezug auf 1 besitzt jeder Endnutzer
einen Arbeitsplatz-Computer 100 mit einem IP-Internetanschluss
105 und einer Webbrowser-Anwendung, welche Hypertext Markup Language HTML
3.2 (oder eine neuere Webseiten-Sprache) zusammen mit Rahmen und entweder Javascript
oder JScript unterstützt. Man muss außerdem einen separaten Telefonanschluss
110 und ein Telefon 115 besitzen, mit dem man direkt wählen
kann. Die hierfür unterstützenden und möglichen Netzwerkkonfigurationen
umfassen den Einsatz von:
a) 2 PSTN – Telefonleitungen eines öffentlichen Selbstwählferndienstnetzes
(PSTN = Public Switched Telephone Network),
b) einem diensteintegrierenden, digitalen Fernmeldenetzanschluss mit zwei ISDN-Leitungen
(ISDN = Integrated Services Digital Network), wobei eine Leitung
als B-Kanal für Sprache und die andere für Daten verwendet wird, oder
c) die Kombination eines lokalen Netzwerkes (LAN = Local Area Network) mit einer
privaten Nebenstellenanlage (PBX = Private Branch Exchange).
Am Serveranschluss für das System befindet sich ein World-Wide-Web-Server
120, welcher mit Bezug auf eine Datenbank 125 HTML-Seiten auf
relationaler SQL-Basis (SQL = Structured Query Language = strukturierte Datenbank-Abfragesprache)
dynamisch erzeugen kann. Er kann außerdem Informationen in die Datenbank
125 schreiben.
Der WWW-Server 120 ist außerdem über einen RFC1006-Socket-Stufenanschluss
220 mit einer Acculab Millennium-CT-Plattform (RTM) 135 verbunden.
Dies ist eine computerorientierte Einrichtung, die von dem gleichen Patentanmelder
in den gleichzeitig anhängigen, britischen Patenanmeldungen 9619958.3, eingereicht
am 25. September 1996, sowie 9707712.7, eingereicht am 16. April 1997, beschrieben
ist, die eine Reihe von Leistungsmerkmalen aufweist, einschließlich des Leistungsmerkmals
Audiokonferenzen einzurichten, zu steuern und aufzuzeichnen.
Vor deren eigentlichem Produktstart wurde sie als Minor Applications
Platform bzw. als MAP-Plattform bekannt. Die Millennium-CT-Plattform ist zwischen
einem Telekommunikationsnetzwerk, wie beispielsweise dem öffentlichen PSTN-Selbstwählferndienstnetz,
und einem Datennetzwerk, wie beispielsweise dem Internet, verbunden. Sie nimmt eingehende
Dienste-Anforderungen via das PSTN über einen ISDN30-Anschluss 140
entgegen. Sie kann außerdem eingehende Dienste-Anforderungen auf anderen Wegen,
wie zum Beispiel über einen RFC1006-Socket-Stufenanschluss 220, wie
vorstehend erwähnt, annehmen. In so einem Fall wird das Protokoll auf beiden
Seiten des Socket-Stufen-Links implementiert. Die MAP-Plattform stellt außerdem
eine Verarbeitungskapazität zur Verfügung und kann auf eingehende Wählaufrufe
oder Nachrichten reagieren, indem eine entsprechende Rechneranwendung identifiziert
und gestartet wird, welche Ressourcen aufruft und verwaltet, um den angeforderten
Dienst auszuführen.
Die Millennium-CT-Plattform 135 ist mit Mitteln ausgestattet,
um zwischen Konferenzteilnehmern Audiobrücken in Form von digitalen Leitungsschnittstellenkarten
und für deren Steuerungen bereitzustellen. Hinzu kommt, dass die Millennium-CT-Plattform
sprachbezogene Ressourcen, wie zum Beispiel Aufzeichnungen und Mitteilungen, vorsieht.
Sie kann daher Medieneinrichtungen bereitstellen, welche für ein Kommunizieren
mit einem Endnutzer beim Einrichten der Konferenz und beim Aufzeichnen wichtig sind.
Als Alternative zur Millennium-CT-Plattform kann für Audiokonferenzsystemzwecke
auch jede andere Einrichtung, die Befehle über eine Netzwerkverbindung annehmen
und diese Befehle zum Generieren und zum Aufzeichnen von Audiokonferenzen anwenden
kann, eingesetzt werden. Es sei angemerkt, dass es zudem eine Reihe von äquivalenten
Anschlussleitungsprotokollen gibt, die als Ersatz für ISDN30 verwendet werden
können.
Server-Software-Architektur
Der Server 120 kann ein Arbeitsplatzrechner [Workstation]
mit einem WWW-Server und einer objektorientierten Entwicklungsumgebung sein, die
einen integrierten Datenbankzugriff bereitstellen können. Das in
2 dargestellte System sieht einen „WebRex" (TM)-WWW-Server
120, eine „Oracle" (TM)-Datenbank 125 und ein „NextStep"
(TM)-Betriebssystem sowie vier Objekte vor.
Mit Bezug auf 2 unterstützt der
Server 120 eine Anwendung, die vier Objekte einsetzt. Diese Objekte
200, 205, 210, 215 werden nachstehend näher
beschrieben. Die Funktionen in den einzelnen Objekten werden von den übrigen
Objekten namentlich abgerufen; das NeXTStep-Betriebssystem generiert automatisch
die Nachrichten, die zwischen den Objekten ausgetauscht worden sind, und zwar in
einer Weise, die den Fernprozeduraufrufen RPC (RPC = Remote Procedure Calls) ähnlich
sind.
Das Anwenderprogramm-Objekt 200
Diese Anwendung ist mit dem WWW-Server 120 verknüpft,
um einen Multiplikationssatz ablaufinvarianter, speicherresidenter Funktionen bereitzustellen.
Diese Funktionen werden in einer HTML-Anforderung vom Anwender abgerufen und ermöglichen
das Einrichten von Konferenzen und deren Verwaltung über Funktionen, die von
dem Millennium-CT-Schnittstellenobjekt 205 (bzw. MAP-Objekt) bereitgestellt
werden.
Das MAP-Objekt 205
Dieses Objekt empfängt Anforderungen von dem Anwenderprogramm-Objekt
200 und steuert die Millennium-CT-Plattform 135, indem es Befehle
versendet sowie Befehle und Rückmeldungen auf zuvor gesendete Nachrichten zyklisch
abruft [Polling]. In dem MAP-Objekt 205 und auf der Millennium-CT-Plattform
135 ist das RFC1006-Protokoll (welches über die TCP/IP-Protokolle
ausgeführt wird) implementiert, um für die Nachrichtenweiterleitung ein
zuverlässiges Peer-to-Peer-Protokoll zur Verfügung zu stellen.
Da es etwas Zeit beansprucht (einige Sekunden), eine Anforderung aus
dem Anwenderprogramm-Objekt zu verarbeiten, stellt das MAP-Objekt eine Anforderung
in eine Warteschleife des KONFERENZ-ANFORDERUNGS-Datenbank-Tabellenverzeichnisses
(die nachstehend unter „Die Datenbank" näher beschrieben ist). Eine
erste (HTML-) Rückmeldung wird an den Client zurückgesendet, womit angezeigt
wird, dass eine Anforderung gerade verarbeitet wird.
Das MAP-Objekt 205 ist als eine ereignisangetriebene Ablaufsteuereinheit
implementiert, da die Anforderungen in der Regel eine Reihe von Nachrichten erfordern,
die mit der Millennium-CT-Plattform ausgetauscht werden müssen. Der Betriebszustand
der Anforderungen wird in dem Datenbankverzeichnis-Eintrag KONFERENZ-ANFORDERUNGEN
(unter „Die Datenbank" nachstehend näher beschrieben) gespeichert. Das
MAP-Objekt 205 ruft in regelmäßigen Zyklen das Tabellenverzeichnis
KONFERENZ-ANFORDERUNGEN nach Anforderungen von Anwendern ab (zum Beispiel alle 5
Sekunden). Sobald eine Anforderung festgestellt wird, wird eine Befehlsfolge initiiert,
indem ein erster Befehl an die Millennium-CT-Plattform 135 gesendet wird.
Das MAP-Objekt 205 ruft daraufhin die Millennium-CT-Plattform
135 in regelmäßigen Intervallen (zum Beispiel jede Sekunde) nach
einer Antwort zyklisch ab. Sobald eine Antwort eingegangen ist, identifiziert das
MAP-Objekt, auf welche Konferenz sich die Antwort bezieht (in der Antwort aus einem
Datenfeld mit Konferenznummern). Es ermittelt dann den aktuellen Zustand der Anforderung,
die in dem KONFERENZ-ANFORDERUNGS-Verzeichnis gespeichert ist und gibt den nächsten
Befehl an die Millennium-CT-Plattform 135 aus.
Die Meldungen, die an die Millennium-CT-Plattform 135 gesendet
werden, sind wie folgt:
• Registrierung der Plattform (richtet eine TCP/IP-Verbindung ein)
• Konferenzregistrierung (eine Konferenz für die Millennium-CT-Plattform
wird registriert oder entregistriert)
• Wählaufruf (Anrufen einer bestimmten Telefonnummer)
• Zusammenführung aller Teilnehmer (Zusammenfassen der Wählaufrufe
in eine Audiokonferenz)
• Verbindungsabbau (Entfernen der Anrufer aus der Konferenz)
• Aufnahmestart (Starten des Aufzeichnens der Konferenz)
• Aufnahmestopp (Stoppen des Aufzeichnens der Konferenz)
• Aufnahmelöschung (Löschen der Aufzeichnung)
• Aufnahmespeicherung (Speichern der Aufzeichnung in eine Datei)
• Wiedergabestart (Wiedergeben der Aufzeichnung von Anfang an = Playback)
• Wiedergabestopp (Stoppen des Wiedergabevorgangs bzw. des Playback-Vorgangs)
wobei die Befehle, die von der Millennium-CT-Plattform 135 zurückkommen
können, folgende sind:
• Verbindungsabbau (Abbau von Verbindungen mit fernen Teilnehmern)
• Aufnahmestopp (Stoppen des Aufzeichnens der Konferenz [die Ressourcen
gehen zu Ende])
Das Datenbankschnittstellen-Objekt 210
Dieses Objekt wird nun der Einfachheit halber als Datenbankobjekt
210 bezeichnet. Es stellt Funktionen für eine Nutzung seitens der
Anwenderprogramm- und MAP-Objekte 200, 205 zur Verfügung.
Diese Funktionen speichern und rufen Informationen über die Personen ab, die
in einer Oracle-Datenbank 125 das System und die Audiokonferenzen gerade
nutzen. Diese Funktionen verwenden die integrierte und strukturierte Datenbank-Abfragesprache
SQL.
Das Heartbeat-Objekt 215
Dieses Objekt meldet die Benutzer ab (Ausloggen), wenn es davon ausgeht,
dass der Anwender sein Treffpunktfenster geschlossen und das System verlassen hat.
Dieser Vorgang ist nachstehend unter „Der Heartbeat-Prozess" näher beschrieben.
Millennium-CT- Anwendung
Um das Einrichten und Verwalten einer Konferenz vom Server aus implementieren
zu können, ist in der Millennium-CT-Plattform 135
eine Anwendung vorgesehen, die Befehle vom MAP-Objekt 205 empfangen kann
und darauf antwortet, indem sie die erforderlichen Funktionen bereitstellt. Diese
Funktionen beinhalten zum Beispiel das Ausbauen von Audiobrücken zwischen den
Konferenzteilnehmern, das Senden der Sprachnachrichten, wie beispielsweise „Bitte
warten", sowie das Aufzeichnen und Speichern des Audiotons für einen späteren
Zugriff. Die Form eines solchen Anwenderprogramms ist selbstverständlich zum
Empfangen und Antworten auf Nachrichten ausgelegt, die vorstehend unter dem Thema
„Millennium-CT-Objekt 205" angeführt sind, wodurch auch die
Funktionalität der Millennium-CT-Anwendung bestimmt wird. Dieses Anwenderprogramm
ist mit dem Betriebssystem der Millennium-CT-Plattform 135 kompatibel,
das beispielsweise ein UNIX-, aber auch ein anderes Betriebssystem sein kann.
Die Datenbank
Die Datenbank 125 kommt zum Einsatz, um Informationen über
diejenigen, die das System nutzen, sowie über die Audiokonferenzen zu speichern.
Jede beliebige relational bzw. objektorientiert operierende Datenbank erfüllt
diesen Zweck, obgleich das vorliegend beschriebene System eine Oracle-Datenbank
einsetzt, auf die unter Anwendung der einfachen und strukturierten Datenbank-Abfragesprache
SQL zugegriffen wird. Diese Abfragesprache wird durch die Funktionen in den Anwenderprogramm-
und Datenbank-Objekten 200, 210 aufgerufen. Oracle-Sequenzen kommen
dann zur Anwendung, um eindeutige Konferenzrufnummern zu generieren.
Die Tabellenverzeichnisse, welche in der Oracle-Datenbank zum Einsatz
kommen, sind wie folgt:
Einloggen ins System
Die Datenbank 125 speichert Informationen, die Namen, Telefonnummer
und Bild eines jeden einzelnen Teilnehmers enthalten, der in diesem System registriert
ist. Ein registrierter Benutzer loggt sich ins System ein, indem er seinen Browser
100 startet und dann für das URL-Zugriffssystem eine Anforderung an
den Server 120 übermittelt.
Mit Bezug auf 3 verwendet der Browser
100 des Benutzers den "Open Window" Javascript-Befehl, um sowohl ein Hauptfenster
als auch ein kleineres, sekundäres Fenster 300 zu öffnen, welches
den „Treffpunkt-Konferenz-Standort" darstellt. Außerdem wird das Online-Statusfeld
in dem Verzeichnis „PERSONEN-INHALT" in der Datenbank 125 auf den
Wert 1 gesetzt, um anzuzeigen, dass man eingeloggt ist, wonach der „Heartbeat"-Prozess
eingeleitet werden soll (siehe nachstehenden Absatz „Der Heartbeat-Prozess"),
wozu für diese Person das Heartbeat-Feld im Verzeichnis „PERSONEN-INHALT"
mit der aktuellen Zeit eingestellt wird, um den Heartbeat-Prozess zu initiieren.
Das Treffpunktfenster 300 besteht aus vier Rahmen. Eine Spalte
305 auf der linken Seite zeigt ein scrollbares Listenfeld (mit Bildlaufleiste)
von den Personen, die im System eingeloggt sind. Unterhalb von diesem Listenfeld
ist ein sehr schmaler Rahmen 310, der zum Steuern des Aktualisierungsprozesses
verwendet wird. In einer rechtsseitigen Spalte ist ein Hauptrahmen 315
enthalten, welcher nähere Einzelheiten entweder über eine Person oder
über eine Konferenz bereitstellen kann. Unter diesem Hauptrahmen
315 befindet sich ein kleinerer Rahmen 320, der Bedienelemente
zum Aufzeichnen der Konferenz, zum Einstellen der Privatsphäre oder zur gemeinsamen
Nutzung der URL-Adressen aufweist.
Sobald sich ein Benutzer ins System eingeloggt hat, sieht er sowohl
die Namen aller anderen Benutzer, die zu diesem Zeitpunkt eingeloggt sind, als auch
eine Liste der aktuell stattfindenden Konferenzen und deren Teilnehmer in Form einer
scrollbaren Textliste. Das Anwenderprogramm-Objekt 200 führt diese
Textliste aus, indem es eine Auflistung von denjenigen Personen, die in der Datenbank
in den Verzeichnissen KONFERENZEN und KONFERENZ-PERSONEN enthalten sind, abruft.
Das Anwenderprogramm-Objekt erhält auch eine Auflistung von den Personen, die
eingeloggt sind, jedoch nicht an einer Konferenz teilnehmen, indem es überprüft,
wer einen Online-Status mit dem Wert 1 in dem Verzeichnis PERSONEN-INHALT besitzt.
Auch die anderen Teilnehmer können den Namen des neuen Benutzers
sehen, sobald deren jeweilige Treffpunktfenster 300 aktualisiert worden
sind. Wenn das System hochfährt, werden die Benutzer mit ihrem eigenen Bild
in Verbindung mit der Telefonnummer gezeigt, mit der das System für ihre Anwahl
aktuell programmiert ist. Es wird allen Audiokonferenzen, die gerade im System stattfinden,
ein zwei oder dreistelliger Ziffernidentifikator (Raum-Nummer) zugeordnet, sobald
sie eingeleitet werden, um die Benutzer informierend zu unterstützen, wo sie
einander treffen können (die Nummern werden aus einem zyklisch agierenden Bereich
von 01 bis 999 entnommen). Das Eintreffen eines neuen Benutzers online wird auf
einer temporären Sichtanzeige [einem Display] mit einem Indikator dargestellt,
wie beispielsweise mit einem Farbpunkt 335 neben dem Namen (oder den Namen)
desjenigen/derjenigen, der/die neu hinzugekommen ist/sind (siehe nachstehend „Butler-Prozess")
sowie aufgrund der Aktualisierung des Treffpunktfenster-Monitors eines jeden Benutzers.
(In 3 wird der Name „Andrew" zweimal aufgezeigt.
Dies sind jedoch zwei verschiedene Personen.)
Treffpunktfenster-Benutzeroberfläche
Die Treffpunkt-Benutzeroberflächen-Schnittstelle erscheint als
ein Fenster 300, das auf dem Arbeitsplatz-Computer 100 durch den
Webbrowser eines Benutzers generiert worden ist. 3
zeigt einen Kontaktpunkt, wobei ein Benutzer (Philip) im Login-Rahmen
305 gerade den „Raum 17"-Link angeklickt hat. Dies bewirkt, dass
das System Bilder von Andrew und Debra zeigt, die sich gerade in diesem Raum unterhalten,
indem das System auf die Verzeichnisse in der Datenbank 125 zugreift. Außerdem
zeigt ein Anwendungssymbol [Icon] 325 in dem räumlichen Rahmen
315 zeigt an, dass diese Konferenz gerade aufgezeichnet wird. Ein weiterer
Benutzer, auch mit Namen „Andrew", hat sich gerade ins System eingeloggt,
so dass der Butler-Prozess einen Indikator 335 neben seinem Namen anzeigt.
Ein Auswählen der mit „Eintritt Raum 17" beschrifteten Schaltfläche
veranlasst das System, die Nummer von Philip abzurufen und ihn zur Konferenz hinzuzufügen.
Starten einer Konferenz mit jemanden, der in das System eingeloggt ist
Um etwas über einen anderen Benutzer herauszufinden, der aktuell
verbunden ist, klickt der Benutzer auf den Namen der betreffenden Person. Es wird
dann ein Bild von der Person zusammen mit einem Vermerk über die Dialback-Nummer/Rückrufnummer
des nächstgelegenen Telefons gezeigt (siehe nachstehend „Telefonnummern-Zuordnung
und Telefonnummern-Mobilität"). Es gibt außerdem eine Schaltfläche,
welche dem Benutzer (von da an als „Konferenz-Urheber" bezeichnet) die Möglichkeit
gibt, eine Konferenz einzurichten. Sobald die entsprechende Schaltfläche gedrückt
worden ist, wird die Anforderung zum Einrichten einer Konferenz zum Server
120 gesendet.
Der Server 120 gibt diese Anforderung in das Verzeichnis
KONFERENZ-ANFORDERUNG. Das MAP-Objekt 205 ruft infolgedessen die Anforderung
aus dem Tabellenverzeichnis ab, generiert neue Einträge in
den Verzeichnissen KONFERENZEN sowie KONFERENZ-PERSONEN und instruiert die Millennium-CT-Plattform
135 – unter Anwendung der nachfolgenden Steuerbefehle – die
Konferenz einzurichten:
• Konferenzregistrierung (Registrieren einer Konferenz in der Millennium-CT-Plattform)
• Wählaufruf (zum Konferenz-Urheber)
• Wählaufruf (zu einer weiteren Person)
• Zusammenfassung aller Teilnehmer (Zusammenführen der Wählaufrufe
in eine Audiokonferenz)
Wenn der Konferenz-Urheber auf den Wählaufruf geantwortet hat,
wird eine Meldung mit der Information eingespielt, dass eine Audiokonferenz eingerichtet
wird und man warten soll. Wenn die weitere, angerufene Personen antwortet, wird
auch hier eine Meldung mit der Information ausgegeben, dass eine Konferenz eingerichtet
werden soll.
Sobald beide Teilnehmerparteien geantwortet haben, werden die vom
System generierten Anrufe in einer Audiokonferenz auf Telefonbasis miteinander verbunden,
und beide Einträge werden in dem Verzeichnis PERSONEN-INHALT mit der Konferenznummer
aktualisiert. Das MAP-Objekt 205 aktualisiert das Statusfeld (um damit
die erfolgreiche Vermittlung anzuzeigen) im Verzeichnis KONFERENZ-ANFORDERUNGEN
in der Datenbank 125.
Während die Konferenz gerade eingerichtet wird, wird dem Konferenz-Urheber
ein Bildschirm mit zyklischen Umlaufpunkten (die durch eine Animationsgrafik im
GIF-Format erzeugt werden) gezeigt, und es wird gebeten zu warten. In der Zwischenzeit
wird ein kleinerer, sekundärer Rahmen unter Anwendung eines Client-Stapelspeicher-HTML-Ausbaus
neu geladen (zum Beispiel alle 5 Sekunden). Wenn der Server eine Anforderung zur
Neuladung erhält, inspiziert er den Status im Verzeichnis KONFERENZ-ANFORDERUNGEN.
Falls der Status anzeigt, dass die Konferenz bereits eingerichtet worden ist, kehrt
der Server zum zu aktualisierenden Rahmen mit dem HTML-Aufbau zurück, was bewirkt,
dass das ganze Layout/Anordnung des Fensters neu geladen wird. Dieser Mechanismus
aktualisiert somit die Treffpunktfenster 300 der beiden Personen, um ihnen
anzuzeigen, dass sie nun in einer Konferenz verbunden sind, und löscht deren
Anforderung aus dem Verzeichnis KONFERENZ-ANFORDERUNGEN. Bei allen anderen Personen,
die mit dem System bereits verbunden sind, werden die Treffpunktfenster auch aktualisiert,
um anzuzeigen, dass die Konferenz weiterläuft. Dies wird durch ein Aktualisieren
eines „Blindmuster"-Personeneintrags im Verzeichnis PERSONEN-INHALT mit der
aktuellen Zeit erzielt, um damit anzudeuten, dass die Sichtanzeigen zu aktualisieren
sind (weitere Einzelheiten siehe nachstehenden Absatz „Der Aktualisierungsprozess")
Telefonnummern-Zuordnung und Telefonnummern-Mobilität
In Umgebungen, wie zum Beispiel in Schulen, möchten die Benutzer
des Systems vielleicht in irgendeinem beliebigen von den zahlreichen Terminals eingeloggt
bleiben. Um zu vermeiden, dass der Benutzer die Telefonnummer des nächstgelegenen
Telefons jedes Mal beim Einloggen selbst manuell zuordnen muss, wird diese Nummer
auf der Festplatte einer jeden Client-Geräteeinheit gespeichert. Dies kann
beispielsweise durch die Anwendung eines Systems, wie das als "Netscape Client-Side
Cookie" bekannte Programm ausgeführt werden. Dieses Cookie spezifiziert sowohl
die Telefonnummer für die Geräteeinheit als auch eine Suchwortfolge, welche
beschreibt, an welchem Speicherort sie sich befindet, wie zum Beispiel in „Andrews
Büro". Wenn ein Benutzer sich in das System einzuloggen beginnt, versucht eine
Javascript-Funktion, die sich im räumlichen Rahmen des Treffpunktfensters befindet,
jedes Cookie zu lesen, welches vom System bereits zuvor hinterlegt worden ist. Wenn
kein Cookie gefunden wird, oder wenn ein früher hinterlegtes Cookie abgelaufen
ist, informiert der räumliche Rahmen im Treffpunktfenster den Benutzer davon,
dass der Geräteeinheit, die gerade benutzt wird, keine Telefonnummer zugeordnet
werden kann. (Anmerkung: Cookies werden mit einer festgelegten Nutzungsdauer hinterlegt,
zum Beispiel für ein Jahr, und nachher sind sie abgelaufen.) Daraufhin gibt
der räumliche Rahmen eine Einladung an den Benutzer aus, eine Telefonnummer
auszuwählen, wobei er aus einem Kontext-Menü Telefonnummern selektieren
kann, die für diesen bestimmten Benutzer zugelassen sind. (Diese Seite wird
aus den Informationen im Verzeichnis ADRESSEN in der Datenbank dynamisch erzeugt).
Sobald aus dem Menü eine Nummer selektiert worden ist, wird ein
Cookie mit den Informationen geschrieben und der Rahmen wird neu geladen, um die
persönlichen Informationen des Benutzers mit der neuen Dialback-Nummer [Rückrufnummer]
zu zeigen.
Wenn während des anfänglichen Verbindungsaufbaus (Login)
das System entdeckt, dass früher schon ein Cookie hinterlegt worden ist, ordnet
es die Nummer dieses Cookies dem Benutzer für die Dauer der Konferenzsitzung
automatisch zu. Da die Cookie-Hinterlegungsaktitivität nur selten ausgeführt
werden muss, kann ein Systemadministrator alle Geräteeinheiten
hochfahren, die verwendet werden sollen und Cookies für jede Einheit hinterlegen.
Auf diese Weise muss der Endnutzer nie den vorstehend beschriebenen Prozess selbst
durchziehen.
Hie und da kann es notwendig sein, einen Computer von einem Standort
zum anderen zu befördern, oder eine andere Telefonleitung mit einem bestimmten
Computer zu verwenden. In diesen Fällen kann entweder ein Anwender oder ein
Systemadministrator ein „Telefonnummerneinstellungsformat" festlegen, welches
eine Javascriptkodierung enthält, die der vorstehend beschriebenen weitgehend
ähnelt. In diesem Fall muss die betreffende Seite manuell aufgerufen werden,
welche dann ein Hauptfenster des Browsers belegt. Sobald die Seite geladen worden
ist, wird das entsprechende Cookie gelesen, falls eines vorhanden ist, und daraufhin
werden die aktuelle Telefonnummer und der aktuelle Standort angezeigt. Diese Seite
enthält außerdem ein Kontextmenü mit gültigen Telefonnummern,
die aus der Datenbank zusammengestellt worden sind. Falls hiervon eine neue Telefonnummer
ausgewählt wird, wird das vorhandene Cookie mit den aktualisierten Informationen
überschrieben. Außerdem wird die Seite neu geladen, was durch die geänderte
Telefonnummer und durch den geänderten Standort verursacht wird und angezeigt
werden soll.
Hinzukommen zu einer bereits bestehenden Konferenz
Der Benutzer tritt in eine bereits bestehende Konferenz ein, indem
er einen Text-Link anklickt, der die Konferenznummer anzeigt. Man sieht daraufhin
die Liste der Teilnehmer in der betreffenden Konferenz. Dann gibt es eine Schaltfläche,
welche dem Benutzer die Möglichkeit gibt, in die Konferenz hinzuzukommen.
Der Server 120 gibt diese Anforderung in das Verzeichnis
KONFERENZ-ANFORDERUNGEN. Das MAP-Objekt 205 ruft infolgedessen die Anforderung
aus dem Tabellenverzeichnis ab, erzeugt einen neuen Eintrag im Verzeichnis KONFERENZ-PERSONEN
und instruiert die Millennium-CT-Plattform 135 – unter Anwendung
der nachfolgenden Steuerbefehle – die Konferenz einzurichten:
• Wählaufruf
• Zusammenfassung aller Teilnehmer
(Zusammenführen der Wählaufrufe in eine Audiokonferenz)
Dann startet das System, indem es an die neu hinzukommende Person
einen ausgehenden Anruf tätigt. Sobald die Person auf den Wählaufruf antwortet,
wird eine Meldung mit der Information eingespielt, dass sie der Konferenz hinzugefügt
wird. Während die Konferenz neu eingerichtet wird, wird dieser Person ein Bildschirm
mit zyklischen Umlaufpunkten gezeigt, und es wird gebeten zu warten. In der Zwischenzeit
wird ein kleiner, sekundärer Rahmen unter Anwendung des Client-Stapelspeicher-HTML-Aufbaus
neu geladen (zum Beispiel alle 5 Sekunden). Wenn der Server eine Anforderung zur
Neuladung erhält, inspiziert er den Status im Tabellenverzeichnis KONFERENZ-ANFORDERUNGEN.
Falls der Status anzeigt, dass die Konferenz bereits eingerichtet worden ist, kehrt
der Server zum mit dem HTML-Aufbau aktualisierten Rahmen zurück, was bewirkt,
dass das ganze Layout [die Anordnung] des Fensters neu geladen werden muss. Dieser
Mechanismus aktualisiert somit die Treffpunktfenster 300 der beiden Teilnehmerseiten,
um damit anzudeuten, dass sie in einer Konferenz verbunden sind, und löscht
die Anforderung aus dem Verzeichnis KONFERENZ-ANFORDERUNGEN. Nach einer kurzen Verzögerung
wird die neue Teilnehmerseite der Konferenz hinzugefügt, wobei die Anforderung
aus dem Verzeichnis KONFERENZ-ANFORDERUNGEN gelöscht wurde.
Auf das Eintreffen eines neuen Benutzers in einer Konferenz wird mit
einem kurzen Audioton hingewiesen und in der temporären Sichtanzeige mit einem
Indikator, zum Beispiel mit einem Farbpunkt 335 neben dem Namen eines jeden
Benutzers, der neu online hinzugekommen ist (siehe nachstehenden Abschnitt „Butler-Prozess"),
sowie aufgrund der Aktualisierung des Treffpunktfenster-Monitors 300 bei
allen Benutzern dargestellt. Jenen Teilnehmern, die sich bereits in dem betreffenden
Raum befinden, wird ein Bild von der Person gezeigt, die gerade hinzugekommen ist.
Wenn diese Teilnehmer ihren Maus-Cursor über dieses Bild bewegen, wird ihnen
der Name von dieser Person in der Statusleiste des Fensters angezeigt. Weitere Teilnehmer
können sich einer Konferenz solange anschließen, bis sie auf eine maximal
vom System zulässige Anzahl angestiegen sind (in der hierin beschriebenen Ausführungsform
sind dies 30 Personen). Jedes Mal, wenn mehr als acht Personen in der gleichen Konferenz
teilnehmen, ändert sich die Sichtanzeige, wobei nur noch die Namen der Teilnehmer
und nicht mehr deren Bilder gezeigt werden.
Einladen zu einer Konferenz
Benutzer, die bereits in einer eingerichteten Konferenz teilnehmen,
können sich überlegen, andere Personen, die im System eingeloggt sind,
einzuladen und daran teilzunehmen. Sie können dies tun, indem sie den
Namen von diesen Personen im Login-Rahmen anklicken (zu diesem Zeitpunkt werden
die Namen der Personen nur als aktivierte HTML-Links dargestellt, wobei sie sich
aber noch nicht in eine Konferenz eingeloggt haben. Sobald der Name einer Person
angeklickt worden ist, wird dem Benutzer im Kontrollrahmen eine Bestätigungsmeldung
angezeigt. Wenn nochmals bestätigt wird, dass man tatsächlich die Person
in die Konferenz einladen will, initiiert das System einen Wählruf an diese
Person, wobei versucht wird, sie der Konferenz hinzuzufügen.
Die Steuerbefehle an die Millennium-CT-Plattform sind dann für
diese Situationen die gleichen, wie wenn jemand zu einer Konferenz hinzukommt (siehe
vorstehenden Abschnitt „Eintreten in eine bereits bestehende Konferenz").
Sobald die Person auf den Telefonanruf antwortet, wird sie der Konferenz hinzugefügt,
wobei dann das Treffpunktfenster 300 bei allen Benutzern aktualisiert wird.
Entfernen einer Person aus einer Konferenz
Manchmal können diejenigen, die sich bereits in einer Konferenz
befinden, einen anderen Benutzer zur Teilnahme einladen wollen, doch in der Ausführungspraxis
werden eventuell nur Anrufbeantworter oder Voicemail der betreffenden Person erreicht.
Um diese Situation wieder aufzuheben, kann jeder von den übrigen Konferenzteilnehmern
den Verbindungswählaufruf zum Anrufbeantworter wieder abbauen. Sie führen
dies durch ein Anklicken des Namens der „Person" aus, die sie aus dem Login-Rahmen
entfernen möchten. Dies führt zu einem Bestätigungsdialog, der im
Kontrollrahmen angezeigt wird. Falls die Aktion bestätigt worden ist, löscht
das System den Anruf zum Anrufbeantworter und entfernt diese „Person" aus
der Konferenz. Die Konferenz wird mit den verbliebenen Teilnehmern ganz normal fortgesetzt.
Die Steuerbefehle an die Millennium-CT-Plattform 135 sind
für diese Situationen die gleichen, wie wenn jemand eine Konferenz verlässt
(siehe nachstehenden Absatz „Beenden einer Konferenz").
Beenden einer Konferenz
Sobald einmal eine Konferenz hergestellt ist, dauert sie an, solange
mehr als eine Person daran teilnimmt. Teilnehmer können jederzeit eine Konferenz
verlassen, indem sie eine Schaltfläche im Treffpunktfenster 300 drücken.
Wenn dies geschieht, wird an die Millennium-CT-Plattform 135 der Steuerbefehl
„Verbindungsabbau" gesendet, um den Wählaufruf zu löschen, was
bewirkt, dass die Millennium-CT-Plattform 135 die Telefonverbindung aufgibt.
Der Treffpunkt-Standort 300 wird daraufhin aktualisiert, um anzuzeigen,
dass die Person nicht mehr an der Konferenz teilnimmt. Dies wird durch die Aktualisierung
des Eintrags im Verzeichnis KONFERENZEN ausgeführt, um anzudeuten, dass die
Sichtanzeigen zu aktualisieren sind (siehe nachstehenden Absatz „Der Aktualisierungsprozess")
Die Millennium-CT-Plattform 135 trennt die Verbindung für
die letzte Person, wenn sich nur noch eine einzige Person in einer Konferenz befindet,
nachdem die vorletzte Person gegangen ist. Sobald die Verbindung der letzten Person
getrennt worden ist, sendet as MAP-Objekt den Steuerbefehl „Konferenzregistrierung"
an die Millennium-CT-Plattform 135, um damit die Konferenz zu entregistrieren.
Daraufhin wird das Treffpunktfenster 300 von allen Benutzern aktualisiert.
Ein alternativer Weg des Verlassens einer Konferenz besteht darin,
dass die Teilnehmer einfach ihren Telefonhörer auflegen. Bei der derzeitigen
ISDN-Implementierung im Vereinigten Königreich [UK] wird die Millennium-CT-Plattform
135 von der Telefonvermittlungsstelle nicht in Kenntnis gesetzt, dass eine
Person ihren Anruf schon zwei Minuten lang beendet hat. (Nach diesem Zeitraum sendet
die Telefonvermittlungsstelle an die Millennium-CT-Plattform eine „Verbindungsabbauende"-DASS2-Meldung).
Eine in Kürze bevorstehende Modifizierung im Telefonleitungsnetzwerk der British
Telecommunications plc. auf europäischen ISDN-Standard (ETSI) bedeutet, dass
dann die Millennium-CT-Plattform 135 auch in UK in der Lage ist, beendete
Wählaufrufe in Zukunft sofort zu erfassen.
Der Aktualisierungsprozess
Es ist erforderlich, das Treffpunktfenster 300 eines jeden
Benutzers, der mit dem System verbunden ist, immer wieder dann zu aktualisieren,
wenn ein signifikantes Ereignis eintritt. Bei diesen Ereignissen handelt es sich
um folgendes, wenn:
• ein Benutzer online geht oder sich ausloggt bzw. abmeldet (siehe nächsten
Abschnitt),
• ein Benutzer in eine Audiokonferenz eintritt oder diese verlässt,
• ein Benutzer eine URL-Adresse mit anderen gemeinsam nutzt (siehe hierzu
nachstehenden Absatz),
• ein Benutzer eine Aufzeichnung von einer Audiokonferenz startet oder
stoppt (siehe hierzu nachstehenden Absatz), oder
• wenn sich der Privatsphärenstatus der Konferenz ändert.
Wenn solch ein vorstehend erwähntes Ereignis eintritt, werden
der Zeitpunkt und das Datum, an dem das Ereignis eintritt, im Verzeichnis KONFERENZ-PERSONEN
(für die einzelner Benutzer) und im Verzeichnis KONFERENZEN (für die konferenzbetreffenden
Ereignisse) gespeichert.
Der Aktualisierungsprozess besteht darin, dass in dem kleinen Rahmen
310 im Treffpunktfenster 300 das Client-Stapelspeicher-HTML-Ausbauformat
zum Einsatz kommt. Dieses Fenster ist so eingestellt, dass es alle paar Sekunden
(beispielsweise alle 15 Sekunden) einem „Aktualisierungsprozess" unterzogen
wird. Wenn der Server 120 vom Aktualisierungsrahmen 310 eine Aktualisierungsanforderung
erhält, vergleicht er den Zeitpunkt und das Datum, wann er vom Aktualisierungsrahmen
310 für diesen Benutzer zuletzt eine Aktualisierungsanforderung erhalten
hat (dies wird als Heartbeat bezeichnet – siehe hierzu nachstehenden Abschnitt
„Der Heartbeat-Prozess") mit dem Zeitpunkt, an dem das Treffpunktfenster
zuletzt geändert worden ist. Falls sich die Informationen, die angezeigt werden
sollen, seit dem letzten Zeitpunkt geändert haben, dann wird eine neue Version
mit der aktualisierten Seite zurückgesendet. Dieser Vorgang umfasst eine Javascript-Funktion,
die vorschreibt, dass die anderen Rahmen des Treffpunktfensters 300 neu
geladen werden sollen, sobald sich der Aktualisierungsrahmen selbst neu aufgeladen
hat (wobei der Onload-Ereignisbehandlungsroutine-Abwickler zum Einsatz kommt). Der
Vorteil bei diesem Lösungsweg besteht darin, dass sich hierbei der Betriebsverkehr
des Servers, die Belastung für das Client-System und die visuelle Ablenkung
für den Benutzer nicht erhöhen, indem alle Rahmen neu geladen werden,
selbst wenn sich keine anwendbare Änderung für diesen Benutzer ergeben
hat. Auf der anderen Seite ist es hier auch nicht notwendig, dass der Server für
jeden Benutzer gleich viele Kanäle offen hält, so wie dies ein Protokoll,
zum Beispiel das „Serverstapelspeicher-Informationsprotokoll", erfordert.
Der Heartbeat-Prozess
Die Aktualisierungsanforderungen werden auch als „Heartbeat"-Funktion
benutzt, welche den Server wissen lasst, dass der Benutzer immer noch eingeloggt
(„lebendig") ist. Das Heartbeat-Objekt 215, das auf dem Server
120 ausgeführt wird, ruft die Datenbank in regelmäßigen
Zyklen ab (zum Beispiel alle 30 Sekunden). Falls der Wert des Heartbeat im Verzeichnis
PERSONEN-INHALT bezüglich dieses Benutzers länger als eine Minute alt
ist, nimmt das Heartbeat-Objekt 215 an, dass der Benutzer das Treffpunktfenster
300 geschlossen und das System verlassen hat. In solchen Fällen wird
der Benutzer abgemeldet, indem dessen Online-Statusfeld im Verzeichnis PERSONEN-INHALT
aktualisiert wird. Dieser Benutzer erscheint dann nicht mehr als online in den Treffpunktfenstern
der anderen Benutzer.
Gemeinsame URL-Nutzung
Wenn die Benutzer für eine Konferenz miteinander verbunden worden
sind, können sie zusammen eine gemeinsame URL-Adresse benutzen. Dies kann zum
Beispiel vorteilhaft sein, wenn eine Person möchte, dass die anderen Personen,
die sich auch gerade mit ihr unterhalten, die gleiche Webseite anschauen sollen,
die sie sich gerade ansieht. Um die URL-Adresse gemeinsam nutzen zu können,
muss ein Benutzer diese entweder manuell eintippen oder kopieren, wobei er die hierfür
relevante Suchwortfolge in ein HTML-erzeugtes Textfeld im Kontrollrahmen
320 des Treffpunktfensters 300 einfügt. Der Benutzer drückt
danach entweder die „Returneingabe"-Taste, oder er aktiviert eine gemeinsame
„URL-Nutzer"-Schaltfläche. Dies bewirkt, dass die URL-Adresse dem Benutzer
für den Rest der Konferenz zugewiesen bleibt, indem diese URL für diesen
Benutzer im Verzeichnis PERSONEN-INHALT gespeichert worden ist. Dies wird im Treffpunktfenster
300 aller Konferenzteilnehmer visuell angezeigt, wobei ein kleines Grafiksymbol
mit dem Wort „Link" unterhalb des Bildes 330 des sendenden Benutzers
dargestellt wird. Dies wird wiederum durch ein Aktualisieren des Eintrags im Verzeichnis
KONFERENZEN ausgeführt, um anzudeuten, dass die Sichtanzeigen [Displays] zu
aktualisieren sind (siehe vorstehenden Absatz „Der Aktualisierungsprozess").
Falls die betreffende Person im Laufe der gleichen Konferenz nachträglich
einen Link vorschlägt, dann ändert sich die Farbe der Link-Grafik, um
damit anzuzeigen, dass diese Person einen neuen Link spezifiziert hat (auch dieser
Link wird im Verzeichnis PERSONEN-INHALT gespeichert). Die weiteren Konferenzteilnehmer
können dann einen Grafik-Link anklicken, um in einem neuen Fenster ihres Browsers
die damit verbundene URL-Adresse geöffnet zu sehen.
Aufzeichnen einer Konferenz
Benutzer können wählen, ob sie eine Konferenz aufzeichnen
wollen, um sie später nochmals abspielen zu können. Das Treffpunktfenster
300 des Konferenz-Urhebers weist ein zusätzliches Icon 325
auf, mit dem man die Konferenz aufzeichnen kann. Falls der Konferenz-Urheber aus
der Konferenz aussteigt und die Unterhaltung den übrigen Teilnehmern überlässt,
dann wird dessen Aufzeichnungsbedienelement an denjenigen weitergeleitet, der in
der Konferenz als nächstes am längsten anwesend ist. Hinter diesem Lösungsweg
steckt die Idee, zum Starten und Stoppen einer Aufzeichnung konfliktbringende Anforderungen
zu vermeiden, die möglicherweise dadurch entstünden, wenn alle Benutzer
ein eigenes Aufzeichnungsbedienelement hätten.
Alternativ können aber auch alle Teilnehmer ein Icon erhalten,
womit sie in der Lage sind, die Konferenz aufzuzeichnen. Sobald eine Person die
Schaltfläche „Aufnahmestart" drückt, wird man aufgefordert, der
Aufzeichnung einen Dateinamen zu geben und diesen in ein Eingabefeld zu tippen.
(Die Aufzeichnung besitzt aber einen individuell systemgenerierten, eindeutigen
Namen, so dass der Benutzer für die Aufzeichnung nicht unbedingt einen neuen,
eindeutigen Namen vergeben muss). Der Benutzer vergibt nun aber einen neuen Aufzeichnungsdateinamen
und benutzt dazu eine Schaltfläche. Daraufhin ergeht eine Aufzeichnungsanforderung
in die Warteschleife des Servers 120 mit dem Abruf, dass die Konferenz
aufgezeichnet werden soll. Anschließend sendet das MAP-Objekt 205
an die Millennium-CT-Plattform 135 die Meldung „Aufnahmestart",
damit mit der Aufzeichnung der Konferenz begonnen wird. Während die Aufzeichnung
initiiert wird, wird der betreffenden Person ein Bildschirm mit zyklischen Umlaufpunkten
angezeigt, wobei gebeten wird zu warten. Sobald die Aufzeichnung gestartet ist,
wird die Anforderung im Verzeichnis KONFERENZ-ANFORDERUNGEN gelöscht. Die Benutzer
werden vom Aufnahmestart mit einem kurzen Audioton aufmerksam gemacht, und an die
Konferenz ergeht eine kurze Ansage. Die Aufzeichnungsschaltfläche im individuellen
Treffpunktfenster wird dann durch ein animiertes Icon „Aufzeichnung läuft"
ersetzt. (Diese Icon-Schaltfläche kann zum Stoppen der Aufzeichnung wieder
gedrückt werden.) Auch den anderen Benutzern wird ein animiertes Icon dargestellt,
das anzeigt, dass gerade eine Aufzeichnung stattfindet. Dies wird durch die Aktualisierung
des Eintrags im Verzeichnis KONFERENZEN ausgeführt, um damit darauf hinzuweisen,
dass die Sichtanzeigen zu aktualisieren sind (siehe vorstehenden Absatz „Der
Aktualisierungsprozess").
Falls der Konferenz-Urheber die Schaltfläche „Aufnahmestopp"
drückt, erscheint im Kontrollrahmen ein Bestätigungsdialog. Wenn der Benutzer
bestätigt, dass die Aufzeichnung gestoppt werden soll, sendet das System an
die Millennium-CT-Plattform 135 die Meldungen „Aufnahmestopp" und
„Aufnahmespeicherung". Sobald die Aufzeichnung gespeichert ist, wird das
animierte Aufzeichnungsicon von dem individuellen Treffpunktfenster 300
entfernt und durch die Schaltfläche „Aufnahmestart" wieder ersetzt.
Den anderen Benutzern wird nun auch ein Icon dargestellt, das anzeigt, dass momentan
keine Aufzeichnung mehr stattfindet. Dies wird durch die Aktualisierung des Eintrags
im Verzeichnis KONFERENZEN ausgeführt, um darauf hinzuweisen, dass die Sichtanzeigen
zu aktualisieren sind (siehe vorstehenden Absatz „Der Aktualisierungsprozess").
Nachfolgend können Ausschnitte der Konferenz, falls gewünscht, wieder
aufgezeichnet werden.
Das MAP-Object 205 stoppt eine Aufzeichnung automatisch,
wenn die letzte Person eine Konferenz verlassen, aber der Konferenz-Urheber das
Aufzeichnen nicht ausdrücklich gestoppt hat. Auch in dieser Situation wird
die Aufzeichnung gespeichert.
Die Millennium-CT-Plattform 135 speichert die Aufzeichnung
als eine verschlüsselte 64-Kbit/S-PCM-Sprachdatei. Die Datei wird anschließend
konvertiert und in den WWW-Server gegeben, wo sie von den einzelnen Konferenzteilnehmern
nochmals abgehört werden kann. Bevorzugt wird die Datei in ein „Real-Audio-3"-Format
konvertiert, womit langlebige Tondateien möglich sind, die angehört werden
können, ohne dass zuvor die ganze Datei auf den Computer des Teilnehmers heruntergeladen
werden muss.
Die Seiten des Systems können Links zu den Real-Audio-Dateien
enthalten, welche die früher aufgezeichneten Konversationen repräsentieren.
Da das System eine Datenbank zum dynamischen Ausbauen von HTML-Seiten verwendet,
ist es möglich, den Link zu der Tondatei mit einer kontextabhängigen Seite
bereitzustellen, die anzeigt, wann die Aufzeichnung stattgefunden hat, wer sie eingeleitet
hat, und wer beteiligt war. Dieser Vorgang wird ausgeführt, indem die betreffenden
Informationen in der Datenbank abgespeichert werden, wenn zuvor die Meldung „Aufnahmespeicherung"
an die Millennium-CT-Plattform 135 gesendet worden ist.
Ausführen einer personenbezogenen Aufzeichnung
Zusätzlich zum Aufzeichnen einer Konferenz ist es möglich,
das System zu nutzen, um nur die eigene Stimme aufzunehmen. Dieses
Leistungsmerkmal kann beispielsweise zum Aufzeichnen von Sprachnachrichten oder
für Ausspracheübungen verwendet werden. Immer wenn ein Benutzer online,
aber nicht in einer Konferenz ist, besteht die Wahlmöglichkeit, die Schaltfläche
„Aufzeichnen" in dem Kontrollrahmen des Treffpunktfensters anzuklicken. Wenn
man dies tut, wird man aufgefordert, der Aufzeichnung einen Dateinamen zu vergeben
und diesen in ein Eingabefeld zu tippen. (Die Aufzeichnung besitzt aber einen individuell
systemgenerierten, eindeutigen Namen, so dass die Aufzeichnung nicht unbedingt mit
einer neuen, eindeutigen Identifizierungskennung benannt werden muss). Sobald an
das System ein Dateiname vergeben worden ist, wird ein abgehender Wählaufruf
an die Nummer des Benutzers initiiert, und die Person wird in eine private (bzw.
„Einzelnutzer"-) Konferenz platziert, in der sie der einzige Teilnehmer ist.
Wenn die Konferenz aufgebaut wird, wird die Aufzeichnungsanforderung automatisch
in die Warteschleife des Servers gegeben. Das MAP-Objekt 205 sendet daraufhin
an die Millennium-CT-Plattform 135 die Meldung „Aufnahmestart",
um mit der Aufzeichnung der Sitzung zu beginnen. Kurz nach dem Starten der Sitzung
hört der Benutzer eine Ansage, um ihm mitzuteilen, dass die Aufzeichnung begonnen
hat. Auch dieser Einzelperson wird ein „aufzeichnendes" Animationsicon dargestellt.
Wenn der Benutzer die Aufzeichnung beenden will, kann er die animierte
Aufnahmeschaltfläche drücken, um damit die Aufzeichnung zu stoppen. Dieser
Vorgang wird durch das Senden der Meldung „Aufnahmestopp" an die Millennium-CT-Plattform
135 ausgeführt. In diesem Betriebsstadium wird eine Reihe von Icons
angezeigt, mit denen man die Aufzeichnung zurückspielen, löschen oder
speichern kann. Falls das Icon „Abspielen" gewählt wird, wird die Meldung
„Wiedergabestart" an die Millennium-CT-Plattform 135 gesendet und
die Aufzeichnung wird über die Telefonverbindung dem Benutzer von Anfang an
vorgespielt. Während dies geschieht, wird das Wiedergabe-Icon durch eine animierte
Version ersetzt. Wenn die Aufzeichnung das Wiedergabe-Ende erreicht, zieht sie eine
Programmschleife, um nochmals von Anfang an zu starten. Falls der Benutzer das animierte
Icon „Abspielen" selektiert, dann stoppt die Wiedergabe. Wenn der Benutzer
„Speichern" wählt, dann wird die Aufzeichnung in einem Real-Audio-Format
abgespeichert. Dieser Vorgang wird durch das Senden der Meldung „Aufnahmespeicherung"
an die Millennium-CT-Plattform 135 ausgeführt. Falls der Benutzer
die Aufzeichnung nicht behalten will, kann man das Icon „Löschen" wählen,
wobei die Aufzeichnung gelöscht wird, indem die Meldung „Aufnahmelöschung"
an die Millennium-CT-Plattform 135 gesendet wird. Wenn der Benutzer die
private Einzelsitzung verlässt, ohne dass er seine persönliche Aufzeichnung
abgespeichert hat, dann wird die Aufzeichnung automatisch gespeichert. Nachdem sich
der Benutzer zum Speichern oder Löschen einer Aufzeichnung entschieden hat,
kann er fortfahren, während der gleichen Sitzung noch mehrere Aufzeichnungen
vorzunehmen.
Privatsphäre
Das System zielt darauf ab, Benutzern die größtmögliche
Gelegenheit zu geben, zu erkennen, wer sonst noch im System eingeloggt ist, wobei
es gleichzeitig die betreffenden Personen vor einer unerwünschten Privatsphärenverletzung
schützen möchte. Dies geschieht, indem den einzelnen Personen ermöglicht
wird, ihren Status auf „Bitte nicht stören" einzustellen, und indem
der Konferenz-Urheber seinen Status als „Privat" einrichten lässt. Die
Statusanzeige „Bitte nicht stören" wird für den betreffenden Benutzer
im Verzeichnis PERSONEN-INHALT gespeichert, wogegen für diese Konferenz der
Statushinweis „Private Konferenz" im Verzeichnis KONFERENZEN gespeichert
wird. Falls eine Person sich selbst mit „Bitte nicht stören" registrieren
lässt, dann erfahren die anderen Konferenzteilnehmer diesen Status, wenn sie
das Bild der Person anklicken, denn sie sind dann nicht mehr in der Lage, mit dieser
Person in eine gemeinsame Konferenz zu kommen. Wenn eine Konferenz privat ist, dann
können andere Personen nicht mehr in diese hinzukommen, denn ihnen wird angezeigt,
dass die Konferenz privat ist, sobald sie nähere Einzelheiten erfahren möchten.
Die Funktionen sowohl „Bitte nicht stören" als auch „Privat"
werden mit Ein- und Ausschalt-Bedienelementen implementiert.
Eine weiterer Vorteil bezüglich einer Privatsphäre gemäß
den Ausführungsformen der vorliegenden Erfindung besteht darin, dass die Service-Abonnenten
ihre Telefonnummer nicht den anderen Benutzern preisgeben müssen, denn sie
wird in der Datenbank aufbewahrt und dort benutzt, um Wählaufrufe zu dem betreffenden
Benutzer zu tätigen, wobei sie aber für andere Personen nicht sichtbar
wird.
Die Ruhemodusfunktion
Eines der Probleme, das es bei jedem virtuellen Treffpunkt zu bewältigen
gilt, besteht darin, dass die Benutzer im System eingeloggt bleiben, obwohl sie
ihren Computer verlassen, um anderswo hinzugehen. Dies kann dazu führen, dass
andere Benutzer, die bei ihnen Konferenzen einzurichten versuchen, nur mit Anrufbeantwortern
konfrontiert werden. Dieses Problem kann, wie vorstehend unter dem Abschnitt „Entfernen
einer Person aus einer Konferenz" beschrieben, gelöst werden, indem dies eine
bevorzugte Methode ist. Jedoch eine andere Lösung bezüglich
dieses Problems besteht darin, in der Datenbank 125 einen Aufzeichnungsbericht
von allen Seitenladeanforderungen zu belassen, die von einem bestimmten Benutzer
getätigt werden (die zu den regulären Treffpunkt-Aktualisierungsanforderungen
anders geartet sind). Jedes Mal, wenn eine andersartige Anforderung eingeht, wird
ein Zähler neu gesetzt. Wenn der Zähler einen festgelegten Wert erreicht
hat (welcher angenommen 10 Minuten verstrichener „Ruhezeit" seitens des Benutzers
entspricht), wird der Benutzer als „schlafend" gekennzeichnet. Wenn in diesem
Stadium ein anderer Benutzer den Namen der „schlafenden" Person anklickt,
wird eine Seite im Hauptrahmen 315 des Treffpunktfensters 300
angezeigt und mitgeteilt, dass sich die andere Person gerade im Ruhemodus befindet.
In diesen Fällen können die Benutzer die Person manuell anwählen,
oder aber ihr eine E-Mail zusenden.
Das Treffpunktfenster 300 der Person, die als „schlafend"
gekennzeichnet ist, verändert sich durch die Ruhemodus-Information. Daraufhin
ist eine Schaltfläche mit der Aufschrift „Bitte wecken" zu sehen, die
gedrückt werden kann, um in der Datenbank des Systems den Benutzer-Ruhezustand
in einen „erwachten Zustand" zurückzuspeichern. Anschließend ist
die Person wieder in der Lage, Audiokonferenzen zu initiieren, oder in diese eingeladen
zu werden.
Handhabungsfehler und außergewöhnliche Betriebszustände
Fehlermeldungen werden dem Benutzer immer angezeigt, wenn während
einer Audiokonferenzanforderung (wie zum Beispiel beim Einrichten oder Verlassen
einer Konferenz) eine Störung eintritt. In der Regel kann es zu einer Störung
kommen, wenn die Millennium-CT-Plattform 135 nicht in der Lage ist, einen
Wählaufruf auszuführen, da die angerufene Teilnehmerseite entweder besetzt
ist, nicht antwortet oder die Telefonnummer nicht zur Verfügung steht (NU =
Nummer Unbeschaltet). In diesen Fällen zeigt die Millennium-CT-Plattform
135 den Grund für die Störung in der „Anrufausführungs-Rückmeldung"
an, die an das MAP-Objekt 205 zurückkonunt. Das MAP-Objekt
205 trägt dann den Status der Anforderung im Verzeichnis KONFERENZ-ANFORDERUNGEN
ein, um den Grund für die Störung anzuzeigen. Wenn der Server
120 von der Client-Station (jene, die momentan die zyklischen Umlaufpunkte
anzeigt) eine Anforderung zu einem neuen Laden erhält, inspiziert er den Status
im Verzeichnis KONFERENZ-ANFORDERUNGEN. Nachdem sich herausgestellt hat, dass der
Abruf nicht zustande gekommen ist, sendet der Server eine Fehlerseite an den Client
100 zurück, welche den Grund für die Störung beschreibt.
Daraufhin kann der Benutzer diese Seite lesen und durch ein Anklicken der Schaltfläche
„Weiter" zum Treffpunktfenster 300 zurückkehren. Falls er diese
Schaltfläche nicht betätigt, lädt die Fehlerseite automatisch nach
30 Sekunden das Treffpunktfenster 300 neu.
Gebührenabrechnung
Das System sieht die Möglichkeit vor, die Gebühren der Benutzer
auf Basis des Abonnementvertrages, des Nutzungsvertrages oder einer Kombination
hiervon zu fakturieren. Da sämtliche Audiokonferenz-Telefonanrufe von der Millennium-CT-Plattform
135 aus ausgeführt werden, kann den Benutzern ein Spezialtarif für
die exklusive Nutzung von Anrufen zu anderen registrierten Nutzern angeboten werden.
Die Gebührenstruktur für sonstige, gewöhnliche Anrufe, die der Verbraucher
tätigt, muss nicht neu angepasst werden.
Die Datenbank speichert einen Wertebereich von zulässigen Rückrufnummern
[Dialbacks] für jeden Benutzer. Dies stellt die Möglichkeit zur Verfügung,
dass Verbraucher den Service von mehr als einem Standort aus nutzen können.
Da die Benutzer daran gehindert werden, dass sie ihre eigenen Dialback-Nummern eingeben
können – da sie dazu von einem Systemadministrator autorisiert werden
müssten – wird das Potenzial, das System betrügerisch zu nutzen,
um günstige Telefonanrufe zu beliebigen Zielen zu tätigen, ausgeschlossen.
Die Datenbank zeichnet den Namen eines jeden Benutzers, der eine Audiokonferenz
initiiert, die Dauer der diesbezüglichen Audiokonferenz und die Namen der Personen,
die in der Konferenz teilnahmen in Verbindung mit der jeweiligen Zeitdauer, mit
der sie daran teilgenommen haben, auf. Diese Daten können verwendet werden,
um dem Konferenz-Urheber, den Teilnehmern, oder beiden Seiten auf Zeitbasis die
Gebühren zu berechnen. Alle diesbezüglichen Informationen werden in der
Datenbank 125 zusammen mit Zeit- und Datumsstempel gespeichert. Die Datenbank
125 zeichnet die Zeit und das Datum auf, an denen jeweils ein Benutzerkonto
erzeugt oder beendet worden ist. Diese Informationen können verwendet werden,
um eine Gebührenabrechnung auf Teilnehmer/Abonnementbasis vorzunehmen.
Der „Butler"-Prozess
Der Butler-Prozess soll Benutzer bewusst werden lassen, wenn eine
neue Person online hinzukommt, wie durch ein Abspielen eines Audiotons, wie zum
Beispiel eines Klingeltons etc. An diesem Kontaktpunkt wird außerdem ein Indikator
335 (z. B. ein Farbpunkt) neben den Namen der neu hinzugekommenen Benutzer
in dem Rahmen 305 dargestellt, wobei das Treffpunktfenster
vor die Vorderseite des Browsers gebracht wird. Der Indikator bleibt solange angezeigt,
bis eine neue Aktualisierung stattfindet bzw. 2 Minuten lang, was aber davon abhängt,
welcher Zeitabschnitt kürzer ist.
Für jeden Namen einer Person, der in dem „Login"-Rahmen
des Treffpunktfensters erscheint, wird in der Layoutcodierung für das Treffpunktfenster
eine „Benutzer-Registrier"-Javascript-Funktion aufgerufen. Diese Funktion
fügt den Namen des betreffenden Benutzers zu einem Datenfeld hinzu. Sie überprüft
außerdem ein „früheres" Datenfeld, welches eine Liste all jener
Benutzer enthält, die zuletzt anwesend waren, als der Login-Rahmen geladen
worden ist. Falls ein bestimmter Name in der aktuellen Liste auftaucht, aber nicht
in der früheren Liste enthalten ist, dann wird von einem neuen Namen ausgegangen,
wobei die Funktion für den Code im Login-Rahmen auf einen „wahren" Wert
[Ist-Wert] zurückgeführt wird. Dies soll bewirken, dass der Indikator
zusammen mit dem Namen eines jeden neuen Benutzers angezeigt wird. Sobald im Login-Rahmen
auf diese Weise alle Namen „registriert" sind, kommt für diesen Rahmen
die „Onload"-Ereignisbehandlungsroutine zum Einsatz, um in der Layout-Dokumentation
eine zweite „Butler"-Funktion abzurufen. Diese Funktion überprüft
ganz einfach, ob sich irgendwelche Elemente im „aktuellen" Datenfeld zu jenen
im „früheren" Datenfeld unterscheiden. Falls dies der Fall ist, dann
wird das Java-Applet-Programm im „Tools"-Software-Werkzeugrahmen des Treffpunktfensters
unter Anwendung des Live-Connect-Protokolls aufgerufen, das im Browser integriert
ist. Diese Applet-Funktion dient einfach dazu, für einen neu zugeordneten Namen
einen Audioton abzuspielen. Im vorliegenden Butler-Ausführungsbeispiel wird
in der Client-Station ein „Klingel"-Ton gespielt. Die Registrierbenutzerfunktion
inkrementiert jedes Mal, wenn sie aufgerufen wird, einen variablen Wert (beginnend
bei 0). Immer wenn dieser Wert weniger als 1 beträgt, fügt die Funktion
noch die Namen im aktuellen Datenfeld hinzu, zeigt aber keinen Indikator neben einem
„neuen" Namen an, wobei die Butler-Funktion auch keinen Klingelton erzeugt.
Dies soll zur Vermeidung von Namen dienen, die als „neu" erscheinen würden,
wenn das System gerade hochfährt.
Funktionsunterbrechung der systemunterstützenden Objekte
Bezugnehmend auf die vorstehend angeführte „Server-Software-Architektur"
unterstützen vier Objekte, die im Server 120 installiert sind, die
vorstehend beschriebene Funktionalität. Diese Funktionen sind die Anwendungen
der Millennium-CT-Plattform, Datenbank und Kernstück-Objekte 200,
205, 210, 215 [Heartbeat-Stationsobjekte]. Deren Funktionalität
wird gehandhabt, wie sie die verschiedenen Aspekten des erfindungsgemäßen
Systems beschrieben ist.
Mit Bezug auf 4 handhabt das Anwenderprogramm-Objekt
200 die Konferenzsteuerungen, die dem Benutzer über den Treffpunktfenster-Monitor
300 angeboten werden, folgendermaßen:
Mit Bezug auf 5 führt das Datenbank-Objekt
210 die Schnittstelle zur Datenbank 125 folgendermaßen aus:
1 Bereitstellen einer Konferenz
2 Empfangen der Konferenzanforderung
3 Einrichten der Konferenz-Personen
4 Aktualisieren der Konferenz
5 Entwickeln der Konferenzanforderung
6 Abrufen von Konferenz-Personen
7 Aktualisieren von Konferenz-Personen
8 Abrufen der Konferenz
9 Aktualisieren der Konferenzanforderung
10 Löschen von Konferenz-Personen
11 Löschen der Konferenzanforderung
12 Löschen der Konferenz
13 Aktualisieren von Personen-Inhalten
Mit Bezug auf 6 führt das MAP-Objekt
205 die Schnittstelle zur Millennium-CT-Plattform 135 folgendermaßen
aus:
1 Zyklisches Abrufen eines Verzeichnisses für Konferenzanforderungen
2 Starten der Konferenz
3 Einladen zur Konferenz
4 Zyklisches Abrufen der Millennium-CT-Plattform
4.1 Aufnahmestopp nach empfangener Rückmeldung
4.2 Konferenzregistrierung nach empfangener Rückmeldung
4.3 Aufnahmestart nach empfangener Rückmeldung
4.4 Löschen nach empfangenem Verbindungsabbau-Befehl
4.5 Zusammenführen aller Teilnehmer nach Empfang der Rückmeldungen
4.6 Wählaufruf-Löschung nach empfangener Rückmeldung
4.7 Wählaufruf nach empfangener Rückmeldung
4.8 Plattform-Registrierung nach empfangener Rückmeldung
5 Verlassen der Konferenz
6 Hinzukommen zur Konferenz
7 Starten der Aufzeichnung
8 Stoppen der Aufzeichnung
Mit Bezug auf 7 führt das Heartbeat-Objekt
215 einfach das Überwachen von einem Sektor in der Datenbank
125 sowie das entsprechende Ausloggen von Benutzern folgendermaßen
aus:
1 Zyklisches Abrufen der Datenbank
2 Abmeldung von Personen [Ausloggen]
Nutzungsmöglichkeiten des Systems
Das System ermöglicht Gruppen von Personen, sich miteinander
zu unterhalten und einen gemeinsamen Blick auf Informationen zu werfen, ohne dass
die Beteiligten sich eine komplexe Menge an Steuerungsbefehlen merken oder auf Seiten
des Client-Standorts in eine spezielle Softwareausrüstung investieren müssen.
Auch die Ausrüstung auf Serverseite ist nicht komplex und kann ganz einfach
beispielsweise als Bestandteil in einem kleinen Geschäftsbetrieb, in einer
Unternehmensabteilung oder in einem Bildungsinstitut installiert werden. Bei diesem
erfindungsgemäßen System geht es darum, eine gemeinsame Basis für
einen Konversations- und Informationsaustausch zur Verfügung zu stellen. Der
Inhalt der abzuhandelnden Konversationen und Informationen ist uneingeschränkt,
so dass hierfür eine große Vielfalt von Nutzungsmöglichkeiten gegeben
ist, wie zum Beispiel:
• Einsatzmöglichkeiten als Unterrichts- und Ausbildungsinstrument
– speziell zum Erlernen von Sprachen
• Nutzungsmöglichkeiten von Vertriebsteams zum besseren Fördern
und Stärken der Kundenkommunikation
• Nutzungsmöglichkeiten für Fanklubs, um sich über aktuelle
oder vergangene Ereignisse, wie beispielsweise Fußballspiele, zu unterhalten
• Anwendungsmöglichkeiten als Teil des Kundenbetreuungssystems für
ein Produkt oder eine Dienstleistung
• Nutzungsmöglichkeiten für eine soziale Treffpunkteinrichtung
• Nutzungsmöglichkeiten innerhalb eines Unternehmens als Unterstützungsweg
für die Zusammenarbeit von geografisch entfernten Firmengruppen
Das System kann entweder als eine klein skalierte Einrichtung eingesetzt
werden, die Audiokonferenz-Plattformen auf PC-Basis umfasst, wie beispielsweise
die Millennium-CT-Plattform 135, oder größer skalierte Dienstleistungsmerkmale
auf Plattformen bereitstellen, wie zum Beispiel die Plattform iSAP = integrierte
Sprachanwendungsplattform, die von British Telecommunications plc. entwickelt worden
ist. Beim Einsatz als Audiokonferenz-Plattform auf PC-Basis, wie zum Beispiel mit
der Millennium-CT-Plattform 135, ist die Gesamtgröße der Gruppen
auf jeder Plattform durch die Systemkapazität generell auf 60 Benutzer beschränkt,
obgleich Dienste über eine größere Anzahl der parallel laufenden
Plattformen verbreitet werden können. Auch auf der iSAP-Plattform
tendiert die maximale Größe einer einzelnen Gruppe auch zu 60 Personen
(die für jeden iSAP-Einsatz durch die festgelegte Kapazität begrenzt wird),
obgleich eine sehr viel größere Gesamtzahl in einer Benutzergruppe versorgt
werden könnte.
Ganz gleich, wie die Skalierung der Plattform aussieht, auf der die
Audiokonferenz stattfinden soll, können die Dienste in solch einer Weise implementiert
werden, dass mehr als eine separate Gruppe die gleiche Plattform (bzw. Reihen von
Plattformen) teilen können. Die Benutzer in Gruppe A sehen zum Beispiel nur
die Namen der anderen Benutzer in Gruppe A, aber nicht die Namen der Benutzer in
Gruppe B oder C. Diese Separatisierung kann ganz allein durch eine Partitionierung
von Gruppen in der Datenbank 125 ausgeführt werden.
Auch wenn das vorstehend beschriebene System auf standardisierten
PCs und Telefonen basiert, die separate Verbindungen für Sprache und Daten
verwenden, ist geplant, dieses Verfahren zu adaptierten, dass es auch auf jenen
Systemen gleichermaßen effektiv arbeiten kann, in denen beide Datentypen über
dieselbe Leitung gesendet werden. Dieses Verfahren enthielte Systeme auf Internetbasis.
Das vorliegend dargestellte Konzept kann auch für Systeme adaptiert werden,
in denen Mobiltelefonie zum Einsatz kommt, wobei diesbezügliche Telefone eingebaute
Webbrowser aufweisen müssen, oder eine Mikrofon-Kopfhörer-Garnitur [Headset]
verwenden, die dann über die Soundkarte eines PCs anstatt über ein separates
Telefon verbunden werden.
Obgleich die gute Audioqualität, die durch die Ausführungsformen
gemäß der vorliegenden Erfindung zur Verfügung gestellt wird, für
den Konferenzteilnehmer besonders attraktiv ist, kann es auch System-Anwendungen
geben, in denen überhaupt kein Mensch für eine Konferenz involviert wird.
Es können zum Beispiel Anwenderprogramme ausgeführt werden, in denen die
Audioqualität dennoch eine wichtige Funktion darstellt, aber für Präzisionszwecke
in der Aufzeichnung oder in der Kommunikation zwischen einer Aufzeichnung und einem
Gerät. Daher ist der in dieser Patentbeschreibung verwendete Begriff „Benutzer"
nicht allein auf einen menschlichen Nutzer einzuschränken.
Es ist zu erkennen, dass die Software und die computertechnischen
Möglichkeiten, die vorstehend beschrieben sind, auf verschiedenen Wegen in
den aufgabenspezifischen Plattformen verbreitet werden können und diese dabei
zu unterstützen. Wenngleich zum Beispiel die verwaltenden Möglichkeiten
für eine stattfindende Konferenz beschrieben worden sind, wie sie zu einer
Millennium-CT-Plattform überwiegend separat ausgeführt werden, können
für die Ausführungspraxis viele der (oder sogar alle) Möglichkeiten
in der Domän-Software der Millennium-CT- Plattform zur Verfügung gestellt
werden. In diesem Fall können die Konferenzverwaltungsmöglichkeiten als
Anwenderprogramme ausgeführt werden, welche die Millennium-CT selbst aktiviert.
Jedoch kann für viele Szenarien von Vorteil sein, dass die Konferenz-Software
von der Plattform aus zum Steuern eines Netzwerkes separat zur Verfügung steht.
Ein Benutzer eines kleinen Geschäftsumfeldes kann somit die Konferenzkapazitäten
bei relativ geringen Kosten installieren und einen Zugriff auf die Plattform, wie
beispielsweise die Millennium-CT, nur bei Bedarf vornehmen.
Anspruch[de]
Verwaltungs- und Steuereinheit für ein netzwerkbasiertes Audiokonferenzsystem,
wobei die Einheit aufweist:
i) eine Eingangs-Schnittstelle zu einem Datennetzwerk zum Empfang von Steuersignalen
von wenigstens einer Plattform zur Bereitstellung einer graphischen Benutzer-Schnittstelle
für einen Benutzer (100) zur Verwendung bei der Steuerung des netzwerkbasierten
Konferenzsystems;
ii) eine Ausgangs-Schnittstelle zum Ausgeben von Steuersignalen an eine Plattform
zum Aufbau von Audioverbindungen über ein Telekommunikations-Netzwerk (110)
zur Verwendung beim Aufbau von Audiokonferenz-Verbindungen zwischen Benutzern;
iii) eine Schnittstelle zur Bereitstellung von Zugriff zu einer Datenbank (125)
zur Aufrechterhaltung, einschließlich Aktualisierung, von Verwaltungsdaten,
die sich auf eine oder mehrere bestehende Konferenzen beziehen; und
iv) eine Steuereinrichtung (120), wobei die Steuereinrichtung im Gebrauch
so angeordnet ist, dass sie
a) auf ein Steuersignal antwortet, das an der Eingangs-Schnittstelle in Bezug auf
eine Konferenz empfangen wird, um ein oder mehrere Steuersignale auszugeben, um
eine Konferenzverbindung aufzubauen;
b) Verwaltungsdaten an die Datenbank (125) in Bezug auf eine oder mehrere
bestehende Konferenzen ausgibt; und
c) Verwaltungsdaten von der Datenbank an die graphische Benutzer-Schnittstelle (100)
während der einen oder der mehreren bestehenden Konferenzen zur Verwendung
durch einen Benutzer bei der Verwaltung der Konferenz ausgibt.Verwaltungs- und Steuereinheit nach Anspruch 1, die des Weiteren die
Plattform (135) zum Aufbau von Audioverbindungen aufweist.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
wobei die Einheit auf einem Server (120) bereitgestellt wird, der mit einem
Datennetzwerk (105) verbunden ist.Verwaltungs- und Steuereinheit nach Anspruch 3, wobei wenigstens eine
der Eingangs- und Ausgangs-Schnittstellen so ausgestaltet ist, dass sie ein Internetkompatibles
Kommunikationsprotokoll aufnimmt.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
wobei die Verwaltungsdaten eine Interpretationstabelle aufweisen zum Interpretieren
zwischen (a) Kennzeichen für bestimmte Benutzer, wobei die Kennzeichen von
einem Benutzer an einer graphischen Benutzer-Schnittstelle ausgewählt werden
können, und (b) Netzwerk-Stellen für diese bestimmten Benutzer in dem
Netzwerk, so dass ein Benutzer eine Konferenzverbindung mit einem anderen Benutzer
aufbauen kann, indem er das relevante Kennzeichen an Stelle einer Netzwerk-Stelle
auswählt.Verwaltungs- und Steuereinheit nach Anspruch 5, wobei die in der Datenbank
(125) bereitgehaltenen Verwaltungsdaten einen Satz von Netzwerk-Stellen
aufweisen, die einem Kennzeichen für einen einzigen Benutzer zugeordnet sind,
und wobei die Verwaltungs- und Steuereinheit eine Einrichtung aufweist zum Auswählen
einer der Netzwerk-Stellen im Ansprechen auf die Auswahl des Kennzeichens durch
einen Benutzer an einer graphischen Benutzer-Schnittstelle.Verwaltungs- und Steuereinheit nach einem der Ansprüche 5 und 6,
wobei die Einheit des Weiteren eine Autorisierungseinheit aufweist zum Autorisieren
einer Eingabe in die Verwaltungsdaten, die in der Datenbank (125) bereitgehalten
werden, wenn die Eingabe eine Netzwerk-Stelle aufweist.Verwaltungs- und Steuereinheit nach einem der Ansprüche 5, 6 und
7, wobei die Netzwerk-Stellen Telefonnummern (115) umfassen.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
wobei die von der Steuereinrichtung an die Datenbank ausgegebenen Verwaltungsdaten
eine Aufzeichnung der Zeit enthalten, die seit dem Empfang eines Eingangssignals
von einem Benutzer durch die Einheit verstrichen ist, und die, falls die verstrichene
Zeit einen vorgegebenen Grenzwert erreicht, eine Aktualisierung für ein Datenfeld
enthalten, das mit dem Benutzer assoziiert ist, um anzuzeigen, dass der Benutzer
den Status geändert hat.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
die des Weiteren eine Einrichtung zum Aufzeichnen einer Konferenz (135)
aufweist.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
wobei die an die Plattform zum Aufbau von Audioverbindungen ausgegebenen Steuersignale
des Weiteren eine Einzelperson-Konferenz aufbauen können.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
wobei die an die graphische Benutzer-Schnittstelle (100) ausgegebenen Verwaltungsdaten
Alarmdaten im Ansprechen auf das Hinzufügen eines Benutzers zu einer bestehenden
Konferenz aufweisen können, wobei die Alarmdaten die graphische Benutzer-Schnittstelle
veranlassen, eine generische Anzeige bereitzustellen, dass ein neuer Benutzer der
Konferenz beigetreten ist.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
die des Weiteren eine Einrichtung zur Ausgabe eines hörbaren Signals an einen
Benutzer (115) aufweist.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
die des Weiteren eine Einrichtung aufweist zur Ermittlung eines Kennzeichens für
eine Plattform zur Bereitstellung einer graphischen Benutzer-Schnittstelle für
einen Benutzer (100), bei Empfang eines Steuersignals von einer derartigen
Plattform, und zur Translation des Kennzeichens an eine Netzwerk-Stelle für
ein Telekommunikations-Endgerät, das mit der Plattform assoziiert ist, zur
Verwendung beim Aufbau einer Konferenzverbindung mit der Netzwerk-Stelle.Verwaltungs- und Steuereinheit nach einem der vorhergehenden Ansprüche,
die des Weiteren eine Einrichtung aufweist zum Ansprechen auf eine Aktualisierungsanfrage
von einer Plattform zur Bereitstellung einer graphischen Benutzer-Schnittstelle
für einen Benutzer (100) durch Überprüfung, ob eine Veränderung
der Daten erfolgt ist, die einen Bildschirm bestimmen, der an der graphischen Benutzer-Schnittstelle
angezeigt wird, und durch Senden von Aktualisierungsdaten nur in dem Fall, dass
eine derartige Veränderung stattgefunden hat.