-
ALLGEMEINER STAND DER TECHNIK
-
1. Technisches Gebiet
-
Die vorliegende Offenbarung betrifft im Allgemeinen Konferenzverbindungssitzungen und insbesondere die Migration von einer Ursprungskonferenzverbindungssitzung zu einer Ziel-Konferenzverbindungssitzung.
-
2. Einleitung
-
Eine Konferenzverbindung war ursprünglich ein wahlweises Merkmal eines Fernsprechsystems. Die Telefon-Konferenzverbindung erlaubte es mehreren Teilnehmern, sich einer einzigen Telefonkonferenz anzuschließen. In jüngerer Zeit haben Konferenzverbindungssitzungen Kombinationen von verschiedenen Arten von Medien, wie beispielsweise Audio, Video, Text und Rechnergraphik, eingeschlossen.
-
Gegenwärtig gibt es zahlreiche und vielfältige Rechner-Anwendungsprogramme für das Ansetzen einer Konferenzverbindungssitzung, das Erinnern von Teilnehmern an eine bevorstehende Konferenzverbindungssitzung, das Regeln des Zugangs von Teilnehmern zu der Konferenzverbindungssitzung und das Hinzufügen oder Entfernen von verschiedenen Medienströmen zu oder von der Konferenzverbindungssitzung. Die Rechner-Anwendungsprogramme reichen von ziemlich einfachen Kunden-Konferenzführungsprogrammen, die auf dem Smartphone oder dem tragbaren Rechner eines Teilnehmers liegen, bis zu ziemlich komplexen Programmen, die auf einem Server bei einer Internet-Site eines Konferenzverbindungsdienstanbieters liegen. Die internetfähigen Konferenzverbindungsdienste schließen den Online-Zusammenarbeitsdienst LOTUSLIVE ENGAGE der IBM Corporation, den Online-Zusammenarbeitsdienst GOTOMEETING der Citrix Systems Inc., den Online-Zusammenarbeitsdienst GOOGLE WAVE der Google Inc. und den Online-Zusammenarbeitsdienst WEBEX der Cisco Systems Inc. ein.
-
Die Ausbreitung von Konferenzverbindungsdienste mit vielfältigen Merkmalen und Komplexitätsniveaus hat Herausforderungen der Interoperabilität zwischen Geräten und Verwirrung unter den menschlichen Teilnehmern verursacht. Ein Versuch, diesem Problem zu begegnen, ist die Verbreitung von Industriestandards, die Konferenzverbindungsmerkmale und -dienstprotokolle regeln, mit der Hoffnung, das Konferenzverbindungsdienstanbieter eine Vielzahl von Standardmerkmalen anbieten werden, um den Anforderungen der meisten Teilnehmer zu entsprechen. Zum Beispiel definiert ein Satz von Spezifikationen der Internet Engineering Task Force (IETF) für eine zentralisierte Konferenzsteuerung (XCON) Protokolle für die Handhabung von Konferenzgegenständen, Unterstützungsmerkmalen einschließlich von Regelung von Zugangsberechtigungen, Sicherheit, Anwenderpräferenzen und Mediensteuerungen. Es ist über verschiedene Open-Source-Umsetzungen berichtet worden, einschließlich der IMS-fähigen Konferenzführungsarchitektur für Kommunikationserfahrung der nächsten Generation (CONFerencing IMS-enabled Architecture for Next-generation Communication Experience – CONFIANCE), einer Umsetzung für einen Nachrichten-Sofortversanddienst (Instant Messaging Service – IMS).
-
In der Wirklichkeit bemerken die Teilnehmer mitten in einer laufenden Konferenzverbindungssitzung häufig, dass die Fähigkeiten des laufenden Konferenzverbindungsdienstes so begrenzt sind, dass einer oder mehrere der Teilnehmer unter Verwendung eines anderen Konferenzverbindungsdienstes manuell eine neue Konferenzverbindungssitzung konfigurieren und einleiten werden. In den meisten Fällen verwenden die unterschiedlichen Konferenzverbindungsdienste gesonderte Signalisierungs- und Steuerungsprotokolle zum Steuern der Medien, so dass die neue Konferenzverbindungssitzung keinen Nutzen aus der laufenden Konferenzverbindungssitzung zieht. Demzufolge wird die laufende Konferenzverbindungssitzung durch die Teilnehmer unterbrochen, die beträchtliche Zeit und Anstrengung beim manuellen Konfigurieren und Einleiten der neuen Konferenzverbindungssitzung aufwenden.
-
KURZDARSTELLUNG
-
Zusätzliche Merkmale und Vorzüge der Offenbarung werden in der folgenden Beschreibung dargelegt werden und werden zum Teil aus der Beschreibung offensichtlich sein oder können durch die Umsetzung der hierin offenbarten Prinzipien gelernt werden. Die Merkmale und Vorzüge der Offenbarung können mit Hilfe der in den angefügten Ansprüchen besonders hervorgehobenen Instrumente und Kombinationen verwirklicht und erreicht werden. Diese und andere Merkmale der Offenbarung werden vollständiger offensichtlich werden aus der folgenden Beschreibung und den angefügten Ansprüchen oder können durch die Umsetzung der hierin dargelegten Prinzipien gelernt werden.
-
Nach einem Aspekt stellt die Erfindung ein Verfahren zur Konferenzverbindungssitzungsmigration bereit. Das Verfahren schließt ein, dass ein Datenprozessor Rechneranweisungen ausführt, die auf einem nichtflüchtigen rechnerlesbaren Speichermedium gespeichert sind, um die folgenden Schritte auszuführen: (a) das automatische Konfigurieren und Herstellen einer Ziel-Konferenzverbindungssitzung während einer Ursprungskonferenzverbindungssitzung, (b) das automatische Umwandeln des Sitzungszustandes und der Sitzungsgeschichte von einem Ursprungsformat der Ursprungskonferenzverbindungssitzung zu einem Zielformat der Ziel-Konferenzverbindungssitzung und (c) das automatische Verbinden von anwenderindividuellen Clients mit der Ziel-Konferenzverbindungssitzung.
-
Nach einem anderen Aspekt stellt die Erfindung ein System zur Konferenzverbindungssitzungsmigration bereit. Das System schließt einen Datenprozessor ein, der an ein nichtflüchtiges rechnerlesbares Speichermedium gekoppelt ist, das Rechneranweisungen speichert, die, wenn sie durch den Datenprozessor ausgeführt werden, die folgenden Schritte ausführen: (a) das automatische Konfigurieren und Herstellen einer Ziel-Konferenzverbindungssitzung während einer Ursprungskonferenzverbindungssitzung, (b) das automatische Umwandeln des Sitzungszustandes und der Sitzungsgeschichte von einem Ursprungsformat der Ursprungskonferenzverbindungssitzung zu einem Zielformat der Ziel-Konferenzverbindungssitzung und (c) das automatische Verbinden von anwenderindividuellen Clients bei der Ziel-Konferenzverbindungssitzung.
-
Nach noch einem anderen Aspekt stellt die Erfindung ein nichtflüchtiges rechnerlesbares Speichermedium bereit. Das nichtflüchtige rechnerlesbare Speichermedium speichert Rechneranweisungen, die, wenn sie durch einen Datenprozessor ausgeführt werden, die folgenden Schritte ausführen: (a) das automatische Konfigurieren und Herstellen einer Ziel-Konferenzverbindungssitzung während einer Ursprungskonferenzverbindungssitzung, (b) das automatische Umwandeln des Sitzungszustandes und der Sitzungsgeschichte von einem Ursprungsformat der Ursprungskonferenzverbindungssitzung zu einem Zielformat der Ziel-Konferenzverbindungssitzung und (c) das automatische Verbinden von anwenderindividuellen Clients Anwender bei der Ziel-Konferenzverbindungssitzung.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Um die Weise zu beschreiben, wie die oben angegebenen und anderen Vorzüge und Merkmale der Offenbarung erreicht werden können, wird eine ausführlichere Beschreibung der weiter oben kurz beschriebenen Prinzipien vorgelegt, durch die Bezugnahme auf spezifische Ausführungsformen derselben, die in den angefügten Zeichnungen illustriert werden. Unter der Voraussetzung, dass diese Zeichnungen nur Ausführungsbeispiele der Offenbarung abbilden und daher nicht als Begrenzung von deren Rahmen zu betrachten sind, werden die Prinzipien hierin mit zusätzlicher Spezifizität und Ausführlichkeit beschrieben und erläutert, durch die Verwendung der beigefügten Zeichnungen, in denen:
-
1 eine weltweite Gemeinschaft illustriert, von menschlichen Anwendern und Clients und Servern, die durch das Internet verknüpft sind, um Konferenzverbindungssitzungen unter Verwendung vielfältiger Geräte, Medien und Konferenzverbindungsanwendungsprogrammen, die durch verschiedene Konferenzverbindungsdienstanbieter unterstützt werden, durchzuführen,
-
2 ein allgemeines Sitzungsmigrationsmodell illustriert, bei dem ein Konferenzverbindungsserver, der eine Ursprungskonferenzverbindungssitzung durchführt, automatisch eine Konferenzverbindungsmigration ausführen kann, um eine Ziel-Konferenzverbindungssitzung herzustellen,
-
3 Bestandteile eines Clients oder Servers illustriert, einschließlich eines Datenprozessors und eines nichtflüchtigen rechnerlesbaren Speichermediums, das Rechner-Programmanweisungen enthält, die durch den Datenprozessor ausgeführt werden,
-
4 eine erste Ausführungsform eines Systems illustriert, bei dem ein einziger Konferenzverbindungsserver ein Migrationsprogramm für Konferenzverbindungssitzungen, eine Ursprungskonferenzverbindungsanwendung und eine Ziel-Konferenzverbindungsanwendung enthält,
-
5 eine zweite Ausführungsform eines Systems illustriert, bei dem ein erster Konferenzverbindungsserver ein Migrationsprogramm für Konferenzverbindungssitzungen und eine Ursprungskonferenzverbindungsanwendung enthält und ein zweiter Konferenzverbindungsserver ein Migrationsprogramm für Konferenzverbindungssitzungen und eine Ziel-Konferenzverbindungsanwendung enthält,
-
6 ein Ausführungsbeispiel eines Verfahrens zur Konferenzverbindungssitzungsmigration illustriert,
-
7 Einzelheiten des Konfigurierens einer Ziel-Konferenzverbindung illustriert,
-
8 die Verwendung der Konferenzverbindungsmigration für das Umschalten zwischen Konferenzführungsanwendungen illustriert,
-
9 die Verwendung der Konferenzverbindungsmigration für das Hinzufügen einer gleichzeitigen Ziel-Konferenzverbindung zu einer sich fortsetzenden Ursprungskonferenzverbindung illustriert,
-
10 Einzelheiten der hostgesteuerten Signalisierung während einer Konferenzverbindungssitzungsmigration illustriert und
-
11 weitere Einzelheiten der hostgesteuerten Signalisierung mit einer Teilnehmerbestätigung und/oder -aushandlung illustriert.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Weiter unten werden verschiedene Ausführungsformen der Offenbarung ausführlich erörtert. Während spezifische Umsetzungen erörtert werden, sollte es sich verstehen, dass dies nur zu Illustrationszwecken getan wird. Ein Fachmann auf dem betreffenden Gebiet wird erkennen, dass andere Komponenten und Konfigurationen verwendet werden können, ohne von dem Geist und dem Rahmen der Offenbarung abzuweichen.
-
Die vorliegende Offenbarung wendet sich einem Bedarf auf dem Gebiet an automatischer Konferenzverbindungssitzungsmigration zu. Es folgt eine kurze Einführung der Konferenzverbindungsumgebung und der Allzweck-Datenverarbeitungsgeräte, die als Clients und Server in der Konferenzverbindungsumgebung verwendet werden. Danach wird eine ausführlichere Beschreibung der automatischen Konferenzverbindungssitzungsmigration folgen.
-
Unter Bezugnahme auf 1 schließt die Konferenzverbindungsumgebung 20 das Internet 21, Festnetz-Fernsprechsysteme 22 und drahtlose Fernsprechsysteme 23 ein, die verschiedene elektronische Geräte 24, 25, 26, 27, 28, 29, 30 verknüpfen, die durch menschliche Anwender 31, 32, 33, 34, 35, 36 bedient werden. Die elektronischen Geräte schließen einen Büro-Tischrechner 24, ein Büro-Tischtelefon 25, eine Tagungsraum-Videoanzeige 26, ein Tagungsraum-Konferenztelefon 27, einen tragbaren drahtlosen Tablet-Rechner 28, einen tragbaren Laptop-Rechner 29 und ein drahtloses Smartphone 30 ein.
-
Die Konferenzverbindungsumgebung 20 ermöglicht es mehreren menschlichen Anwendern 31, 32, 33, 34, 35, 36, simultan oder gleichzeitig an einer einzigen Konferenzverbindungssitzung teilzunehmen, unter Verwendung einer ausgewählten Kombination von verschiedenen Arten von Medien, wie beispielsweise Audio, Video, Text und Rechnergraphik. Zusätzlich schließt die Konferenzverbindungsumgebung 20 zahlreiche Rechner-Anwendungsprogramme das Ansetzen einer Konferenzverbindungssitzung, das Erinnern von Teilnehmern an eine bevorstehende Konferenzverbindungssitzung, das Regeln des Zugangs von Teilnehmern zu der Konferenzverbindungssitzung und das Hinzufügen oder Entfernen von verschiedenen Medienströmen zu oder von der Konferenzverbindungssitzung ein. Die Rechner-Anwendungsprogramme reichen von ziemlich einfachen Kunden-Konferenzführungsprogrammen, die auf einem Smartphone 30 oder einem persönlichen Rechner 24, 28, 29 liegen, bis zu ziemlich komplexen Programmen, die auf Konferenzverbindungsservern bei den Internet-Sites von Konferenzverbindungsdienstanbietern liegen.
-
In der Konferenzverbindungsumgebung 20 tritt auf Grund der Begrenzungen eines bestimmten Konferenzverbindungsdienstes oder auf Grund von zeitweiliger Netzüberlastung oder Hardware- oder Softwareausfällen häufig während einer laufenden Konferenzverbindungssitzung ein Problem auf. Die menschlichen Anwender, die an der laufenden Konferenzverbindungssitzung teilnehmen, werden als die Teilnehmer der laufenden Konferenzverbindungssitzung bezeichnet werden. Auf Grund eines oder mehrerer dieser Umstände werden die Fähigkeiten der laufenden Konferenzverbindungssitzung so unzureichend, dass es wünschenswert wird, diesem Problem durch das Einleiten einer neuen Konferenzverbindungssitzung und das Beitreten wenigstens einiger der gegenwärtigen Verbindungsteilnehmer zu der neuen Konferenzverbindungssitzung zu begegnen. Dieser Vorgang des Einleitens der neuen Konferenzverbindungssitzung während der laufenden Konferenzverbindungssitzung und des Beitreten wenigstens einiger der gegenwärtigen Verbindungsteilnehmer zu der neuen Konferenzverbindungssitzung wird als ein Migrationsvorgang von einer Ursprungskonferenzverbindungssitzung (d. h., der laufenden Konferenzverbindungssitzung) zu einer Ziel-Konferenzverbindungssitzung (d. h., der neuen Konferenzverbindungssitzung) bezeichnet werden.
-
Die Migration von der Ursprungskonferenzverbindungssitzung zu der Ziel-Konferenzverbindungssitzung hat häufig eine beträchtliche Störung der Ursprungskonferenzverbindungssitzung mit sich gebracht, während der für das Verwalten der Ursprungskonferenzverbindungssitzung verantwortliche Teilnehmer die Ziel-Konferenzverbindungssitzung einleitet und die Teilnehmer zu der Ziel-Konferenzverbindungssitzung zusammenführt. Dies ist mit beträchtlicher Zeit und manueller Anstrengung verbunden gewesen.
-
Zum Beispiel haben einige Konferenzverbindungsdienste Begrenzungen bezüglich der Medien, die während einer laufenden Konferenzverbindungssitzung hinzugefügt werden können, so dass eine neue Konferenzverbindungssitzung eingeleitet werden muss, falls es gewünscht wird, neue Medien hinzuzufügen. In den meisten Fällen werden Konferenzmedien durch gesonderte Signalisierungs- und Steuerungsdienste gesteuert, so dass die Signalisierungs- und Steuerungsdienste für die neue Konferenzverbindungssitzung keinen Zugang zu den Setup-Informationen haben, die für die laufende Konferenzverbindungssitzung verwendet wurden. Daher muss der Sitzungsmanager diese Setup-Informationen manuell bereitstellen, wenn er die neue Konferenzverbindungssitzung einleitet. In diesem Fall werden die vorhandene Sitzungsgeschichte und der laufende Kontext nicht auf die neue Konferenzverbindungssitzung umgestellt.
-
Zum Beispiel hat das Hinzufügen einer Webkonferenzführung zu einer Audiokonferenz, um eine Webkonferenz einzuschließen, erfordert, dass der Sitzungsmanager der Audiokonferenz die Webkonferenz gesondert einleitet. Typischerweise bedeutet dies eine Außerbandübermittlung der Verbindungsinformationen an die anderen Teilnehmer, die danach typischerweise einen Link auswählen, um die Webkonferenz-Website zu erreichen.
-
Das Konferenzverbindungssystem sollte nur eine einzige Anforderung, wie beispielsweise „Einen Klick”, erfordern, um alle Teilnehmer an einer Konferenzverbindung zu neuen Mediensitzungen hinzuzufügen, zum Beispiel:
- – Audio => Web + Audio
- – Audio => Video + Audio
- – Audio => IM
- – IM => Audio.
-
Es saute auf eine Anzahl von Angelegenheiten eingegangen werden, um Ablenkung oder Störung während der Konferenzverbindungsmigration zu verringern. Die Konferenzverbindungssitzung saute erkennen, dass die Teilnehmer unterschiedliche Geräte für unterschiedliche Medien nutzen können, zum Beispiel ein Telefon für Audio und einen persönlichen Rechner (PC) zum Web-Browsen. Die Verknüpfung zwischen Teilnehmern und Geräten mag nicht von vornherein bekannt sein. Ein Anwender mag wünschen, sich zu der Migration zu einer neuen Konferenzverbindungssitzung anzumelden oder von derselben abzumelden, zum Hinzufügen eines neuen Mediums oder dem Ersetzen eines anderen Gerätes oder Übertragungskanals oder Konferenzverbindungsdienstanbieters für das neue Medium. In einigen Fällen kann die Migration den Erhalt der Sitzungsgeschichte und einer Sitzungsaufzeichnung von vorherigen Medien während einer Aufwärts- oder Abwärtsmigration kompliziert machen.
-
2 illustriert ein allgemeines Sitzungsmigrationsmodell, bei dem ein Konferenzverbindungsserver 37, der eine Ursprungskonferenzverbindungssitzung durchführt, automatisch eine Konferenzverbindungsmigration ausführen kann, um eine Ziel-Konferenzverbindungssitzung herzustellen. Bei einer bevorzugten Umsetzung wird der Konferenzverbindungsserver hergestellt durch das Programmieren eines Allzweckrechners, wie es gezeigt und weiter unten in Bezug auf 3 beschrieben wird.
-
Wie in 2 gezeigt, ist der Konferenzverbindungsserver 37 dafür programmiert, eine erste Sitzungsfähigkeit 41 der Ursprungskonferenzverbindungssitzung bereitzustellen, und die Konferenzverbindungsmigration wird durchgeführt, um eine zweite Sitzungsfähigkeit 42 hinzuzufügen. Der Konferenzverbindungsserver 37 versorgt eine Anzahl von menschlichen Anwendern 43, 44, 45, die Teilnehmer oder Sitzungsmanager der Ursprungskonferenzverbindungssitzung oder der Ziel-Konferenzverbindungssitzung sein können. Jeder menschliche Anwender hat einen zugeknüpften Satz von Hardware- und Software-Instrumentalitäten, die in Bezug auf den Konferenzverbindungsserver 37 als ein Client 46, 47, 48 agieren. In Bezug auf Konferenzverbindungssitzungen schließen die entsprechenden Bestandteile eines Clients Mediengeräte 51, 52 und eine Client-Konferenzführungssoftware 53 ein.
-
Der Konferenzverbindungsserver 37 hat eine Client-Datenbank 54, die Informationen speichert, welche die Netzadressen, Fähigkeiten und zugeordneten Anwender der Mediengeräte und der Client-Konferenzführungssoftware jedes der Clients und ebenfalls die Präferenzen der zugeordneten Anwender speichert. Der Konferenzverbindungsserver 37 hat ebenfalls eine Richtlinien-Datenbank 55, die Richtlinien für das Auswählen und Konfigurieren der Anwendergeräte und Konferenzführungssoftware für Konferenzverbindungssitzungen auf der Grundlage der Anwenderpräferenzen und der Informationen über die Anwendergeräte und Konferenzführungssoftware in der Client-Datenbank 54 speichert.
-
3 illustriert Bestandteile eines Allzweck-Datenverarbeitungsgerätes 100, das als ein Clientgerät oder als ein Server in der Konferenzführungsumgebung von 1 verwendet werden kann. Das Allzweck-Datenverarbeitungsgerät 100 in 3 schließt eine Verarbeitungseinheit (eine CPU oder einen Prozessor) 120 und einen Systembus 110, der die verschiedenen Systemkomponenten, einschließlich des Systemspeichers 130, wie beispielsweise eines Festspeichers (ROM) 140 und eines Direktzugriffsspeichers (RAM) 150, an den Prozessor 120 koppelt, ein. Das System 100 kann einen Zwischenspeicher mit Hochgeschwindigkeitsspeicher einschließen, der unmittelbar mit dem Prozessor 120 verbunden, in enger Nachbarschaft zu demselben oder als Teil des Prozessors 120 integriert ist. Das System 100 kopiert Daten aus dem Speicher 130 und/oder dem Speichergerät 160 für einen schnellen Zugriff durch den Prozessor 120 in den Zwischenspeicher. Auf diese Weise gewährleistet der Zwischenspeicher eine Leistungssteigerung, die Verzögerungen des Prozessors 120 vermeidet, während er auf Daten wartet. Diese und andere Module können den Prozessor 120 steuern oder dafür konfiguriert sein, denselben zu steuern, so dass er verschiedene Aktionen durchführt. Es kann ebenso anderer Systemspeicher 130 zur Verwendung verfügbar sein. Der Speicher 130 kann mehrere unterschiedliche Arten von Speicher mit unterschiedlichen Leistungscharakteristika einschließen. Es wird zu erkennen sein, dass die Offenbarung auf einem Datenverarbeitungsgerät 100 mit mehr als einem Prozessor 120 oder auf einer Gruppe oder einem Cluster von Datenverarbeitungsgeräten arbeiten kann, die miteinander vernetzt sind, um eine größere Verarbeitungskapazität zu gewährleisten. Der Prozessor 120 kann einen beliebigen Allzweckprozessor und ein Hardware-Modul oder ein Software-Modul, wie beispielsweise ein Modul 1 162, ein Modul 2 164 und ein Modul 3 166, die in dem Speichergerät 160 gespeichert sind, dafür konfiguriert, den Prozessor 120 zu steuern, ebenso einschließen wie einen Spezialprozessor, bei dem Software-Anweisungen in die eigentliche Prozessorgestaltung eingebaut sind. Der Prozessor 120 kann im Wesentlichen ein vollständig in sich geschlossenes Datenverarbeitungssystem sein, das mehrere Kerne oder Prozessoren, einen Bus, ein Speichersteuergerät, einen Zwischenspeicher usw. enthält. Ein Mehrkern-Prozessor kann symmetrisch oder asymmetrisch sein.
-
Der Systembus 110 kann ein beliebiger von mehreren Typen von Bus-Strukturen sein, einschließlich eines Speicherbusses oder Speichercontrollers, eines Peripherie-Busses und eines lokalen Busses, unter Verwendung einer beliebigen einer Vielzahl von Bus-Architekturen. Ein Basic-Input-/Output-System (BIOS), das in dem ROM 140 oder dergleichen gespeichert ist, kann die grundlegende Routine bereitstellen, die dazu beiträgt, die Informationen zwischen den Elementen innerhalb des Datenverarbeitungsgerätes 100 zu übertragen, wie beispielsweise während des Starts. Das Datenverarbeitungsgerät 100 schließt ferner Speichergeräte 160, wie beispielsweise ein Festplattenlaufwerk, ein Magnetplattenlaufwerk, ein optisches Plattenlaufwerk, ein Bandlaufwerk oder dergleichen, ein. Das Speichergerät 160 kann Software-Module 162, 164, 166 zum Steuern des Prozessors 120 einschließen. Andere Hardware- oder Software-Module werden erwogen. Das Speichergerät 160 ist durch eine Laufwerk-Schnittstelle mit dem Systembus 110 verbunden. Die Laufwerke und die damit verknüpften rechnerlesbaren Speichermedien stellen einen nichtflüchtigen Speicher von rechnerlesbaren Anweisungen, Datenstrukturen, Programm-Modulen und andern Daten für das Datenverarbeitungsgerät 100 bereit. In einem Aspekt schließt ein Hardware-Modul, das eine bestimmte Funktion ausführt, die in einem nichtflüchtigen rechnerlesbaren Medium gespeicherte Software-Komponente in Verbindung mit den notwendigen Hardware-Komponenten, wie beispielsweise dem Prozessor 120, dem Bus 110, einer Anzeige 170 und so weiter, ein, um die Funktion auszuführen. Die grundlegenden Komponenten sind den Fachleuten auf dem Gebiet bekannt, und es werden passende Variationen in Abhängigkeit von der Art des Gerätes, wie beispielsweise davon, ob das Gerät 100 ein kleines, in der Hand zu haltendes Datenverarbeitungsgerät, ein Arbeitsplatzrechner oder ein Rechnerserver ist, erwogen.
-
Obwohl das hierin beschriebene Ausführungsbeispiel die Festplatte 160 einsetzt, sollte es sich für die Fachleute auf dem Gebiet verstehen, dass andere Arten von rechnerlesbaren Medien, die Daten speichern können, auf die durch einen Rechner zugegriffen werden kann, wie beispielsweise Magnetkassetten, Flash-Speicherkarten, Digital Versatile Disks, Kassetten, Direktzugriffsspeicher (RAMs) 150, Festspeicher (ROM) 140, ein Kabel- oder Drahtlos-Signal, das einen Bitstrom enthält, und dergleichen, ebenfalls in der beispielhaften Betriebsumgebung verwendet werden können. Die nichtflüchtigen rechnerlesbaren Speichermedien schließen ausdrücklich Medien, wie beispielsweise Energie, Trägersignale, elektromagnetische Wellen und Signale an sich, aus.
-
Um eine Benutzer-Wechselwirkung mit dem Datenverarbeitungsgerat 100 zu ermöglichen, stellt ein Eingabegerät 190 eine beliebige Anzahl von Eingabemechanismen, wie beispielsweise ein Mikrofon für Sprache, einen berührungsempfindlichen Bildschirm für Gesten oder graphische Eingabe, Tastatur, Maus, Bewegungseingabe, Sprache und so weiter, dar. Ein Ausgabegerät 170 kann ebenfalls einer oder mehrere von einer Anzahl von Ausgabemechanismen sein, die den Fachleuten auf dem Gebiet bekannt sind. In einigen Fällen ermöglichen es Mehrmodensysteme einem Benutzer, mehrere Arten von Eingaben bereitzustellen, um mit dem Datenverarbeitungsgerät 100 zu kommunizieren. Die Kommunikationsschnittstelle 180 regelt und verwaltet im Allgemeinen die Benutzer-Eingabe und die Systemausgabe. Es gibt keine Beschränkung auf das Arbeiten auf irgendeiner bestimmten Hardware-Anordnung, und daher können die grundlegenden Merkmale hier leicht durch verbesserte Hardware- oder Firmware-Anordnungen ersetzt werden, wenn sie entwickelt sind.
-
Der Klarheit der Erläuterung wegen wird die illustrative System-Ausführungsform so vorgestellt, dass sie einzelne funktionelle Blöcke einschließt, einschließlich von funktionellen Blöcken, die als ein „Prozessor” oder Prozessor 120 bezeichnet werden. Die Funktionen, welche diese Blöcke darstellen, können bereitgestellt werden durch die Verwendung von entweder gemeinsam genutzter oder dedizierter Hardware, einschließlich von Hardware, die dazu in der Lage ist, Software auszuführen, und Hardware, wie beispielsweise ein Prozessor 120, die speziell gebaut ist, um als ein Äquivalent zu Software, die auf einem Allzweck-Prozessor ausgeführt wird, zu arbeiten, aber ohne darauf begrenzt zu sein. Zum Beispiel können die Funktionen von einem oder mehreren in 1 dargestellten Prozessoren durch einen einzelnen gemeinsam genutzten Prozessor oder mehrere Prozessoren bereitgestellt werden. (Die Verwendung des Begriffes „Prozessor” sollte nicht so ausgelegt werden, dass er sich ausschließlich auf Hardware bezieht, die dazu in der Lage ist, Software auszuführen.) Illustrative Ausführungsformen können Mikroprozessor- und/oder digitale Signalprozessor-(DSP-)Hardware, Festspeicher (ROM) 140 zum Speichern von Software, welche die weiter unten erörterten Operationen ausführt, und Direktzugriffsspeicher (RAM) 150 zum Speichern der Ergebnisse einschließen. Es können ebenfalls Höchstintegrations-(VLSI-)Hardware-Ausführungsformen sowie kundenspezifische VLSI-Schaltungen in Kombination mit einem Allzweck-DSP-Schaltkreis bereitgestellt werden.
-
Die logischen Operationen der verschiedenen Ausführungsformen werden umgesetzt als: (1) eine Folge von rechnerimplementierten Schritten, Operationen oder Vorgängen, die auf einem programmierbaren Schaltkreis innerhalb eines Rechners zum allgemeinen Gebrauch laufen, (2) eine Folge von rechnerimplementierten Schritten, Operationen oder Vorgängen, die auf einem programmierbaren Schaltkreis zum spezifischen Gebrauch laufen, und/oder (3) miteinander verbundene Maschinenmodule oder Programm-Maschinen innerhalb der programmierbaren Schaltkreise. Das in 1 gezeigte System 100 kann alte oder einen Teil der erwähnten Verfahren umsetzen, kann ein Teil der erwähnten Systeme sein und/oder kann nach Anweisungen in den erwähnten nichtflüchtigen rechnerlesbaren Speichermedien arbeiten. Solche logischen Operationen können als Module umgesetzt werden, die dafür konfiguriert sind, den Prozessor 120 zu steuern, um bestimmte Funktionen entsprechend der Programmierung des Moduls auszuführen. Zum Beispiel illustriert 3 drei Module Mod1 162, Mod2 164 und Mod3 166, die Module sind, die dafür konfiguriert sind, den Prozessor 120 zu steuern. Diese Module können auf dem Speichergerät 160 gespeichert werden und zur Laufzeit in den RAM 150 oder den Speicher 130 geladen werden oder können, wie es auf dem Gebiet bekannt wäre, in anderen rechnerlesbaren Speicherorten gespeichert werden.
-
Nachdem einige Bestandteile eines Allzweck-Datenverarbeitungsgerätes offenbart worden sind, wendet sich die Offenbarung nun 4 zu, die Programme und Datenstrukturen in dem Konferenzverbindungsserver 37 für eine Umsetzung illustriert, wobei der Konferenzverbindungsserver 37 einen Programmspeicher 61 einschließt, der Audio-/Video-Konferenzverbindungsanwendungen speichert, die sowohl eine Ursprungskonferenzverbindungsanwendung 63 als auch eine Ziel-Konferenzverbindungsanwendung 64, zusätzlich zu einem Migrationsprogramm 65 für Konferenzverbindungssitzungen einschließt.
-
Die Konferenzverbindungsanwendungen 63 und 64 verwalten jeweilige Datenstrukturen in dem Datenspeicher 70 des Konferenzverbindungsservers 37. Die Ursprungskonferenzverbindungsanwendung 63 verwaltet Ursprungskonferenzverbindungsreservierungen 71, einen Ursprungssitzungszustand 72 und eine Ursprungsgeschichte mit Aufzeichnungen 73. Der Ursprungsitzungszustand 72 schließt Informationen über die Teilnehmer 74 und die Medien 75 der Ursprungskonferenzverbindungssitzung ein. Auf eine ähnliche Weise verwaltet die Ziel-Konferenzverbindungsanwendung 64 Ziel-Konferenzverbindungsreservierungen 76, einen Zielsitzungszustand 77 und eine Zielgeschichte mit Aufzeichnungen 78. Der Zielsitzungszustand schließt Informationen über die Teilnehmer 79 und die Medien der Ziel-Konferenzverbindungssitzung ein.
-
Im Betrieb wird die Ursprungskonferenzverbindungsanwendung 63 anfangs durch einen menschlichen Anwender, der als ein Sitzungsmanager agiert, aufgerufen, um eine Reservierung für die Ursprungskonferenzverbindung einzurichten. Die Reservierung schließt zum Beispiel den Zeitpunkt, zu dem die Konferenzverbindung beginnt, die Dauer der Konferenzverbindung, die eingeladenen Teilnehmer der Konferenzverbindung und die Medien der Konferenzverbindung ein. Der Reservierungsvorgang kann das Überprüfen der Verfügbarkeit der eingeladenen Teilnehmer und das Sicherstellen, dass die eingeladenen Teilnehmer die Geräte und die Konferenzführungssoftware haben, die erforderlich sind, um die Medien der Konferenzverbindung zu unterstützen. Die Ursprungskonferenzreservierungen 71 können dazu verwendet werden, kurz vor der Konferenzverbindung Erinnerungen an die Konferenzverbindung an die eingeladenen Teilnehmer zu senden. Die Ursprungskonferenzverbindungsanwendung 63 kann die Client-Datenbank (54 in 2) befragen, um bevorzugte Verfahren, Client-Geräteadressen und eine Kennung von Client-Software zu erlangen, um Einladungen und Erinnerungen an die Ursprungskonferenzverbindung an die gewünschten Teilnehmer zu senden.
-
Zur Anfangszeit der Ursprungskonferenzverbindungssitzung ruft die Ursprungskonferenzverbindungsanwendung, wie es in den Ursprungskonferenzverbindungsreservierungen angezeigt wird, eine Steuerungsroutine für die Ursprungssitzung auf, um die Ursprungskonferenzverbindungssitzung durch das Verbinden der anwenderindividuellen Clients der gewünschten Teilnehmer an der Ursprungskonferenzverbindungssitzung einzuleiten. Dieser Verbindungsvorgang schließt eine durchgehende wechselseitige Authentifizierung und eine Herstellung von Verbindungen zwischen Netz-Endpunkten und Client-Software für die Medienströme der Ursprungskonferenzverbindungssitzung ein.
-
Während der Ursprungskonferenzverbindung empfängt der Konferenzverbindungsserver 37 eine Migrationsaufforderung von einem Sitzungsmanager oder Host für die laufende Sitzung. Die Migrationsaufforderung spezifiziert eine Ursprungskonferenzverbindungssitzung und eine Ziel-Konferenzverbindungssitzung. Der Konferenzverbindungsserver 37 reagiert auf diese Aufforderung durch das Aufrufen des Migrationsprogramms 65 für Konferenzverbindungssitzungen. Die Ausführung des Migrationsprogramms 65 für Konferenzverbindungssitzungen schließt das Ausführen einer Routine 66 für das Identifizieren, Reservieren und Zuweisen von Server-, Netz- und Client-Ressourcen für die Ziel-Konferenzverbindungssitzung. Dieser Vorgang 66 kann in Betracht ziehen, dass die Ziel-Konferenzverbindungssitzung bestimmte Ressourcen gemeinsam mit der Ursprungskonferenzverbindungssitzung nutzen kann oder die Ziel-Konferenzverbindungssitzung bestimmte Ressourcen nutzen kann, die auf das Herstellen der Ziel-Konferenzverbindungssitzung hin von der Ursprungskonferenzverbindungssitzung freigegeben werden. Dieser Vorgang 66 des Identifizierens, Reservierens und Zuweisens von Ressourcen kann das Verhandeln mit den Teilnehmern der Ursprungskonferenzverbindungssitzung mit sich bringen, um festzustellen, ob sich einer dieser Teilnehmer bei der Ziel-Konferenzverbindungssitzung anmelden oder von derselben abmelden wird oder nicht. Der Vorgang 66 kann bei einem Versuch, Client-Ressourcen an verschiedenen Positionen zu reservieren, ein verteiltes zweiphasiges Commit-Protokoll und nach dem Empfangen einer oder keiner Bestätigung von den Clients an den verschiedenen Positionen das Entscheiden mit sich bringen, entweder dem Aufrufen der Ziel-Konferenzverbindungssitzung zuzustimmen, oder die Reservierung der Client-Ressourcen abzubrechen und die Aufforderung abzulehnen, auf die Ziel-Konferenzverbindungssitzung umzustellen. In jedem Fall ist es, falls das Migrationsprogramm für Konferenzverbindungssitzungen entscheidet, dem Aufruf zu der Ziel-Konferenzverbindungssitzung zuzustimmen, dann wahrscheinlich, dass das Aufrufen der Ziel-Konferenzverbindungsanwendung erfolgreich dabei sein wird, die Ziel-Konferenzverbindungssitzung mit den gewünschten Teilnehmern herzustellen, auf Grund des Vorgangs 66 der Sitzungsressourcen-Identifizierung, -Reservierung und -Zuweisung für die Ziel-Konferenzverbindungssitzung.
-
Wenn die Ziel-Konferenzverbindungsanwendung 64 aufgerufen wird, liefert die Ausführung des Migrationsprogramms 65 für Konferenzverbindungssitzungen der Ziel-Konferenzverbindungsanwendung 64 ebenfalls den Sitzungszustand von der Ursprungskonferenzverbindungssitzung, so dass es einen nahtlosen Übergang zu der Ziel-Konferenzverbindungssitzung gibt. Bei einer bevorzugten Umsetzung liefert die Ausführung des Migrationsprogramms 65 für Konferenzverbindungssitzungen der Ziel-Konferenzverbindungsanwendung 64 ebenfalls die Sitzungsgeschichte der Ursprungskonferenzverbindungssitzung, so dass die Sitzungsgeschichte der Ziel-Konferenzverbindungssitzung die Sitzungsgeschichte der Ursprungskonferenzverbindungssitzung einschließen wird. Zum Beispiel schließt die Sitzungsgeschichte eine Identifizierung der Teilnehmer, die sich an der Konferenzverbindungssitzung beteiligten, und den Zeitpunkt, zu dem sich jeder Teilnehmer anschloss, ein.
-
Die Sitzungsgeschichte 73, 78 kann ebenfalls eine Aufzeichnung von Ton, Video, Text oder Dokumenten, die während der Konferenzverbindungssitzung an die Teilnehmer verteilt wurden, und entsprechende Zeitstempel einschließen, so dass es möglich ist, den Medieninhalt zu identifizieren, der tatsächlich während der Konferenzverbindungssitzung für jeden Teilnehmer dargestellt wurde. Im Allgemeinen wird die Ziel-Konferenzverbindungsanwendung ein Format für Sitzungszustand und Sitzungsgeschichte verwenden, das sich von dem durch die Ursprungskonferenzverbindungsanwendung verwendeten Format und Sitzungszustand unterscheidet. Daher hat das Migrationsprogramm 65 für Konferenzverbindungssitzungen eine Formatumwandlungsroutine 67 für die Umwandlung des Formats von Sitzungszustand 72 und Sitzungsgeschichte 74, das durch die Ursprungskonferenzverbindungsanwendung 63 verwendet wird, zu dem Format von Sitzungszustand 77 und Sitzungsgeschichte 78, das durch die Ziel-Konferenzverbindungsanwendung 64 verwendet wird.
-
Die Formatumwandlungsroutine 67 kann das Format der Aufzeichnungen von dem Format der Ursprungskonferenzverbindungsanwendung zu dem Format des Ziel-Konferenzverbindungsformates umwandeln und die formatumgewandelte Ursprungskonferenzverbindungsaufzeichnung der Ziel-Konferenzverbindungsanwendung 64 so vorlegen, dass die Ziel-Konferenzverbindungsanwendung die Aufzeichnung während der Ziel-Konferenzverbindungssitzung an die formatumgewandelte Ursprungskonferenzverbindungsaufzeichnung anhängt, um eine nahtlose Aufzeichnung der Ursprungskonferenzverbindungssitzung zusammen mit der Ziel-Konferenzverbindungssitzung in einer einzigen Datei bereitzustellen.
-
5 illustriert ein System, bei dem die Konferenzverbindungsanwendung 86 für die Ursprungskonferenzverbindungssitzung und die Konferenzverbindungsanwendung 90 für die Ziei-Konferenzverbindungssitzung in unterschiedlichen Konferenzverbindungsservern 81, 82 liegen. Dies würde in dem Fall auftreten, dass die Ursprungskonferenzverbindungssitzung und die Ziel-Konferenzverbindungssitzung durch unterschiedliche Konferenzverbindungsdienstanbieter gesteuert werden, die jeweilige Konferenzverbindungsserver haben.
-
Der Ursprungskonferenzverbindungsserver 81 schließt einen Programmspeicher 83 ein, der Audio-/Video-Konferenzverbindungsanwendungen 84 und ein Migrationsprogram 85 für Konferenzverbindungssitzungen speichert. Die Konferenzverbindungsanwendungen 84 schließen die Ursprungskonferenzverbindungsanwendung 86 ein. Der Ursprungskonferenzverbindungsserver 81 hat einen Datenspeicher 204, der Ursprungskonferenzverbindungsreservierungen 91, einen Ursprungssitzungszustand 92 und eine Ursprungsgeschichte mit Aufzeichnungen 93 speichert. Der Ursprungssitzungszustand schließt Informationen 94 über die an der Ursprungskonferenzverbindungssitzung beteiligten Teilnehmer und Informationen 95 über die Medienströme der Ursprungskonferenzverbindungssitzung ein.
-
Der Ziel-Konferenzverbindungsserver 82 schließt einen Programmspeicher 87 ein, der Audio-/Video-Konferenzverbindungsanwendungen 88 und ein Migrationsprogram 89 für Konferenzverbindungssitzungen speichert. Die Konferenzverbindungsanwendungen 88 schließen die Ziel-Konferenzverbindungsanwendung 90 ein. Der Ziel-Konferenzverbindungsserver 82 hat einen Datenspeicher 205, der Ziel-Konferenzverbindungsreservierungen 96, einen Zielsitzungszustand 97 und eine Zielgeschichte mit Aufzeichnungen 98 speichert. Der Zielsitzungszustand 97 schließt Informationen 201 über die an der Ziel-Konferenzverbindungssitzung beteiligten Teilnehmer und Informationen 202 über die Medienströme der Ziel-Konferenzverbindungssitzung ein.
-
Die Sitzungsmigration kann bei dem System von 5 auf eine ähnliche Weise erfolgen wie die Sitzungsmigration bei dem System von 4, wobei das Migrationsprogram 85 für Konferenzverbindungssitzungen in dem Ursprungskonferenzverbindungsserver 81 die Migrationsschritte ausführt, die weiter oben in Bezug auf das Migrationsprogramm 65 in 4 beschrieben werden.
-
Bei dem System von 5 kann es ebenfalls wünschenswert sein, dass sowohl das Migrationsprogram 85 für Konferenzverbindungssitzungen in dem Ursprungskonferenzverbindungsserver 81 als auch das Migrationsprogram 89 für Konferenzverbindungssitzungen in dem Ziel-Konferenzverbindungsserver 82 die Migrationsschritte ausführen, um von der Ursprungskonferenzverbindungssitzung auf die Ziel-Konferenzverbindungssitzung umzustellen. Dies kann wünschenswert sein, um ein Zwischenformat für die Umwandlung von Sitzungszustand und Sitzungsgeschichte von der Ursprungskonferenzverbindungssitzung zu der Ziel-Konferenzverbindungssitzung zu verwenden. Die Verwendung eines Zwischenformats würde eine Umwandlung des Ursprungsformats von Sitzungszustand und Sitzungsgeschichte zu dem Zielformat der Ziel-Konferenzverbindungssitzung ermöglichen, ohne eine Offenbarung des Ursprungsformats gegenüber dem Konferenzverbindungsdienstanbieter der Ziel-Konferenzverbindungssitzung und ohne Offenbarung des Zielformats gegenüber dem Konferenzverbindungsdienstanbieter der Ursprungskonferenzverbindungssitzung. Die Verwendung eines Industriestandard-Zwischenformats für den Sitzungszustand und die Sitzungsgeschichte würde ebenfalls die Formatumwandlung zwischen mehreren Formaten erleichtern. In diesem Fall würde das Migrationsprogram 85 für Konferenzverbindungssitzungen in dem Ursprungskonferenzverbindungsserver 81 den Sitzungszustand und die Sitzungsgeschichte zwischen dem Format der Ursprungskonferenzverbindungssitzung und dem Industriestandardformat umwandeln, und das Migrationsprogram 89 für Konferenzverbindungssitzungen in dem Ziel-Konferenzverbindungsserver 82 würde den Sitzungszustand und die Sitzungsgeschichte zwischen dem Industriestandardformat und dem Format der Ziel-Konferenzverbindungssitzung umwandeln.
-
6 illustriert ein Ausführungsbeispiel eines Verfahrens zur Konferenzverbindungssitzungsmigration. Die hierin umrissenen Schritte sind beispielhaft und können einer beliebigen Kombination derselben, einschließlich von Kombinationen, die bestimmte Schritte ausschließen, hinzufügen oder modifizieren, umgesetzt werden. Bei einem ersten Schritt 301 empfängt ein Konferenzverbindungsserver während einer Ursprungskonferenzverbindungssitzung, die durch den Konferenzverbindungsserver gesteuert wird, von einem Sitzungsmanager eine Anforderung für eine Sitzungsmigration. Bei Schritt 302 reagiert der Sitzungsmanager auf die Anforderung für eine Sitzungsmigration durch das automatische Konfigurieren einer Ziel-Konferenzverbindungssitzung und danach das Einleiten der Ziel-Konferenzverbindungssitzung. Bei Schritt 303 wandelt der Konferenzverbindungsserver automatisch den Sitzungszustand und die Sitzungsgeschichte der Ursprungskonferenzverbindungssitzung in ein Zielformat für die Ziel-Konferenzverbindungssitzung um. Bei Schritt 304 verbindet der Konferenzverbindungsserver automatisch anwenderindividuellen Clients mit der Ziel-Konferenzverbindungssitzung. Schließlich gibt der Konferenzverbindungsserver, bei Schritt 305, automatisch Ressourcen der Ursprungskonferenzverbindungssitzung, die auf Grund der Einleitung der Ziel-Konferenzverbindungssitzung nicht mehr benötigt werden, frei.
-
7 zeigt eine Unterroutine für das Konfigurieren einer Ziel-Konferenzverbindung. Die Unterroutine von 7 wird zum Beispiel bei Schritt 302 von 6 aufgerufen. Bei Schritt 401 von 7 identifiziert, reserviert und weist der Konferenzverbindungsserver neue Serverressourcen und neue Netzressourcen zu, die für die Ziel-Konferenzverbindungssitzung benötigt werden. Bei Schritt 402 zweigt, falls es unzureichende Serverressourcen und Netzressourcen zum Unterstützen der Ziel-Konferenzverbindungssitzung gibt, dann die Ausführung von Schritt 402 zu Schritt 403 ab. Bei Schritt 403 werden jegliche bei Schritt 401 vorgenommenen Reservierungen abgebrochen, und die Ausführung springt mit einer Fehlermeldung, die auf einen Fehler beim Konfigurieren der Ziel-Konferenzverbindungssitzung hinweist, zurück.
-
Bei Schritt 402 setzt sich, falls bei Schritt 401 ausreichende Server- und Netzressourcen identifiziert, reserviert und zugewiesen wurden, dann die Ausführung von Schritt 402 zu Schritt 404 fort. Bei Schritt 404 wählt der Konferenzverbindungsserver auf der Grundlage von Anwenderpräferenzen, Anwenderstandort, Anwendergeräteverfügbarkeit und Richtlinien die Anwenderressourcen und Anwendergeräte für die Ziel-Konferenzverbindungssitzung aus und konfiguriert sie. Bei Schritt 405 zweigt, falls es unzureichende Anwenderressourcen zum Unterstützen der Ziel-Konferenzverbindungssitzung gibt, dann die Ausführung von Schritt 405 zu Schritt 406 ab, um jegliche bei Schritt 401 und 404 vorgenommenen Reservierungen und Zuweisungen abzubrechen, und die Ausführung springt mit einer Fehlermeldung, die auf einen Fehler beim Konfigurieren der Ziel-Konferenzverbindungssitzung hinweist, zurück.
-
Bei Schritt 405 setzt sich, falls bei Schritt 404 ausreichende Server- und Netzressourcen gefunden wurden, dann die Ausführung von Schritt 405 zu Schritt 407 fort. Bei Schritt 407 führt der Konferenzverbindungsserver eine durchgehende wechselseitige Authentifizierung und eine Herstellung von Verbindungen zwischen Netz-Endpunkten und Client-Software durch, und danach springt die Ausführung zurück, wobei sie auf eine erfolgreiche Konfiguration der Ziel-Konferenzverbindungssitzung hinweist.
-
8 illustriert die Verwendung der Konferenzverbindungsmigration für das Umschalten zwischen Konferenzführungsanwendungen. Bei einem ersten Schritt 501 führt ein Konferenzverbindungsserver eine automatische Migration von einer Ursprungskonferenzverbindungssitzung zu einer Ziel-Konferenzverbindungssitzung, zum Beispiel wie weiter oben in Bezug auf 6 und 7 beschrieben, durch. Danach, bei einem abschließenden Schritt 502, beendet der Konferenzverbindungsserver, auf die Herstellung der Ziel-Konferenzverbindungssitzung hin, automatisch die Ursprungskonferenzverbindungssitzung und gibt Server-, Netz- und Client-Ressourcen, die nur durch die Ursprungskonferenzverbindungssitzung verwendet wurden.
-
9 illustriert die Verwendung der Konferenzverbindungsmigration für das Hinzufügen einer gleichzeitigen Ziel-Konferenzverbindung zu einer sich fortsetzenden Ursprungskonferenzverbindung. Bei einem ersten Schritt 511 führt ein Konferenzverbindungsserver eine automatische Migration von einer Ursprungskonferenzverbindungssitzung zu einer Ziel-Konferenzverbindungssitzung, zum Beispiel wie weiter oben in Bezug auf 6 und 7 beschrieben, durch. Danach, bei einem abschließenden Schritt 512, beendet der Konferenzverbindungsserver, auf die Herstellung der Ziel-Konferenzverbindungssitzung hin, automatisch jegliche redundanten Dienste der Ursprungskonferenzverbindungssitzung oder deaktiviert jegliche redundanten Dienste der Ziel-Konferenzverbindungssitzung und gibt Server-, Netz- und Client-Ressourcen, die nur durch die beendeten oder deaktivierten Dienste verwendet wurden, während er die Ursprungskonferenzverbindungssitzung gleichzeitig mit der Ziel-Konferenzverbindungssitzung fortsetzt.
-
Zum Beispiel verwenden manche Webkonferenzführungsanwendungen ein Mikrofon und Lautsprecher in einem Laptop- oder Tischrechner für eine Sprachkommunikation zwischen Teilnehmern. Eine Netzüberlastung kann dazu führen, dass die Datenübertragungsrate über die Webverbindung unter einen bestimmten Schwellenwert, wie beispielsweise 20 Kilobit pro Sekunde, abfällt, der für eine Sprachkommunikation mit hoher Qualität erforderlich ist. In diesem Fall kann der Sitzungsmanager der Webkonferenz eine automatische Migration aufrufen, um eine Telefonkonferenzverbindung über das Festnetz-Fernsprechsystem hinzuzufügen. In diesem Fall wird, auf die Herstellung der Ziel-Konferenzverbindungssitzung über das Festnetz-Fernsprechsystem hin, die Webkonferenz gleichzeitig mit der neuen Telefonkonferenzverbindung fortgesetzt, aber die Sprachkommunikation über die Internetverbindung wird unterbrochen, so dass die begrenzten Netz-Bandbreitenressourcen der Internetverbindung nicht mehr für die Sprachkommunikation über die Internetverbindung verwendet werden und stattdessen für die Übertragung von Text, Rechnergraphiken oder Dateien in Übereinstimmung mit dem Protokoll Ursprungskonferenzverbindungssitzung verwendet werden können.
-
10 illustriert Einzelheiten der hostgesteuerten Signalisierung während einer Konferenzverbindungssitzungsmigration, um es Teilnehmern zu ermöglichen, sich bei einer Ziel-Konferenzverbindungssitzung anzumelden oder abzumelden. Ein Host, wie beispielsweise der Client des Managers einer Ursprungskonferenzverbindungssitzung, sendet eine Migrationsanforderung an den Konferenzverbindungsserver der Ursprungskonferenzverbindungssitzung, um eine Fähigkeit zu der Ursprungskonferenzverbindungssitzung hinzuzufügen. Der Konferenzverbindungsserver greift auf die Richtlinien-Datenbank zu, um die Richtlinie zu bestimmen, die für das Auswählen und Konfigurieren der Anwendergeräte und der Konferenzführungssoftware für die Ziel-Konferenzverbindungssitzung zu befolgen ist, auf der Grundlage der Anwenderpräferenzen und der Informationen über die Anwendergeräte und die Konferenzführungssoftware in der Anwender-Datenbank für die Teilnehmer der Ursprungskonferenzverbindungssitzung. Die Richtlinie kann spezifizieren, dass, falls alle Teilnehmer nicht die Geräte oder die Software haben, um die Ziel-Konferenzverbindungssitzung zu unterstützen, dann eine Nachricht zurück an den Host gesendet wird, die diejenigen Teilnehmer, die nicht die Geräte oder die Software haben, um die Ziel-Konferenzverbindungssitzung zu unterstützen, und den Grad der Einschränkung dieser Teilnehmer in Bezug auf die Ziel-Konferenzverbindungssitzung identifiziert und von dem Host fordert, dass er bestätigt, dass die Migration unter diesen Umständen vonstatten gehen sollte. Falls die Migration zu der Ziel-Konferenzverbindungssitzung nicht für alle Teilnehmer transparent sein wird, dann können die Richtlinien veranlassen, dass alle betroffenen Teilnehmer, die den Richtlinien unterworfen sind, über die bevorstehende Migration unterrichtet werden, und möglicherweise bestimmten Teilnehmern eine Vetomöglichkeit anbieten. In Abhängigkeit von den Richtlinien wird die neue Fähigkeit durch das Migrieren zu der Ziel-Konferenzverbindungssitzung zu dem System hinzugefügt.
-
11 illustriert zum Beispiel die hostgesteuerte Signalisierung mit einer Teilnehmerbestätigung und/oder -aushandlung. In diesem Fall wartet der Konferenzverbindungsserver, der die Ursprungskonferenzverbindungssitzung steuert, nach dem Benachrichtigen von allen betroffenen Teilnehmern, die den Richtlinien unterworfen sind, auf Bestätigungen von den betroffenen Teilnehmern oder verhandelt mit den betroffenen Teilnehmern, die nicht bestätigen, dass die Migration annehmbar sein würde. In Abhängigkeit von den Richtlinien für Bestätigung und Aushandlung weist der Konferenzverbindungsserver Ressourcen zu und richtet die Ziel-Konferenzverbindungssitzung ein und fügt der laufenden Sitzung durch das Migrieren zu der Ziel-Konferenzverbindungssitzung eine neue ausgehandelte Fähigkeit hinzu. Folglich können, in Abhängigkeit von dem Ergebnis der Verhandlung, einige Teilnehmer die neue ausgehandelte Fähigkeit der Ziel-Konferenzverbindungssitzung verwenden, und andere Teilnehmer mögen gleichzeitig mit der Ziel-Konferenzverbindungssitzung weiter die alte Fähigkeit der Ursprungskonferenzverbindungssitzung verwenden.
-
Das Folgende sind einige spezifische Beispiele unter Verwendung des Verfahrens und das Systems, wie sie weiter oben beschrieben werden. Bei einem ersten Beispiel befinden sich mehrere Anwender in einer Audiokonferenzverbindung von Tischtelefonen aus. Während der Verbindung wollen sie ein Dokument über eine Webschnittstelle erörtern. Der Konferenzverbindungsserver wählt „Webkonferenz hinzufügen” aus. Der Konferenzverbindungsserver stellt fest, welche webfähigen Geräte für welche Anwender verfügbar sind, in Abhängigkeit von deren Standort, Präferenzen, Firmenrichtlinien und Medienkompatibilität. Der Konferenzverbindungsserver weist die notwendigen Ressourcen an dem Webkonferenzserver zu, autoinitialisiert die Client-Software für das Gerät jedes Anwenders derart, dass jeder Anwender nun auf die Webkonferenz zugreifen kann. Falls eine Selbstauthentifizierung durch Richtlinien und Berechtigungsnachweise unterstützt wird, dass werden die Sitzungsauthentifizierungsschritte für die ursprüngliche Verbindung auf die Webkonferenz angewendet. Anderenfalls stellen ein oder mehrere Teilnehmer die notwendigen Berechtigungsnachweise bereit.
-
Bei einem zweiten Beispiel befinden sich wieder mehrere Anwender in einer Audiokonferenzverbindung von Tischtelefonen aus, und während der Verbindung wollen sie ein Dokument über eine Webschnittstelle erörtern. Bei diesem zweiten Beispiel hat wenigstens ein Anwender eine Präferenz für die Verwendung eines Softphones für Ton, wenn die Webkonferenz eingeleitet wird. Dann konfiguriert und initialisiert der Konferenzverbindungsserver ein Hinauswahlen oder eine Anruf-Weiterschaltung zu dem Softphone des Teilnehmers. Wenn dieser Endpunkt angemeldet ist, wird der Verbindungsabschnitt für das ursprüngliche Gerät beendet. Der neue Endpunkt des Anwenders wird automatisch in der Teilnehmerliste wiedergespiegelt.
-
Bei einem dritten Beispiel entscheiden die Teilnehmer während der Webkonferenz des vorhergehenden Beispiels, zu einer GOOGLE-WAVE-Zusammenarbeitssitzung umzuschalten, so dass sie in einer Wave über das Webpräsentationsmaterial bloggen können. Der Konferenzverbindungsserver führt die üblichen Sitzungsmigrationsschritte aus. Zusätzlich wird die Sitzungsgeschichte von der Audiobrücke (einschließlich einer Aufzeichnung von der Telefonkonferenzverbindung) und der Webkonferenz (ebenfalls aufgezeichnet) in eine Reihe von Wave-Lets und Blips umgewandelt und in der Wave erhalten. Die Teilnehmer werden in die Wave verbunden und können in der Wave weiter sprechen und bloggen.
-
Bei den obigen Beispielen ermöglicht das Verfahren der Konferenzverbindungsmigration eine „Ein-Klick”-Hinzufügung von neuen Medien mitten in einer Ursprungskonferenzverbindungssitzung, ungeachtet dessen, ob die Ursprungskonferenzverbindungssitzung durch einen Konferenzverbindungsserver verwaltet wird, der die neuen Medien bereits unterstützt. Zusätzlich werden die semantischen Informationen der Ursprungskonferenzverbindungssitzung zu der neuen Ziel Konferenzverbindungssitzung übertragen, durch die Umwandlung des Sitzungszustandes und der Sitzungsgeschichte der Ursprungskonferenzverbindungssitzung zu der Ziel-Konferenzverbindungssitzung.
-
Ausführungsformen innerhalb des Rahmens der vorliegenden Offenbarung können ebenfalls greifbare und/oder nichtflüchtige rechnerlesbare Speichermedien einschließen, die auf denselben gespeicherte rechnerausführbare Anweisungen oder Datenstrukturen tragen oder haben. Solche nichtflüchtigen rechnerlesbaren Speichermedien können jegliche verfügbaren Medien sein, auf die durch einen Allzweck- oder einen Spezialrechner zugegriffen werden kann, einschließlich der funktionellen Gestaltung eines beliebigen Spezialprozessors, wie weiter oben erörtert. Als Beispiel und nicht zur Begrenzung können solche nichtflüchtigen rechnerlesbaren Speichermedien RAM, ROM, EEPROM, CD-ROM oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere Magnetspeichergeräte oder ein beliebiges anderes Medium einschließen, das dazu verwendet werden kann, gewünschte Programmcodemittel in der Form von rechnerausführbaren Anweisungen, Datenstrukturen oder Prozessor-Chipgestaltung zu tragen oder zu speichern. Wenn Informationen über ein Netz oder eine andere Kommunikationsverbindung (entweder festverdrahtet, drahtlos oder Kombinationen derselben) zu einem Rechner übermittelt oder bereitgestellt werden, sieht der Rechner die Verbindung sachgemäß als ein rechnerlesbares Medium an. Folglich ist jegliche solche Verbindung sachgemäß als rechnerlesbares Medium zu bezeichnen. Kombinationen der obigen sollten ebenfalls in den Rahmen der rechnerlesbaren Medien eingeschlossen sein.
-
Rechnerausführbare Anweisungen schließen zum Beispiel Anweisungen und Daten ein, die bewirken, dass ein Allzweckrechner, ein Spezialrechner oder ein Spezial-Datenverarbeitungsgerät eine bestimmte Funktion oder Gruppe von Funktionen ausführt. Rechnerausführbare Anweisungen schließen ebenfalls Programm-Module ein, die durch Rechner in Einzelplatz- oder Netzumgebungen ausgeführt werden. Im Allgemeinen schließen Programm-Module Routinen, Programme, Komponenten, Datenstrukturen, Objekte und die in der Gestaltung von Spezialprozessoren inhärenten Funktionen usw. ein, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen umsetzen. Rechnerausführbare Anweisungen, zugeordnete Datenstrukturen und Programm-Module stellen Beispiele der Programmcodemittel zum Durchführen von Schritten der hierin offenbarten Verfahren dar. Die besondere Abfolge solcher ausführbaren Anweisungen oder zugeordneten Datenstrukturen stellt Beispiele von entsprechenden Handlungen zum Umsetzen der in solchen Schritten beschriebenen Funktionen dar.
-
Die Fachleute auf dem Gebiet werden erkennen, dass andere Ausführungsformen der Offenbarung in Netz-Datenverarbeitungsumgebungen mit vielen Arten von Rechnersystem-Konfigurationen, einschließlich von Arbeitsplatzrechnern, Handgeräten, Mehrprozessorsystemen, mikroprozessorbasierter oder programmierbarer Verbraucherelektronik, Netz-PCs, Minirechnern, Großrechnern und dergleichen, in die Praxis umgesetzt werden können. Ausführungsformen können ebenfalls in verteilten Datenverarbeitungsumgebungen in die Praxis umgesetzt werden, wobei Aufgaben durch lokale und entfernte Verarbeitungsgeräte ausgeführt werden, die (entweder durch festverdrahtete Verknüpfungen, drahtlose Verknüpfungen oder durch eine Kombination derselben) durch ein Kommunikationsnetz verknüpft sind. In einer verteilten Datenverarbeitungsumgebung können sich Programm-Module sowohl in lokalen als auch in entfernten Speichergeräten befinden.
-
Die weiter oben beschriebenen Ausführungsformen werden nur zu Zwecken der Illustration bereitgestellt und sollten nicht so ausgelegt worden, dass sie den Rahmen der Offenbarung begrenzen. Die Fachleute auf dem Gebiet werden leicht verschiedene Modifikationen und Veränderungen erkennen, die an den hierin beschriebenen Prinzipien vorgenommen werden können, ohne den hierin illustrierten und beschriebenen Ausführungsbeispielen und Anwendungen zu folgen und ohne von dem Geist und dem Rahmen der Offenbarung abzuweichen.