-
Hintergrund der Erfindung
-
Sachgebiet der Erfindung
-
Die
Erfindung betrifft ein System zum Bereitstellen von Dienstleistungen
und insbesondere ein Computersystem zum Bereitstellen von Dienstleistungen
für Benutzer
von Kommunikationssystemen unter Verwendung von Serviceeinheiten,
Schnittstelleneinheiten und eines Servicebus.
-
Hintergrund
der Erfindung
-
Herkömmlicherweise
werden Dienstleistungen einem Benutzer eines Telefonsystems unter
Verwendung eines "Top-Down"-Ansatzes bereitgestellt. 14 zeigt
einen Systemüberblick
zum Bereitstellen von Dienstleistungen unter Verwendung des Standes
der Technik. Der Dienstleistungsprovider 201 umfasst ein
Betriebssystem 204, Dienstleistungen 205 und eine
Netzwerkschnittstelle 206. Die Dienstleistungen sind als
eigenständige
Dienstleistungen softwareimplementiert. Neue Dienstleistungen werden
entweder durch Hinzufügen
neuer eigenständiger
Dienstleistungen 205 zu einem bestehenden Dienstleistungsprovider 201 oder
durch Hinzufügen
eines vollständig
neuen Dienstleistungsproviders bereitgestellt. Beispiele für Dienstleistungen
für ein
Telefonsystem, die gemäß dem bekannten
Ansatz implementiert sind, umfassen einen Anrufweiterleitungsservice
und einen Anklopfservice.
-
Bei
dem herkömmlichen
Ansatz gemäß 14 wird
ein einziges Netzwerkinterface 206 für jeden Dienstleistungsprovider 201 verwendet,
was bedeutet, dass jeder Dienstleistungsprovider 201 nur mit
einem einzigen Telefonsystem 203 kommunizieren kann. Ferner
ist bei dem herkömmlichen
Ansatz das Management der Dienstleistungen und der Netzwerkinterfaces
zwischen Dienst leistungsprovidern getrennt, was eine Erhöhung an
Managementkosten bewirkt.
-
Bei
dem bekannten System nach 14 erfordert
die Bereitstellung neuer Dienstleistungen üblicherweise lange Zeit, und üblicherweise
existieren keine einheitlichen oder standardisierten Ansätze für das Bereitstellen
neuer Dienstleistungen.
-
Des
weiteren weist das Bereitstellen von neuen Dienstleistungen auf
herkömmliche
Weise üblicherweise
mehrere Probleme auf. Beispielsweise wird eine neue Dienstleistung
von einem Dienstleistungsentwickler in abgeschlossener und geschützter Weise
entwickelt, und die Verbreitung der bereitgestellten neuen Dienstleistung
ist schwierig vorzunehmen und wird durch den Dienstleistungsentwickler, der
die Dienstleistung entwickelt hat, eingeschränkt. Darüber hinaus ist die Bereitstellung
einer durch einen Dienstleistungsentwickler entwickelten neuen Dienstleistung
schwierig vorherzusagen, da der Dienstleistungsentwickler nach seinem
eigenen unabhängigen
Bereitstellungszeitplan arbeitet.
-
Darüber hinaus
wird bei der Bereitstellung einer neuen Dienstleistung mit dem herkömmlichen Ansatz
die neue Dienstleistung oft ohne Berücksichtigung der laufenden
Bereitstellung existierender Dienstleistungen eingeführt. Ferner
ist das Zusammenwirken einer neuen Dienstleistung und einer existierenden
Dienstleistung schwer zu erreichen, wenn die Dienstleistungen durch
zwei verschiedene Dienstleistungsprovider implementiert sind. Wird eine
neue Dienstleistung bereitgestellt, erfordert der die neue Dienstleistung
implementierende Dienstleistungsprovider ein hohes Maß an Wartungskosten und
Provisioning. Bei Provisioning handelt es sich um die Konfiguration
von Daten und/oder Informationen bezüglich der implementierten Dienstleistung.
-
Elixmann,
M. et al. in "Service
Creation Environment – A
Development Environment for Services in the Intelligent Network", Philips Telecommunication
Review, NL, Philips Telecommunicatie Industrie N.V. Hilversum, Bd.
50, Nr. 1, Seiten 34-38, 1992, Turner, G. D. In "Service creation" BT Technology Journal, GB, BT Laboratories,
Bd. 13, Nr. 2, Seiten 80-86, 1995, Genette, M. in "Service Creation
Environment: Flexibility, Openness and Evolution", Electrical Communication, BE, Alcatel,
Brüssel,
Seiten 53-59, 1999 und
EP 0810799 beschreiben
jeweils herkömmliche
Dienstleistungsbereitstellungssysteme.
-
Es
besteht ein Bedarf daran, das Bereitstellen von Dienstleistungen
für Benutzer
effizienter zu machen, und ein Bedarf an der einfacheren Einführung neuer
Dienstleistungen.
-
Überblick über die
Erfindung
-
Es
ist eine Aufgabe der vorliegenden Erfindung, ein Computersystem
zum Bereitstellen von Dienstleistungen für einen Benutzer unter Verwendung
eines Kommunikationssystems zu schaffen.
-
Eine
Aufgabe der Erfindung ist es, neue Dienstleistungen schnell und
kostengünstig
bereitzustellen.
-
Eine
Aufgabe der Erfindung ist es, ein skalierbares System zum Bereitstellen
von Dienstleistungen zu schaffen.
-
Eine
Aufgabe der Erfindung ist es, ein System zu schaffen, welches das
einfache Erstellen, Verwalten und Ausführen neuer Dienstleistungen
ermöglicht.
-
Eine
Aufgabe der Erfindung ist es, ein System zum Bereitstellen von Dienstleistungen
zu schaffen, das es Betreibern und Dritten ermöglicht, neue Dienstleistungen
zu entwickeln.
-
Die
Erfindung umfasst ein System, ein Verfahren und einen Herstellungsartikel
zum Bereitstellen von Dienstleistungen.
-
Nach
einem ersten Aspekt der Erfindung ist Computersystem zum Bereitstellen
von Dienstleistungen mit einem computerlesbaren Medium vorgesehen,
das Software zum Betreiben eines Computers beinhaltet, umfassend:
mehrere softwareimplementierte Serviceeinheiten, wobei jede Serviceeinheit
mindestens eine der folgenden Funktionen umfasst: eine wiederverwendbare
Makrofunktion, eine Anwendungsprogrammierungs-Schnittstellenfunktion
und eine Managementschnittstellenfunktion, wobei jede Serviceeinheit
Ereignisse erzeugt und empfängt,
wobei jede Serviceeinheit einem Benutzerabonnement für eine Dienstleistung
entspricht; mehrere softwareimplementierte Schnittstelleneinheiten, wobei
jede Schnittstelleneinheit an ein Kommunikationssystem gekoppelt
ist und unter Verwendung eines Kommunikationsprotokolls mit dem
Kommunikationssystem kommuniziert, wobei jede Schnittstelleneinheit
Ereignisse erzeugt und empfängt;
und einen softwareimplementierten Servicebus, der die Schnittstelleneinheiten
und die Serviceeinheiten koppelt, wobei der Servicebus Ereignisse
zwischen den Schnittstelleneinheiten und den Serviceeinheiten und zwischen
den Serviceeinheiten weiterleitet.
-
Vorzugsweise
weist der Servicebus eine die von dem System bereitgestellten Dienstleistungen auflistende
softwareimplementierte Dienstleistungsregistrierdatenbank auf.
-
Vorzugsweise
umfasst der Servicebus eine softwareimplementierte Dienstleistungsregistrierdatenbank,
die Benutzer auflistet, die autorisiert sind, auf das Computersystem
zuzugreifen.
-
Der
Servicebus umfasst vorzugsweise eine softwareimplementierte Dienstleistungsregistrierdatenbank,
die Beziehungen zwischen den Serviceeinheiten und Benutzern auflistet,
die autorisiert sind, auf das Computersystem zuzugreifen.
-
Vorzugsweise
stellt mindestens eine Managementschnittstellenfunktion einer Serviceeinheit mindestens
eine der folgenden Funktionen bereit: Bereitstellung, Überwachung
und Modifikation der Serviceeinheit.
-
Das
System umfasst ferner eine Bibliothek, die mindestens eine der folgenden
Funktionen speichert: eine wiederverwendbare Makrofunktion, eine anwendungsprogrammierende
Schnittstellenfunktion und eine Managementschnittstellenfunktion,
die von einer Serviceeinheit verwendet wird.
-
Der
Servicebus ist vorzugsweise über
ein Netz verteilt.
-
Vorzugsweise
sind die Serviceeinheiten über ein
Netz verteilt.
-
Nach
einem zweiten Aspekt sieht die Erfindung ein Verfahren zum Betreiben
eines Computersystems zum Bereitstellen von Dienstleistungen mit einem
computerlesbaren Medium vor, das Software beinhaltet, um einen Computer
zu betreiben, wobei die Software mehrere softwareimplementierte
Serviceeinheiten, mehrere softwareimplementierte Schnittstelleneinheiten
und einen softwareimplementierten Servicebus umfasst, wobei das
Verfahren die folgenden Schritte umfasst: Bereitstellen einer an den
Servicebus gekoppelten ersten Serviceeinheit und einer an den Servicebus
gekoppelten ersten Schnittstelleneinheit; Weitergeben eines ersten
Ereignisses von der ersten Schnittstelleneinheit an die erste Serviceeinheit über den
Servicebus und Weiterleiten eines zweiten Ereignisses über den
Servicebus von der ersten Serviceeinheit an die erste Schnittstelleneinheit,
eine an den Servicebus gekoppelte zweite Schnittstelleneinheit und
eine an den Servicebus gekoppelte zweite Serviceeinheit.
-
Vorzugsweise
umfasst das Verfahren den Schritt des Weiterleitens eines dritten
Ereignisses von der zweiten Serviceeinheit an die zweite Schnittstelleneinheit über den
Servicebus.
-
Vorzugsweise
umfasst das Verfahren ferner den Schritt des Weiterleitens eines
vierten Ereignisses von der zweiten Serviceeinheit an die erste
Serviceeinheit über
den Servicebus.
-
Das
Verfahren umfasst ferner vorzugsweise den Schritt des Weiterleitens
eines fünften
Ereignisses von der ersten Serviceeinheit an die erste Schnittstelleneinheit über den
Servicebus.
-
Vorzugsweise
umfasst das Verfahren ferner den Schritt des Weiterleitens eines
sechsten Ereignisses von der zweiten Serviceeinheit an eine dritte Serviceeinheit über den
Servicebus.
-
Das
Verfahren umfasst vorzugsweise ferner den Schritt des Bestimmens
einer Reihenfolge einer Reaktion zum Weiterleiten eines siebten
Ereignisses von einer Schnittstelleneinheit oder einer Serviceeinheit,
wenn mindestens zwei Einheiten das dritte Ereignis empfangen sollen.
-
Vorzugsweise
umfasst das Verfahren ferner die folgenden Schritte: Empfangen einer
Anforderung von einem Benutzer, auf das System zuzugreifen; Verifizieren,
daß der
Benutzer autorisiert ist, auf das System zuzugreifen, unter Verwendung
einer Dienstleistungsregistrierdatenbank; Bestimmen der Dienstleistungen,
die der Benutzer abonniert hat; dynamisches Installieren der Serviceeinheiten
entsprechend den abonnierten Dienstleistungen auf dem Servicebus
und dynamisches Installieren der Schnittstelleneinheiten, die von
den dynamisch installierten Serviceeinheiten benötigt werden und nicht an den Servicebus
gekoppelt sind, auf dem Servicebus.
-
Das
Verfahren umfasst ferner vorzugsweise die folgenden Schritte: dynamisches
Deinstallieren der den abonnierten Dienstleistungen entsprechenden
Serviceeinheiten von dem Servicebus und dynamisches Deinstallieren
der von den an den Servicebus gekoppelten Serviceeinheiten nicht
benötigten Schnittstelleneinheiten
von dem Servicebus.
-
Das
Verfahren umfasst vorzugsweise ferner den Schritt des dynamischen
Installierens einer Serviceeinheit oder einer Schnittstelleneinheit
mit den mehreren Serviceeinheiten bzw. den mehreren Schnittstelleneinheiten
auf dem Servicebus.
-
Vorzugsweise
umfasst das Verfahren ferner die Schritte des Detektierens eines
Fehlers in einer Serviceeinheit oder einer Schnittstelleneinheit
und des Zurücksetzens
der Serviceeinheit oder der Schnittstelleneinheit mit dem detektierten
Fehler.
-
Das
Verfahren umfasst ferner vorzugsweise die folgenden Schritte: Detektieren
eines von dem Servicebus in einer Serviceeinheit oder einer Schnittstelleneinheit
empfangenen inkorrekten Ereignisses; Senden einer Fehlermeldung
von der Serviceeinheit oder der Schnittstelleneinheit, die das inkorrekte empfangene
Ereignis detektiert, an den Servicebus; Protokollieren der Fehlermeldung;
Senden einer Rücksetzmeldung
an die Serviceeinheit oder die Schnittstellen-Ereignis von dem Servicebus
detektiert; und Rücksetzen
der Serviceeinheit oder der Schnittstelleneinheit, die das inkorrekte
empfangene Ereignis detektiert.
-
Die
Erfindung betrifft ferner ein Computersystem und ein Software enthaltendes
computerlesbares Medium zum Durchführen des Verfahrens nach dem
zweiten Aspekt.
-
Das
erfindungsgemäße System
umfasst ein Computersystem mit einem computerlesbaren Medium, das
Software zum Betreiben eines Computers umfasst. Das System beinhaltet
mehrere softwareimplementierte Serviceeinheiten, mehrere softwareimplementierte
Schnittstelleneinheiten und einen softwareimplementierten Servicebus.
Jede Serviceeinheit erzeugt und empfängt Ereignisse und weist mindestens
eine der folgenden Funktionen auf: eine wiederverwendbare Makrofunktion,
Anwendungsprogrammierungs-Schnittstellenfunktion, und eine Managementschnittstellenfunktion.
Jede Serviceeinheit entspricht einem Benutzerabonnement für eine Dienstleistung.
Jede Schnittstelleneinheit erzeugt und empfängt Ereignisse und ist mit
einem Kommunikationssystem gekoppelt und kommuniziert mit dem Kommunikationssystem
unter Verwendung eines Kommunikationsprotokolls. Der Servicebus
verbindet die Schnittstelleneinheiten und die Serviceeinheiten und
leitet Ereignisse zwischen den Schnittstelleneinheiten und den Serviceeinheiten.
-
Das
erfindungsgemäße Verfahren
betrifft ein Verfahren zum Betreiben eines Computersystems für das Bereitstellen
von Dienstleistungen, das ein zum Betreiben eines Computers dienende
Software enthaltendes computerlesbares Medium umfasst. Die Software
umfasst softwareimplementierte Serviceeinheiten, softwareimplementierte
Schnittstelleneinheiten und einen softwareimplementierten Servicebus.
Eine erste Serviceeinheit und eine erste Schnittstelleneinheit sind
mit dem Servicebus verbunden. Ein erstes Ereignis wird von der ersten
Schnittstelleneinheit an die erste Serviceeinheit über den
Servicebus weitergeleitet. Ein zweites Ereignis wird über den Servicebus
von der ersten Serviceeinheit zur ersten Schnittstelleneinheit,
einer mit dem Servicebus verbundenen zweiten Schnittstelleneinheit
oder einer mit dem Servicebus verbundenen zweiten Serviceeinheit
geleitet.
-
Das
erfindungsgemäße System
umfasst ein Computersystem mit einem computerlesbaren Medium, das
Software zum Betreiben eines Computers gemäß der vorliegenden Erfindung
enthält.
-
Der
erfindungsgemäße Herstellungsartikel umfasst
ein computerlesbares Medium, das Software zum Betreiben eines Computers
gemäß der vorliegenden
Erfindung enthält.
-
Die
genannten Aufgaben und Vorteile der Erfindung sind für die durch
die Erfindung erreichbaren Aufgaben und Vorteile illustrativ und
nicht umfassend. Somit ergeben sich diese und andere Aufgaben und
Vorteile der Erfindung aus der nachfolgenden Beschreibung oder sie
sind durch die praktische Ausführung
der Erfindung sowohl gemäß den vorliegenden
Ausführungsbeispielen,
als auch in für
den Fachmann ersichtlicher Weise modifizierter Art erlernbar.
-
Kurzbeschreibung der Zeichnungen
-
Ausführungsbeispiele
der Erfindung werden im folgenden ausführlicher anhand der Zeichnungen beschrieben,
wobei gleiche Bezugszeichen gleiche Elemente bezeichnen.
-
1 zeigt
einen Überblick über ein
System zum Bereitstellen von Dienstleistungen unter Verwendung der
Erfindung.
-
2 zeigt
eine Serviceeinheit.
-
3 zeigt
eine Bibliothek.
-
4 zeigt
eine Schnittstelleneinheit.
-
5 zeigt
eine Dienstleistungsregistrierdatenbank.
-
6 zeigt
ein Flussdiagramm für
die Bereitstellung von Dienstleistungen in bezug auf den Systemüberblick
in 1.
-
7 zeigt
ein Flussdiagramm für
die Durchführung
einer Sitzung.
-
8 zeigt
ein Flussdiagramm für
die Fehlererkennung und -korrektur.
-
9 zeigt
ein Flussdiagramm für
die Fehlererkennung und -korrektur.
-
10 zeigt
das Leiten von Ereignissen.
-
11 zeigt
das Leiten von Ereignissen.
-
12 zeigt
ein erstes Beispiel für
die Bereitstellung von Dienstleistungen unter Verwendung der Erfindung.
-
13 zeigt
ein zweites Beispiel für
die Bereitstellung von Dienstleistungen unter Verwendung der Erfindung.
-
14 zeigt
einen Überblick über ein
System zum Bereitstellen von Dienstleistungen unter Verwendung des
Standes der Technik.
-
Detaillierte
Erfindungsbeschreibung
-
Die
Beschreibung der Erfindung ist in Abschnitte aufgeteilt, die Definitionen,
das Bereitstellen von Dienstleistungen und Beispiele betreffen.
-
Definitionen
-
In
der gesamten Beschreibung der Erfindung gelten die folgenden Definitionen:
Eine "Sitzung" bezeichnet einen
Zeitraum organisierter Kommunikation zwischen einem Benutzer und
einem oder mehr Benutzern oder Kommunikationssystemen. Beispiele
für Sitzungen
umfassen: ausgehende Anrufe; gebündelte
Ferngespräche;
eingehende Anrufe; Fax/Daten-Unterstützung; Dienstleistungen des
Plain Ordinary Telephone Service (POTS); netzbasierte Verwaltung;
Notrufnummern; Equal Access Services, die es einem Benutzer ermöglichen,
den Ferngesprächsanbieter
zu wählen,
wodurch Konkurrenz unter den Anbietern gewährleistet ist; Funktionen des
Custom Local Access Subscriber Service (CLASS); Notstromversorgung,
einschließlich
der Möglichkeit,
ein Telefon von dem Telefondienstleistungsprovider aus mit Energie
zu versehen, und der Möglichkeit,
das Telefon ohne Steckdose zu betreiben; Centrex-Dienstleistungen, welche Telefondienstleistungen
für kleine
bis mittlere Betriebe umfassen; Videoanrufe; und Multimediakonferenzen.
-
Eine "Dienstleistung" ist ein kommunikationsbezogener
Service, der während
einer Sitzung verwendet wird: Eine Sitzung verwendet null oder mehr
Dienstleistungen. Beispiele für
Arten von Dienstleistungen umfassen: Telefonie-Dienstleistungen, wie Auskunft mit Rufweiterleitung
und Anklopf-Service; Da ten-Dienstleistungen; Medienkonvertierungsdienstleistungen;
Informationsdienstleistungen und Benachrichtigungsdienstleistungen.
-
Ein "Kommunikationssystem" bezeichnet ein für die Kommunikation
verwendetes Computersystem. Beispiele für ein Kommunikationssystem
umfassen: ein E-Mail-Servicesystem, ein Telefonbuchservicesystem,
ein Kreditkartenzahlungsservicesystem, eine Kabel-Set-Top-Box (CSTB),
ein Voice-Mail-System, ein Sprachbenachrichtigungssystem, eine Spracherkennungseinheit,
eine Einheit zum Umwandeln von Text in Sprache, einen Aufzeichnungs-
und Wiedergabeserver, ein Pagingsystem, eine Konferenzschaltungseinheit,
eine ferngesteuerte Konferenzschaltungseinheit, eine interaktive
Sprachausgabeeinheit, eine Faxeinheit, ein persönliches Informationsverwaltungssystem,
eine drahtlose Vorrichtung, ein Netzwerk, eine Netzwerkschnittstelle,
eine Einheit zum Verbinden eines Telefonienetzwerks und eines Paketnetzwerks,
eine Einheit, welche einen Weg durch das Paketnetzwerk garantiert,
eine Sicherheitsvorrichtung und ein Haushaltsgerät.
-
Ein "Kommunikationsprotokoll" bezeichnet einen
Satz von Regeln oder Standards, die einem Computer die Verbindung
und den Austausch von Informationen mit einem anderen Computer mit
möglichst
wenig Fehlern ermöglichen.
Kommunikationsprotokolle können
zum Austausch von Informationen mit einem Kommunikationssystem unter
Verwendung verschiedener Arten der Übermittlung, beispielsweise
Leitungsübertragung,
drahtlose Übertragung,
Kabelübertragung
und Datenübertragung,
dienen. Beispiele für
ein Kommunikationsprotokoll umfassen: Advanced Intelligent Networking
(AIN), das der Kommunikation zwischen einem Schaltsystem und einem
Servicesteuerpunkt dient; Intelligent Networking (IN) Capability
Set 2 (CS-2), das der Kommunikation zwischen einem Schaltsystem
und einem Servicesteuerpunkt dient; Custom Application Management
For Enhanced Logic (CAMEL), das der Kommunikation zwischen einem
drahtlosen Schaltsystem und einem Servicesteuerpunkt dient; Short Messaging
Service (SMS), das der Kommunikation mit einem drahtlosen System
zum Übertragen
von kurzen Textnachrichten an Funkvorrichtungen dient; Wireless
Application Protocol (WAP), das drahtlosen Vorrichtungen Zugang
zu einem Netzwerk, beispielsweise dem Internet oder einem Inteanet,
ermöglicht; Telephony
Application Programming Interface (TAPI), das einer Anwendung die
Steuerung grundlegender Telefoniefunktionen eines Telefons oder
PBX ermöglicht;
Simple Mail Transfer Protocol (SMTP), das dem Senden von E-Mails
von einem System an ein anderes System ermöglicht; Session Initiation
Protocol (SIP), das der Signalübertragung
zwischen Internet-Protokoll(IP)-Telefonieendpunkten und Servern dient;
Lightweight Directory Application Protocol (LDAP), das dem Auffinden
von Telefonbuchinformationen dient; H323, das der Kommunikation
zwischen IP-Telefonieendpunkten
und Servern dient; und Real Time Streaming Protocol (RTSP), das
der Kommunikation mit einem und der Steuerung eines Medienservers
dient.
-
Ein "Computer" ist eine Vorrichtung,
die in der Lage ist, eine strukturierte Eingabe anzunehmen, die
strukturierte Eingabe nach vorgeschriebenen Regeln zu verarbeiten,
und Ergebnisse der Verarbeitung als Ausgang zu erzeugen. Beispiele
für einen Computer
umfassen: einen Computer; einen Allzweckcomputer; einen Supercomputer;
ein Mainframe; einen Super-Minicomputer; einen Minicomputer; eine
Workstation; einen Mikrocomputer; einen Server; einen Interaktiven
Fernseher; und eine Hybridkombination aus einem Computer und einem
interaktiven Fernseher. Computer bezeichnet hier ebenfalls zwei
oder mehr für
die Daten- oder Informationsübertragung
durch ein Netzwerk miteinander verbundene Computer. Ein Beispiel
für einen
derartigen Computer ist ein verteiltes Computersystem zum Verarbeiten
von Informationen mittels Computern, die durch ein Netzwerk miteinander
verbunden sind.
-
Ein "computerlesbares
Medium" bezeichnet eine
Speichervorrichtung, die dem Speichern von Daten dient, auf welche
ein Computer Zugriff hat. Beispiele für ein computerlesbares Medium
umfassen: eine Magnetfestplatte; eine Floppy-Disc; eine optische Scheibe, beispielsweise
eine CD-ROM; ein Magnetband; ein Speicherchip; und eine Trägerwelle,
die zum Tragen computerlesbarer elektronischer Daten dient, wie
sie beim Übertragen
und Empfangen von E-Mail oder beim Zugang zu einem Netzwerk verwendet
werden.
-
"Software" bezeichnet vorgeschriebene
Regeln zum Betreiben eines Computers. Beispiele für Software
sind unter anderem: Software; Codesegmente; Befehle; Computerprogramme;
und programmierte Logik.
-
Ein "Computersystem" ist ein System mit
einem Computer, wobei der Computer ein computerlesbares Medium aufweist,
das zum Betreiben des Computers erforderliche Software beinhaltet.
-
Ein "Netzwerk" bezeichnet eine
Anzahl von Computern und zugehörigen
Vorrichtungen, die durch Kommunikationseinrichtungen verbunden sind.
Ein Netzwerk weist permanente Verbindungen, wie Kabel, oder temporäre Verbindungen,
wie durch Telefone oder andere Kommunikationsverbindungen hergestellte
Verbindungen auf. Beispiele für
ein Netzwerk sind: das Internet; ein Inteanet; ein lokales Netzwerk
(LAN); ein regionales Netzwerk (WAN), und eine Kombination von Netzwerken,
wie dem Internet und einem Inteanet.
-
Bereitstellen
von Dienstleistungen
-
1 zeigt
einen Überblick über ein
System zum Bereitstellen von Dienstleistungen unter Verwendung der
Erfindung. Ein Dienstleistungsprovider 1 implementiert
Kommunikationssitzungen für
Benutzer 2. Jeder Benutzer 2 verwendet ein Kommunikationssystem 3,
um mit anderen Benutzern 2 und anderen Kommunikationssystemen 3 zu
kommunizieren.
-
Der
Dienstleistungsprovider 1 stellt Dienstleistungen zur Benutzung
durch die Benutzer 2 zur Verfügung. Der Dienstleistungsprovider 1 stellt
die Dienstleistungen Benutzern 2 unter Verwendung von softwareimplementierten
Serviceeinheiten 5, einer softwareimplementierten Bibliothek 6,
eines softwareimplementierten Servicebus 7, softwareimplementierter
Schnittstelleneinheiten 8 und einer softwareimplementierten
Dienstleistungsregisterdatenbank 9 bereit.
-
Jede
Dienstleistung wird durch den Dienstleistungsprovider 1 unter
Verwendung einer oder mehr Serviceeinheiten 5 implementiert.
Jede Dienstleistungseinheit 5 entspricht einem Abonnement
einer bestimmten Dienstleistung durch einen Benutzer 2.
Wie in 5 dargestellt und im folgenden beschrieben, umfasst
die Dienstleistungsregisterdatenbank 9 die von dem Dienstleistungsprovider 1 angebotenen
Dienstleistungen und die Serviceeinheiten 5 für jede Dienstleistung 4.
Die Service-Einheiten 5 sind unter Verwendung von Funktionen
implementiert, auf die in der softwareimplementierten Bibliothek 6 zugegriffen
wird.
-
Der
Servicebus 7 leitet Ereignisse zwischen den Serviceeinheiten 5 und
den Schnittstelleneinheiten 8. Jede Serviceeinheit 5 erzeugt
und empfängt Ereignisse
und jede Schnittstelleneinheit 8 erzeugt und empfängt Ereignisse.
Ein Ereignis ist eine Aktion oder ein Vorkommnis, das oftmals von
einem Benutzer erzeugt wird, auf das eine Serviceeinheit oder eine
Schnittstelleneinheit reagieren kann.
-
Eine
Schnittstelleneinheit 8 kommuniziert mit einem oder mehr
Kommunikationssystemen 3 und ein Kommunikationssystem 3 kommuniziert
mit null oder mehr Benutzern 2.
-
Der
Dienstleistungsprovider 1 ist unter Verwendung eines Computersystems
mit einem computerlesbaren Medium implementiert, das zum Betreiben
eines Computers erforderliche Software umfasst. Gemäß der Definition
von "Computer" können die
verschiedenen Komponenten des Dienstleistungsproviders 1 auf
einem einzigen Computer implementiert oder auf zwei oder mehr Computer über ein
Netzwerk verteilt sein. Jede der Serviceeinheiten 5, die
Bibliothek 6, der Servicebus 7, jede der Schnittstelleneinheiten 8,
und die Dienstleistungsregistrierdatenbank 9 können jeweils
auf einem einzelnen Computer implementiert oder über ein Netzwerk auf zwei oder
mehr Computer verteilt sein.
-
Der
Dienstleistungsprovider 1 ist vorzugsweise unter Verwendung
on Internetentwicklungstools oder Common Object Request Broker Architecture
(CORBA) Tools implementiert. Beispiele für Internetentwicklungstools
sind: die plattformunabhängige
Programmiersprache Java; Integrated Development Environments (DIE)
wie Jbuilder und Visual Cafè;
und Java-Tools wie Java Beans.
-
Aufgrund
der modularen Natur der Erfindung hinsichtlich der Serviceeinheiten
und der Schnittstelleneinheiten können die Serviceeinheiten und
die Schnittstelleneinheiten von verschiedenen Parteien unter Verwendung
handelsüblicher
Software oder speziell entwickelter Software entwickelt werden. Ferner
ist die Struktur des Dienstleistungsproviders 1 skalierbar
und neue Serviceeinheiten und neue Schnittstelleneinheiten können dem
Dienstleistungsprovider 1 leicht hinzugefügt werden.
-
2 zeigt
eine Serviceeinheit 5, Eine Serviceeinheit 5 stellt
ein Abonnement einer Dienstleistung 4 durch einen Kunden 2 dar.
Die Serviceeinheit 5 umfasst eine Anzahl von Funktionen.
Beispielsweise umfasst die Serviceeinheit 5 mindestens
eine der folgenden Funktionen: eine Makrofunktion 11, eine Anwendungsprogrammierungs-Schnittstellenfunktion
(API) 12, und eine Managementschnittstellenfunktion 13.
Die Funktionen einer Serviceeinheit sind wiederverwendbar, was bedeutet,
dass sie von anderen Serviceeinheiten über die Bibliothek 6 verwendbar sind.
-
Die
wiederverwendbare Makrofunktion 11 gibt eine allgemein
verwendete Subroutine wieder. Die Anwendungsprogrammierungs-Schnittstellenfunktion 12 repräsentiert
eine Programmierschnittstelle mit einem externen Protokoll. Die
Managementschnittstellenfunktion 13 ist eine Funktion,
die mindestens entweder das Provisioning, das Überwachen oder das Modifizieren
einer Serviceeinheit bewerkstelligt. Das Provisioning einer Serviceeinheit
ermöglicht
es einem Benutzer oder einem Dienstleistungsprovider mit der Dienstleistung
einhergehende Daten und/oder Informationen zu modifizieren. Das Überwachen
einer Serviceeinheit ermöglicht
es dem Benutzer oder dem Dienstleistungsprovider, die Nutzung und
den Status der Dienstleistung unter Verwendung von Statistiken und
Indikatoren zu bestimmen. Die Modifizierung einer Serviceeinheit
ermöglicht
es dem Dienstleistungsprovider, mit der Dienstleistung verbundene Daten
zu verändern,
wodurch das Verhalten der Dienstleistung für alle Teilnehmer verändert wird.
-
Die
Serviceeinheit 5 empfängt
ein Ereignis 16 von dem Servicebus 7. Basierend
auf dem empfangenen Ereignis 16 erzeugt die Serviceeinheit 5 mindestens
ein Ereignis 15 unter Verwendung der Funktionen 11–13 und
leitet das Ereignis 15 an den Servicebus 7.
-
3 stellt
die Bibliothek 6 dar. Die Bibliothek 6 speichert
zahlreiche der Funktionen, die für das
Implementieren der Serviceeinheiten 5 verwendet werden.
Beispielsweise speichert die Bibliothek 6 wiederverwendbare
Makrofunktionen 17, Anwendungsprogrammierungs-Schnittstellenfunktionen 18 und
Managementschnittstellenfunktionen 19. Die wiederverwendbaren
Makrofunktionen 17 in der Bibliothek 6 umfassen
die wiederverwendbare Makrofunktion 11 in der Serviceeinheit 5 von 2,
die Anwendungsprogrammierungs-Schnittstellenfunktionen 18 umfassen
die Anwendungsprogrammierungs-Schnittstellenfunktion 12 in
der Serviceeinheit 5 der 2, und die
Managementschnittstellenfunktionen 19 in der Bibliothek 6 umfassen
die Managementschnittstellenfunktion 13 in der Serviceeinheit 5 der 2.
Die Serviceeinheiten 5 werden unter Verwendung der durch
die Bibliothek bereitgestellten Funktionen gebildet.
-
4 zeigt
eine Schnittstelleneinheit 8. Die Schnittstelleneinheit 8 verwendet
ein Kommunikationsprotokoll 21 für die Kommunikation zwischen
dem Servicebus 7 und einem oder mehr Kommunikationssystemen 3.
Nach dem Empfang einer Protokollnachricht 23 von dem Kommunikationssystem 3 erzeugt
die Schnittstelleneinheit 8 mindestens ein Ereignis 22 unter
Verwendung des Kommunikationsprotokolls 21, und die Schnittstelleneinheit 8 leitet das
Ereignis 22 an den Servicebus 7 weiter. Nach dem
Empfang eines Ereignisses 24 von dem Servicebus 7 erzeugt
die Schnittstelleneinheit 8 eine Protokollnachricht 25 unter
Verwendung des Kommunikationsprotokolls 21 und leitet die
Protokollnachricht 25 an mindestens ein Kommunikationssystem 3 weiter.
-
5 zeigt
eine Dienstleistungsregisterdatenbank 9. Mittels der Dienstleistungsregisterdatenbank 9 verfolgt
der Dienstleistungsprovider 1 die von dem Dienstleistungsprovider 1 bereitgestellten Dienstleistungen,
die Benutzer 2, die berechtigt sind, auf den Dienstleistungsprovider 1 zuzugreifen,
und die Dienstleistungen 4, auf die jeder Benutzer 2 berechtigterweise
Zugriff hat. Die Dienstleistungsregisterdatenbank 9 umfasst
eine Dienstleistungsliste 31 der Dienstleitungen 4,
welche der Dienstleistungsprovider 1 anbietet. Die Dienstleistungsregisterdatenbank 9 enthält ferner
eine Benutzerliste 32 der Benutzer 33, die berechtigt
sind auf den Dienstleistungsprovider 1 zuzugreifen. Jeder
in der Benutzerliste 32 aufgeführte Benutzer 33 weist
eine Liste der Serviceeinheiten 5 auf, auf welche der Benutzer 33 berechtigten
Zugriff hat. Abonniert ein Benutzer 33 eine neue Dienstleistung 4,
erzeugt die Dienstleistungsregisterdatenbank 9 eine neue
Serviceeinheit 5 für
den Benutzer entsprechend der neu abonnierten Dienstleistung und
listet die neue Serviceeinheit 5 in der Benutzerliste 32.
Beendet ein Benutzer das Abonnement einer Dienstleistung, wird die
entsprechende Serviceeinheit 5 aus der Benutzerliste 32 des Benutzers
entfernt.
-
Beispielsweise
weist die in 5 dargestellte Dienstleistungsregisterdatenbank 9 eine
exemplarische Dienstleistungsliste 31 und eine exemplarische
Benutzerliste 32 auf. Die Dienstleistungsliste 31 umfasst
drei Dienstleistungen 32, die Dienstleistung a, die Dienstleistung
b und die Dienstleistung c. Die Benutzerliste 32 umfasst
drei Benutzer 33, den Benutzer 1, den Benutzer 2 und
den Benutzer 3. Der Benutzer 1 hat zwei Dienstleistungen 4,
die Dienstleistung a und die Dienstleistung b, abonniert, und zwei
entsprechende Serviceeinheiten 5, die Serviceeinheit a1
und die Serviceeinheit b1, werden für den Benutzer 1 in
der Dienstleistungsregisterdatenbank 9 aufgeführt. Der
Benutzer 2 hat drei Dienstleistungen 4 abonniert,
die Dienstleistung a, die Dienstleistung b und die Dienstleistung
c, und drei entsprechende Serviceeinheiten 5, die Serviceeinheit
a2, die Serviceeinheit b2 und die Serviceeinheit c2, sind für den Benutzer 2 in
der Dienstleistungsregisterdatenbank 9 aufgeführt. Der
Benutzer 3 hat eine Dienstleistung 4, die Dienstleistung
b, abonniert, und eine entsprechende Serviceeinheit 5,
die Serviceeinheit b3, wird für
den Benutzer 3 in der Dienstleistungsregisterdatenbank 9 aufgeführt.
-
6 zeigt
ein Flussdiagramm für
das Bereitstellen von Dienstleistungen in bezug auf den Systemüberblick
nach 1. In Block 41 ist der in 1 dargestellte
Servicebus 7 vorgesehen. Der Servicebus 7 verbindet
Serviceeinheiten 5 und Schnittstelleneinheiten 8 und
greift auf die Dienstleistungsregisterdatenbank 9 zu.
-
In
Block 42 wird eine neue Dienstleistung in der Dienstleistungsregisterdatenbank 9 registriert. Die
Dienstleistungsliste 31 der 5 wird mit
der neuen Dienstleistung 4 aktualisiert.
-
In
Block 43 wird ein neuer Benutzer in der Dienstleistungsregisterdatenbank 9 registriert.
Die Benutzerliste wird mit dem neuen Benutzer 33 aktualisiert
und der neue Benutzer 33 führt die Serviceeinheiten 5 entsprechend
den Dienstleistungen 4 auf, welche der neue Benutzer 33 abonniert
hat. Ein Benutzer abonniert null oder mehr Dienstleistungen 4, und
die Anzahl der für
den Benutzer 33 gelisteten Serviceeinheiten 5 entspricht
der Anzahl der Dienstleistungen, die der Benutzer abonniert hat.
-
In
Block 44 wird für
einen in der Dienstleistungsregisterdatenbank 9 registrierten
Benutzer eine neue Dienstleistung hinzugefügt oder entfernt. Ein Benutzer 33 wird
mit dem Dienstleistungsprovider 1 registriert und in der
Dienstleistungsregisterdatenbank 9 aufgelistet. Der Benutzer 33 wünscht eine
von dem Dienstleistungsprovider 1 bereitgestellte Dienstleistung 4 hinzuzufügen oder
zu löschen.
Um eine Dienstleistung 4 hinzuzufügen, wird die Benutzerliste 32 ergänzt, indem
eine neue Serviceeinheit 5, die der gewünschten neuen Dienstleistung 4 für den Benutzer 33 entspricht,
hinzugefügt
wird. Um eine Dienstleistung 4 zu entfernen, wird die Benutzerliste 32 verändert, indem
die Serviceeinheit 5 gelöscht wird, welche der gelöschten Dienstleistung 4 für den Benutzer 33 entspricht.
-
In
Block 45 wird eine neue Serviceeinheit dynamisch auf dem
Servicebus installiert. Es ist eine neue Schnittstelleneinheit erforderlich,
wenn der Dienstleistungsprovider 1 eine Schnittstelle mit
einem Kommunikationssystem 3 herstellen muss, das ein Kommunikationsprotokoll
verwendet, das von keiner der existierenden Schnittstelleneinheiten 8 unterstützt wird.
Die neue Schnittstelleneinheit umfasst ein neues Kommunikationsprotokoll 21,
um mit dem neuen Typ von Kommunikationssystem eine Schnittstelle
zu bilden. Beim dynamischen Installieren der neuen Schnittstelleneinheit
wird die neue Schnittstelleneinheit ohne Auswirkung auf den Betrieb
existierender Serviceeinheiten 5, existierender Schnittstelleneinheiten 8 und
des Servicebus 7 installiert. Durch das dynamische Installieren
der neuen Schnittstelleneinheit muss der Servicebus 7 nicht
zurückgesetzt werden.
-
In
Block 47 führt
der Dienstleistungsprovider 1 Sitzungen mit Benutzern 2 durch.
Der Dienstleistungsprovider 1 ist in der Lage, eine oder
mehr Sitzungen gleichzeitig durchzuführen. Der Ablauf für die Durchführung einer
Sitzung ist in 7 dargestellt.
-
7 zeigt
ein Flussdiagramm zum Durchführen
einer Sitzung. In Block 51 fordert ein Benutzer 2 eine
Sitzung bei dem Dienstleistungsprovider 1 an. Die Anforderung
geht von dem Benutzer 2 über ein Kommunikationssystem 3 und
eine Schnittstelleneinheit 8 an den Servicebus 7.
-
In
Block 52 prüft
der Dienstleistungsprovider 1, ob der Benutzer 2 berechtigt
ist, auf den Dienstleistungsprovider 1 zuzugreifen. Der
Servicebus 7 greift auf die Dienstleistungsregisterdatenbank 9 zu,
um zu prüfen,
ob der Benutzer 2 als Benutzer 33 in der Benutzerliste 32 aufgeführt ist.
Wenn der Benutzer als Benutzer 33 in der Benutzerliste 32 aufgeführt ist, geht
der Ablauf zu Block 53 über.
Wenn der Benutzer nicht als Benutzer 33 in der Benutzerliste 32 aufgeführt ist,
wird dem Benutzer der Zugang zu dem Dienstleistungsprovider 1 verwehrt.
-
In
Block 53 installiert der Dienstleistungsprovider 1 dynamisch
die eine oder mehreren Serviceeinheiten 5 des Benutzers 2 auf
den Servicebus 7. Der Dienstleistungsprovider 1 greift
auf die Benutzerliste 32 in der Dienstleistungsregisterdatenbank 9 zu, um
die dynamisch auf den Servicebus 7 zu installierenden Serviceeinheiten 5 zu
bestimmen. Wenn eine Serviceeinheit 5 dynamisch auf den
Servicebus installiert wird, informiert die Serviceeinheit den Servicebus
darüber,
welche der einen oder mehreren Schnittstelleneinheiten die Dienstleistungseinheit
für den
korrekten Betrieb benötigt.
Wenn die erforderlichen Schnittstelleneinheiten nicht bereits auf
dem Servicebus installiert sind, installiert der Dienstleistungsprovider 1 dynamisch
die erforderlichen Schnittstelleneinheiten auf den Servicebus. Beim
dynamischen Installieren der einen oder mehreren neuen Serviceeinheiten
werden die Serviceeinheiten ohne Auswirkung auf den Betrieb existierender
Serviceeinheiten 5, existierender Schnittstelleneinheiten 8 und
des Servicebus 7 installiert. Durch das dynamische Installieren
der Serviceeinheiten muss der Servicebus 7 nicht zurückgesetzt
werden.
-
In
Block 55 führt
der Dienstleistungsprovider 1 die angeforderte Dienstleistung
aus. Auf die Funktionen 11–13 jeder Serviceeinheit 33 für die angeforderte
Dienstleistung 32 wird wie erforderlich von den Funktionen 17–19 in
der Bibliothek 6 aus zugegriffen.
-
Um
die angeforderte Dienstleistung durchzuführen, führt der Dienstleistungsprovider 1 eine
oder mehrere Funktionen aus, wie in den Blöcken 56–60 der 7 dargestellt.
In Block 56 leitet der Servicebus 7 ein Ereignis
von einer Schnittstelleneinheit 8 an eine Serviceeinheit 5.
Dies ist der erste Schritt für
beinahe sämtliche
Dienstleistungen. Im Block 57 leitet der Servicebus 7 ein
Ereignis von einer Serviceeinheit 5 an eine Schnittstelleneinheit 8 weiter.
In Block 58 leitet der Servicebus ein Ereignis von einer
Serviceeinheit 5 an eine Schnittstelleneinheit 8 weiter.
In Block 58 leitet der Servicebus ein Ereignis von einer Serviceeinheit 5 an
eine andere Serviceeinheit 5 weiter.
-
In
Block 59 verwaltet der Servicebus 7 den Vorrang
zwischen den Serviceeinheiten 5 und den Schnittstelleneinheiten 8.
Wenn beispielsweise ein Ereignis an zwei oder mehr Serviceeinheiten 5 oder Schnittstelleneinheiten 8 weitergeleitet
werden soll, bestimmt der Servicebus 7 die Reihenfolge
der Serviceeinheiten 5 und der Schnittstelleneinheiten 8, welche
das Ereignis empfangen sollen. Ferner kann jede Serviceeinheit den
Ablauf durch Verändern
des Ereignisses, Verbrauchen des Ereignisses oder Passierenlassen
des Ereignisses auf den Servicebus 7, wo es von der nächsten Serviceeinheit
verarbeitet wird, verändern.
Wenn der Servicebus 7 keine Interaktionen zwischen zwei
oder mehr Einheiten handhaben kann, installiert der Servicebus 7 dynamisch ein
eine Interaktionsserviceeinheit auf den Servicebus. Die Interaktionsserviceeinheit
bestimmt, wie zwei oder mehr bestimmte Serviceeinheiten bei dem gegebenen
Zustand und der Umgebung des Servicebus 7 interagieren.
-
In
Block 60 führt
der Dienstleistungsprovider 1 eine Fehlererkennung und
-korrektur durch, die im folgenden anhand der 8 und 9 beschrieben wird.
-
Zunächst wird
ein Ereignis von einer Schnittstelleneinheit an eine Serviceeinheit über den
Servicebus und wie durch den Servicebus bestimmt weitergeleitet.
Nachdem das Ereignis von allen anwendbaren Serviceeinheiten verarbeitet
wurde, wird die Sitzung unterbrochen, wobei auf das nächste Ereignis
von einer Schnittstelleneinheit gewartet wird.
-
In
Block 61 endet die Sitzung mit dem Dienstleistungsprovider 1,
und der Benutzer 2 wird von dem Dienstleistungsprovider 1 getrennt.
Die Sitzung endet, wenn beispielsweise der Benutzer 2 auflegt.
-
In
Block 62 deinstalliert der Dienstleistungsprovider 1 dynamisch
die Serviceeinheiten 5 für den Benutzer 2 von
dem Servicebus 7. Der Dienstleistungsprovider 1 deinstalliert
ferner dynamisch die Schnittstelleneinheiten 8, die von
keiner der Serviceeinheiten 5 benötigt werden, welche auf dem
Servicebus 7 installiert bleiben. Durch das dynamische Deinstallieren
der einen oder mehre ren Serviceeinheiten 5 für den Benutzer 2 und
jeder Schnittstelleneinheit 8, werden die Serviceeinheiten
und jegliche Schnittstelleneinheit ohne Auswirkung auf den Betrieb
existierender Serviceeinheiten 5, existierender Schnittstelleneinheiten 8 und
des Servicebus 7 dynamisch deinstalliert. Durch das dynamische
Deinstallieren der Serviceeinheiten und jeglicher Schnittstelleneinheiten
muss der Servicebus 7 nicht zurückgesetzt werden.
-
8 zeigt
ein Flussdiagramm für
die Fehlererkennung und -korrektur zur Verwendung in Block 60 in 7.
In Block 71 erkennt eine Serviceeinheit 5 oder
eine Schnittstelleneinheit 8 einen Fehler. Beispiele für einen
Fehler umfassen: Empfangen eines inkorrekten Ereignisses von dem
Servicebus; Empfangen eines inkorrekt formatierten Ereignisses;
oder Empfangen eines unerwarteten Ereignisses. Ein Fehler wird von
einer Serviceeinheit oder eine Schnittstelleneinheit erkannt, welche
dem Servicebus von dem Fehler Kenntnis gibt.
-
In
Block 72 setzt sich die Serviceeinheit 5 oder
die Schnittstelleneinheit 8, welche den Fehler erkannt
hat, selbst zurück.
Die erkennende Serviceeinheit 5 oder Schnittstelleneinheit 8 setzt
sich selbst zurück,
indem sie eine dienstleistungsspezifische Aktion durchführt, um
den Fehler unkompliziert zu beheben.
-
9 zeigt
ein Flussdiagramm zur Fehlererkennung und -korrektur zur Verwendung
mit dem Block 60 in 7. In Block 75 erkennt
eine Serviceeinheit 5 oder eine Schnittstelleneinheit 8 ein
von dem Servicebus 7 kommendes inkorrektes Ereignis. Die
Serviceeinheit 5 oder die Schnittstelleneinheit 8 erwarten
den Empfang einer bestimmten Art von Ereignis von dem Servicebus 7 und
empfangen stattdessen ein anderes Ereignis.
-
In
Block 76 sendet die Serviceeinheit 5 oder die
Schnittstelleneinheit 8, die den Fehler erkannt hat, eine
Fehlernachricht an den Servicebus 7. Beispielsweise handelt
es sich bei der Fehlernachricht um ein unerwartetes Ereignis.
-
In
Block 77 zeichnet der Servicebus die Fehlernachricht. Die
Fehlernachricht wird von einem in 1 nicht
dargestellten Ereignisverwaltungssystem des Dienstleistungsproviders 1 aufgezeichnet.
-
In
Block 78 sendet der Servicebus 7 eine Rücksetznachricht
an die Serviceeinheit 5 oder die Schnittstelleneinheit 8,
die den Fehler erkannt hat. Beispielsweise handelt es sich bei der
Fehlernachricht um ein unerwartetes Ereignis.
-
In
Block 79 setzt sich die Serviceeinheit 5 oder
die Schnittstelleneinheit 8, die den Fehler erkannt hat,
wie in Block 72 selbst zurück.
-
10 und 11 zeigen
das Leiten von Ereignissen unter Verwendung des Servicebus 7.
Aus Gründen
der Klarheit sind die übrigen
Elemente des Systemüberblicks
von 1 in den 10 und 11 nicht
dargestellt. Die 10 und 11 zeigen
drei grundlegende Arten von Ereignisweiterleitung: das Leiten eines
Ereignisses durch den Servicebus von einer Schnittstelleneinheit
an eine Serviceeinheit; das Leiten eines Ereignisses durch den Servicebus
von einer Serviceeinheit an eine Schnittstelleneinheit; und das
Leiten eines Ereignisses durch den Servicebus von einer Serviceeinheit
zu einer anderen Serviceeinheit.
-
10 zeigt
eine durch die Serviceeinheiten 81 und 82 implementierte
Dienstleistung. In 10 verbindet der Servicebus 7 die
beiden Serviceeinheiten 81 und 82 und zwei Schnittstelleneinheiten 83 und 84.
Die Schnittstelleneinheit 83 erzeugt ein Ereignis 85,
das an die Serviceeinheit 81 über den Servicebus 7 weitergeleitet
wird. Nach dem Empfangen des Ereignisses 85 erzeugt die
Serviceeinheit 81 ein Ereignis 86, das über den
Servicebus 7 an die Serviceeinheit 82 weitergeleitet
wird. Nach dem Empfang des Ereignisses 86 erzeugt die Serviceeinheit 82 ein Ereignis 87,
das über
den Servicebus 7 an die Schnittstelleneinheit 84 weitergeleitet
wird.
-
11 zeigt
eine durch die Serviceeinheiten 81 und 91 implementierte
Dienstleistung. In 11 verbindet der Servicebus 7 drei
Serviceeinheiten 81, 82 und 94 und zwei
Schnittstelleneinheiten 83 und 84. Die Schnittstelleneinheit 83 erzeugt
ein Ereignis 92, das an die Serviceeinheit 81 über den
Servicebus 7 weitergeleitet wird. Nach dem Empfangen des
Ereignisses 92 erzeugt die Serviceeinheit 81 ein
Ereignis 93, das über
den Servicebus 7 an die Serviceeinheit 91 weitergeleitet
wird. Nach dem Empfang des Ereignisses 93 erzeugt die Serviceeinheit 91 ein
Ereignis 94, das über
den Servicebus 7 an die Serviceeinheit 81 weitergeleitet
wird. Nach dem Empfang des Ereignisses 94 erzeugt die Serviceeinheit 81 ein Ereignis 95,
das über
den Servicebus 7 an die Schnittstelleneinheit 83 weitergeleitet
wird.
-
Durch
das Weiterleiten eines Ereignisses, wie in den 10 und 11 dargestellt,
bestimmt der Servicebus 7 den Zielort des Ereignisses.
Der Servicebus 7 bestimmt, dass ein Ereignis von einer Einheit
zu einer anderen Einheit weitergeleitet werden soll, indem er die
Art und die Klassifizierung des Ereignisses berücksichtigt.
-
Beispiele
-
12 zeigt
ein erstes Beispiel für
die Bereitstellung von Dienstleistungen unter Verwendung der Erfindung.
In 12 ist ein Ursprungsanruf eines Benutzers des
Dienstleistungsproviders 1 dargestellt. Der Ursprungsanruf
ist ein von einem Benutzer ausgehender Anruf. Der Benutzer hat vier
Dienstleistungen des Dienstleistungsprovider 1 abonniert
und die vier Dienstleistungen werden für den Benutzer in vier Serviceeinheiten 101–104 implementiert.
Wenn der Benutzer den Ursprungsanruf einleitet, werden die Blöcke 51–53 der 7 durchgeführt, und
die Serviceeinheiten 101–104 und die Schnittstelleneinheiten 105–107 werden
dynamisch auf den Servicebus 7 installiert.
-
Die
Sperr-Serviceeinheit 101 stellt eine Dienstleistung bereit,
die bestimmte Arten von Anrufen beschränkt. Die Telefonbuch-Serviceeinheit 102 ermöglicht die
Umsetzung eines Namens in eine Nummer unter Verwendung eines Verzeichnisses. Die
Persöliche-Identifikationsnummer(PIN)-Serviceeinheit 103 ermöglicht es,
einen Benutzer zur Angabe seiner PIN aufzufordern, bevor er ein
gebührenpflichtiges
Gespräch
oder Ferngespräch
führen kann.
Die Grund-Serviceeinheit 104 stellt
grundlegende Anruffunktionen wie Weiterleiten, Antworten und Freigabe
zur Verfügung.
-
Der
Servicebus 7 verbindet die vier Serviceeinheiten 101–104 mit
drei Schnittstelleneinheiten 105–107. Die Session-Initiation-Protocol(SIP)-Schnittstelleneinheit 105 bietet
den Zugang zu IP-Telefoniefunktionen und ist mit einem Kommunikationssystem
zum Signalisieren von Anrufsteuerinformationen verbunden. Die Leightweight-Directory-Application-Protocol(LDAP)-Schnittstelleneinheit 106 bietet
Zugang zu Verzeichnisinformationen und ist mit einem Kommunikationssystem
zum Anfordern und Übermitteln
von Verzeichnisinformationen verbunden. Die Interactive-Voice-Response(IVR)-Schnittstelleneinheit
bewirkt Ansagen und Ziffernerfassung für auf Aufforderungen basierende
Dienstleistungen und ist mit einem Kommunikationssystem zum Anfordern
und Steuern von Sprachwiedergabe- und Ziffernempfangsgeräten verbunden.
-
Die
Schnittstelleneinheit 105 empfängt für einen Ursprungsanruf eine
Einladung 108. Die Einladung 108 ist eine erste
Anrufanforderungsprotokollnachricht. Die Schnittstelleneinheit 105 erzeugt
ein Ereignis 109, das über
den Servicebus 7 an die Serviceeinheit 101 weitergeleitet
wird. Nach dem Empfang dieses Ereignisses 109, erzeugt
die Serviceeinheit 101 ein Ereignis 110, das über den
Servicebus 7 an die Serviceeinheit 102 weitergeleitet
wird. Nach dem Empfang des Ereignisses 110 erzeugt die
Serviceeinheit 102 ein Ereignis 111, das über den
Servicebus 7 an die Schnittstelleneinheit 106 weitergeleitet wird.
-
Nach
dem Empfang des Ereignisses 111 erzeugt die Schnittstelleneinheit 106 eine
Verzeichnisanforderungsprotokollnachricht 112, um Verzeichnisinformationen
anzufordern, und empfängt
eine Verzeichnisantwortprotokollnachricht 113 mit den Verzeichnisinformationen.
Nach dem Empfang der Verzeichnisantwortprotokollnachricht 113 erzeugt
die Schnittstelleneinheit 106 ein Ereignis 114,
das an die Serviceeinheit 102 über den Servicebus 7 geleitet wird.
Nach dem Empfang dieses Ereignisses 114, erzeugt die Serviceeinheit 102 ein Ereignis 115,
das über
den Servicebus 7 an die Serviceeinheit 103 weitergeleitet
wird. Nach dem Empfang des Ereignisses 115 erzeugt die
Serviceeinheit 103 ein Ereignis 116, das über den
Servicebus 7 an die Schnittstelleneinheit 107 weitergeleitet
wird.
-
Nach
dem Empfang des Ereignisses 116 erzeugt die Schnittstelleneinheit 107 eine
IVR-Protokollnachricht 117 zum Erfassen einer PIN und empfängt eine
IVR-Antwortprotokollnachricht 118 mit der erfassten PIN.
Nach dem Empfangen einer IVR-Antwortprotokollnachricht 118 erzeugt
die Schnittstelleneinheit 107 ein Ereignis 119,
das über
den Servicebus 7 an die Serviceeinheit 103 geleitet
wird. Nach dem Empfang des Ereignisses 119 erzeugt die
Serviceeinheit 103 ein Ereignis 120, das über den
Servicebus 7 an die Serviceeinheit 104 weitergeleitet
wird. Nach dem Empfang des Ereignisses 120 erzeugt die Serviceeinheit 104 ein
Ereignis 121, das über
den Servicebus 7 als Einladung weitergeleitet wird. Die Einladung
für das
Ereignis 121 ist die Fortsetzung der ersten Anrufanforderung
mit der Einladung 108.
-
13 zeigt
ein zweites Beispiel für
die Bereitstellung von Dienstleistungen unter Verwendung der Erfindung.
In 13 ist ein Beispiel für einen Anschlussanruf dargestellt,
wobei es sich um einen bei dem Benutzer des Dienstleistungsproviders 1 eingehenden
Anruf handelt. Der Benutzer hat vier Dienstleistungen des Dienstleistungsproviders 1 abonniert, und
die vier Dienstleistungen sind für
den Benutzer als vier Serviceeinheiten 131–134 implementiert. Wenn
der Anschlussanruf von dem Dienstleistungsprovider 1 empfangen
wird, werden die Blöcke 51–53 der 7 durchgeführt und
die Serviceeinheiten 131–134 sowie die Schnittstelleneinheiten 135–137 werden
dynamisch auf den Servicebus 7 installiert.
-
Die
Weiterleitungs-Serviceeinheit 131 ermöglicht bei Erfüllung bestimmter
Kriterien das Weiterleiten eines Anrufs an eine andere Stelle. Die
Identitäts-Serviceeinheit 132 ermöglicht es,
einen Benutzer von einem Anrufversuch zu informieren, indem die
Anrufinformationen auf einem Hausgerät (beispielsweise einer Kabel-Set-Top-Box)
des Benutzers angezeigt werden. Die Aufzeich nungs-Serviceeinheit 133 ermöglicht das
Aufzeichnen sämtlicher
Anrufversuche als E-Mail. Die Grund-Serviceeinheit 134 hat die
gleiche Funktion sie die in 12 dargestellte Grund-Serviceeinheit 104.
Zwar implementieren die Grund-Serviceeinheiten 104 und 134 die
von dem Dienstleistungsprovider 1 bereitgestellten Dienstleistungen,
dennoch werden zwei Serviceeinheiten verwendet, da zwei Benutzer
die selbe Dienstleistung abonniert haben, nämlich den Grund-Service, und eine
Serviceeinheit für
jedes Abonnement des Grund-Service
erzeugt wird.
-
Der
Servicebus verbindet die vier Serviceeinheiten 131–134 mit
drei Schnittstelleneinheiten 135–137. Die Kabel-Set-Top-Box(CSTB)-Schnittstelleneinheit 135 bildet
eine Schnittstelle mit einer CSTB und ist mit einem Kommunikationssystem
zum Anzeigen von Informationen auf einem Fernsehgerät verbunden.
Die E-Mail-Schnittstelleneinheit 136 bildet eine Schnittstelle
mit einem E-Mail-Server
und ist mit einem Kommunikationssystem zum Senden von E-Mails verbunden.
Die SIP-Schnittstelleneinheit 137 hat die gleichen Funktionen
wie die SIP-Schnittstelleneinheit 105, die in 12 dargestellt
ist.
-
Der
Servicebus 7 leitet ein Ereignis 138 an die Serviceeinheit 131 weiter.
Das Ereignis 138 ist eine Einladung für das Einrichten eines eingehenden Anrufs.
Beispielsweise kann das Ereignis 138 die Fortsetzung des
Ereignisses 121 in 12 sein, wenn
der angeforderte Anruf in 12 von
einem Benutzer des Dienstleistungsproviders 1 an einen anderen
Benutzer des Dienstleistungsproviders 1 gerichtet ist.
Nach dem Empfangen des Ereignisses 138 erzeugt die Serviceeinheit 131 ein
Ereignis 139, das über
den Servicebus 7 an die Serviceeinheit 132 geleitet
wird. Nach dem Empfang des Ereignisses 139 erzeugt die
Serviceeinheit 132 ein Ereignis 140, das über den
Servicebus 7 an die Schnittstelleneinheit 135 weitergeleitet
wird, und erzeugt ein Ereignis 141, das über den
Servicebus 7 an die Serviceeinheit 133 weitergeleitet
wird.
-
Nach
dem Empfang des Ereignisses 140 erzeugt die Schnittstelleneinheit 135 eine
Benachrichtigungsprotokollnachricht 142 an die CSTB, um
die Anrufleitungsinformationen 142 anzuzeigen. Die Benachrichtigungsprotokollnachricht 142 bewirkt
das Anzeigeneiner Anruferidentifizierung auf einem Fernsehschirm
des Benutzers. Nach dem Empfang des Ereignisses 141, erzeugt
die Serviceeinheit 133 ein Ereignis 143, das an
die Schnittstelleneinheit 135 über den Servicebus 7 weitergeleitet
wird, und erzeugt ein Ereignis 144, das an die Serviceeinheit 134 über den
Servicebus 7 weitergeleitet wird.
-
Nach
dem Empfang des Ereignisses 143 erzeugt die Schnittstelleneinheit 135 eine
Ausgangs-E-Mail-Anforderungsprotokollnachricht 145. Die
Ausgangs-E-Mail-Anforderungsprotokollnachricht 145 bewirkt
das Senden einer E-Mail-Benachrichtigung
an die von dem Benutzer angegebene Adresse. Nach dem Empfang des
Ereignisses 144 erzeugt die Serviceeinheit 104 ein
Ereignis 146, das über
den Servicebus 7 an die Schnittstelleneinheit 137 geleitet
wird. Nach dem Empfang des Ereignisses 146 erzeugt die
Schnittstelleneinheit 105 eine Einladungsprotokollnachricht 147.
Die Einladungsprotokollnachricht 147 ist eine Einladung
für den
Endteilnehmer.
-
Die
Erfindung wurde anhand bevorzugter Ausführungsbeispiele näher beschrieben,
und für den
Fachmann auf diesem Gebiet ist es nunmehr ersichtlich, dass Veränderungen
und Modifizierungen vorgenommen werden können, ohne den Rahmen der Erfindung
zu verlassen, und die in den Ansprüchen definierte Erfindung umfasst
sämtliche
derartigen Veränderungen
und Modifizierungen, die in den Rahmen der Erfindung fallen.