DE19838055A1 - Kommunikationssystem - Google Patents
KommunikationssystemInfo
- Publication number
- DE19838055A1 DE19838055A1 DE19838055A DE19838055A DE19838055A1 DE 19838055 A1 DE19838055 A1 DE 19838055A1 DE 19838055 A DE19838055 A DE 19838055A DE 19838055 A DE19838055 A DE 19838055A DE 19838055 A1 DE19838055 A1 DE 19838055A1
- Authority
- DE
- Germany
- Prior art keywords
- agent
- communication
- agents
- group
- groups
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54508—Configuration, initialisation
- H04Q3/54533—Configuration data, translation, passwords, databases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/42314—Systems providing special services or facilities to subscribers in private branch exchanges
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/42314—Systems providing special services or facilities to subscribers in private branch exchanges
- H04M3/42323—PBX's with CTI arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1305—Software aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/1307—Call setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2213/00—Indexing scheme relating to selecting arrangements in general and for multiplex systems
- H04Q2213/13072—Sequence circuits for call signaling, ACD systems
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Die Erfindung betrifft ein Kommunikationssystem.
In Kommunikationssystemen, wie in PABX und Tastentelefonsystemen, ist
es bekannt, Personen, die Kommunikationsausrüstung, wie Telefongeräte,
besitzen, einer oder mehreren Kommunikationsgruppen, wie Suchgruppen oder
Schlüsselleitungsgruppen, zuzuordnen, die einen gemeinsamen Zweck haben (z. B.
ist jede Person der Gruppe gleich kompetent, um sich mit einem eingehenden Anruf
an die Gruppe zu befassen). Ein übliches Beispiel in Firmen mit weitgehender
Technologie ist das Aufstellen einer Kundenbetreuergruppe. Suchgruppen können
von einer Anzahl von unterschiedlichen Typen sein und werden durch eine
Pilotnummer (die Nummer, die gewählt wird, um die Gruppe zu erreichen), einen
Suchtyp (Anschluß, Rundruf od. dgl.) und eine Liste von Mitgliedsnebenan
schlußnummern identifiziert.
Jedesmal, wenn ein Mitglied zur Gruppe hinzugefügt oder aus dieser entfernt
wird (etwa aufgrund einer Funktionsänderung in der Organisation), muß die
Mitgliederliste manuell aktualisiert werden. Auch wenn eine Person, die ein Mitglied
in mehreren Gruppen ist, die Organisation verläßt, ist jede der Suchgruppen, denen
die Person angehörte, zu aktualisieren, wodurch sich eine beträchtliche
Wiederholung der Arbeit ergibt. Schließlich existiert kein Mechanismus für den Fall,
daß eine Person zeitweilig nicht an einer Gruppe aufgrund von Krankheit, Reisen
usw. teilnehmen kann, um diese zeitweilig aus der Gruppe zu entfernen, so daß ihr
Telefon nicht klingelt.
Aufgabe der Erfindung ist es, ein Kommunikationssystem zu schaffen, das es
ermöglicht, die Kommunikationsgruppen in einfacher Weise zu aktualisieren.
Diese Aufgabe wird entsprechend Anspruch 1 gelöst.
Innerhalb einer Organisation wird jeder Person wenigstens eine Funktion
zugeordnet, wobei eine Vielzahl von Kommunikationsgruppen entsprechende
Gruppennamenidentifizierer zum Zuordnen vorbestimmter Funktionen zu Gruppen
und entsprechende Gruppentelefonnummern sowie eine Funktionslistendatei zum
automatischen Zuordnen entsprechender Benutzer zu einer oder mehreren
Kommunikationsgruppen entsprechend dem Funktionsidentifizierer für
entsprechende Benutzer besitzen.
Wenn sich die Funktion des Benutzers ändert, wird die Mitgliedschaft des
Benutzers in einer oder mehreren Kommunikationsgruppen automatisch aktualisiert,
um die Person aus irgendwelchen Gruppen, zu denen sie nicht länger gehört,
herauszunehmen, bzw. in eine oder mehrere Gruppen hineinzunehmen.
Somit ist es nicht mehr nötig, manuell die Aktualisierung der
Kommunikationsgruppen, wie Suchgruppen od. dgl., vorzunehmen.
Weitere Ausgestaltungen der Erfindung sind der nachfolgenden
Beschreibung und den Unteransprüchen zu entnehmen.
Die Erfindung wird nachstehend anhand eines in den beigefügten
Abbildungen dargestellten Ausführungsbeispiels näher erläutert.
Fig. 1 bis 6 illustrieren verschiedene Grundaspekte einer Agentenarchitektur.
Fig. 1A ist ein Blockdiagramm eines Blackboards.
Fig. 1B ist ein Beziehungsdiagramm für verschiedene Agenten.
Fig. 1C ist eine Darstellung einer Hierarchie von Zielen.
Fig. 1D illustriert verschiedene Arten von Maklern.
Fig. 2A zeigt ein Diagramm, das die allgemeine Struktur eines Agenten
illustriert.
Fig. 2B zeigt eine Illustration eines beispielhaften Prozesses, der von einem
Agenten durchgeführt wird.
Fig. 3A zeigt ein Blockdiagramm eines Agenten.
Fig. 3B, 3C und 3D illustrieren Funktionen von Programmen eines Agenten.
Fig. 4A ist ein schematisches Blockdiagramm eines Ziellösungsmechanis
mus eines Agenten.
Fig. 4B bis 4D illustrieren verschiedene Prozesse zur Kreierung neuer
Agenten.
Fig. 5 illustriert einen Blackboardprozeß.
Fig. 6A, 6B und 6C sind Diagramme zum Illustrieren die Verfolgung von
Zielen unter Verwendung verschiedener Agenten auf verschiedenen Wegen.
Fig. 7 ist ein Systemdiagramm bezüglich der Ausbildung dynamischer
Kommunikationsgruppen.
Fig. 8 zeigt eine bekannte Suchgruppenstruktur.
Fig. 9A zeigt eine erfindungsgemäße Suchgruppenstruktur.
Fig. 9B zeigt eine Funktionsliste zum Hinzufügen einer Person zu einer
Suchgruppe bei der Suchgruppenstruktur von Fig. 9A.
Fig. 9C zeigt eine Benutzerdateienstruktur für die Suchgruppenstruktur von
Fig. 9A.
Fig. 9D zeigt eine Funktionsstatusdateistruktur für den Benutzer von Fig. 30
entsprechend der Suchgruppenstruktur von Fig. 9A.
Fig. 10 zeigt eine Agentenarchitektur zur erfindungsgemäßen Ausbildung der
dynamischen Kommunikationsgruppen.
Das Konzept eines allgemeinen Agentensystems ist beschrieben in "Toward
A Taxonomy Of Multi-Agent Systems", Int. J. Man-Machine Studies (1993) 39, 689-704,
Academic Press Limited und in "An Intelligent Agent Framework For Enterprise
Integration" von Jeff Y.O. Pan and Jay M. Tenenbaum, Transactions On Systems,
, and Cybernetics, Band 21, Nr. 6, November/Dezember 1991, Seiten
1391-1407 und ferner in US 5 638 494.
Nachstehend werden zunächst Untersysteme und Geräte beschrieben, die
erfindungsgemäß verwendet werden. Hier beschriebene Prozesse umfassen
Computersoftware, die auf einem Prozessor ausgeführt wird, der ein erforderliches
Programm und Datenspeichermittel, etwa in Form eines RAM, umfaßt.
Geräte, wie sie hier verwendet werden, sind Personen, Softwareanwen
dungsprogramme oder Maschinen, die eine Aufgabe erfüllen können, und sind
durch ihre Fähigkeiten und Leistung definiert. Geräte werden besessen und haben
ihre Fähigkeiten über die Besitzerschaft verteilt. Ein Gerät ist begrenzt; für externe
Geräte ist nicht erkennbar, wie Aufgaben intern in einem Gerät erfüllt werden. Ein
Gerät kann andere Geräte und Agenten intern enthalten, jedoch sind diese internen
Geräte und Agenten nicht extrem wahrnehmbar.
Ein Agent ist eine physische Entität, wie nachstehend in größerem Detail
beschrieben wird, die ein Ziel oder Ziele akzeptieren kann und ein Ergebnis oder
eine Reihe von Aufgaben erzeugt. Dieses Ergebnis kann ein anderes Ziel oder ein
Satz von Zielen sein. Ein Agent kann die externe Darstellung eines Geräts sein.
Ein Agent funktioniert nur bezüglich der Ziele, von denen er Kenntnis hat.
Eine Methode zum Ausführen jedes Ziels ist jedem Ziel zugeordnet. Diese Methoden
können innerhalb des Agenten ein Planen involvieren.
Ein Agent kann direkt ein Gerät darstellen oder über Zwischenagenten oder
Geräte arbeiten, ist jedoch seinen Zwischengeräten über eine Ressource
zugeordnet.
Ein Agent sieht nur den Teil der Fähigkeiten eines Geräts oder eines
anderen Agenten, die er berechtigt nutzen kann, und eine Technik zur Nutzung
hiervon, die als Darstellung des Geräts oder der Ressource bezeichnet ist. Eine
Ressource kann aus mehreren Darstellungen mehrerer Geräte und Mitteln zum
Auswählen unter diesen bestehen. Die Mittel zum Auswählen unter mehreren
Geräten werden als Makler bezeichnet.
Ein Ziel ist eine Eingabe an einen Agenten und spezifiziert eine Aufgabe, die
der Agent auszuführen hat. Jedes Ziel ist mit einer Methode zum Erfüllen des Ziels
gekoppelt.
Die Fähigkeit, einen Agenten mit Zielen und Ressourcen auszustatten, wird
als Verfügungsgewalt bezeichnet. Dementsprechend mag ein Agent von höherem
Niveau einen Agenten von niedrigerem Niveau, über den er Verfügungsgewalt hat,
als Teil seiner Zieldefinition benutzen und demgemäß den Agenten niedrigeren
Niveaus mit Fähigkeiten ausstatten. Ein Agent höheren Niveaus mit
Verfügungsgewalt kann einem anderen Agenten den Agenten niedrigeren Niveaus
als Ressource liefern.
Die Rechte, Teile der Fähigkeit und Kapazität eines Geräts zu nutzen, wird
als Besitzerschaft bezeichnet, und das Gewähren dieser Rechte für ein Gerät, das
von einem anderen Gerät benutzt wird, kann nur über die Besitzerschaft erfolgen.
Die Besitzerschaft kann verschiedenartig, nämlich konstant, statistisch oder
verfügbar sein.
Besitzerschaft kann durch eine Hierarchie von Ressourcen übergehen.
Übergegangene Besitzerschaft beinhaltet Zwänge; ein übergebender Besitzer kann
jeglichen Typ der Besitzerschaft übergeben und Zwänge hinzufügen, jedoch keine
Zwänge, die von einem Gerät eines Agenten höheren Niveaus vorgesehen wurden,
beseitigen. Besitzerschaft kann auch für unterschiedliche Zeiträume übergehen.
Einige Agenten höheren Niveaus erfordern praktisch permanente Besitzerschaft
eines Geräts, beispielsweise eine Gruppe mit Rechten an einem Datenbanksystem.
Diese Besitzerschaft kann dynamisch übergehen, so wenn eine Gruppe die Rechte
einem Gruppenmitglied für eine einzelne Transaktion zuweist.
Ein zugewiesenes Gerät kann seine übergebenen Ziele überwachen, um
sicher zu sein, daß kein anderer Agent seine Besitzerschaftsrechte ausdehnt.
Jedoch mag das Überwachen nicht notwendig sein, wenn dies üblicherweise
informell geschieht.
Die Technik, die von einer Ressource verwendet wird, um unter den Geräten
auszuwählen, die zum Erfüllen eines Ziels verwendet werden können, ist ein
Zuweisungsmechanimus. Der Zuweisungsmechanismus ist lokal für die Zwecke der
Ressource ausgelegt. Zusammen mit den Gerätedarstellungen bildet der
Zuweisungsmechanismus einen Makler innerhalb der Ressource. Der Makler ist
ausgelegt, um lokal in bezug auf die Ressource einen Zweck zu erzielen, z. B.
geringe Kosten, Verläßlichkeit, Redundanz, am besten geeignetes Gerät etc. Der
Makler kann ein Pseudokostenangebotssystem oder einen anderen geeigneten
Mechanismus enthalten.
Ein Unternehmensmodellwerkzeug ermöglicht einem Unternehmen, als eine
Hierarchie, ein Satz von Prozessen (die z. B. seriell mit oder ohne Verzweigungen
sein können), Ressourcen (wie ein Telefon, ein Computer, ein
Text/Sprache-Wandler, ein Telefaxgerät, ein Ablageschrank, eine Person, wie ein Manager, ein
Softwaregestalter, ein Einkaufsagent etc.) und eine Aktivität, die die Ressourcen
nutzt, gestaltet zu werden.
Einige generische Prozesse können geliefert werden wie "Rufe an", die intern
durch eine Reihe von Aktivitäten und Ressourcen repräsentiert werden. Im
vorliegenden Fall werden diese Daten als Eingang verwendet und erzeugen den
darunter liegenden Agenten, der benötigt wird, damit ein System läuft.
Hier wird kein System simuliert, sondern verwendet, um das Unternehmen
selbst zu definieren und Agenten zu kreieren, die notwendig sind, um die aktuelle
Ausführung von definierten Prozessen durchzuführen.
Ein Besitzeragent hat die Aufgabe, einen generischen Prozeß aus einem
Systemwerkzeug auf einen physischen Agenten zu kartieren. Wenn daher das
Werkzeug den nötigen generischen Prozeß definiert hat, wird ein Agent kreiert, der
den physischen Prozeß enthält. Wenn er kreiert ist, besteht seine Aufgabe darin,
physischen Agenten zu erhalten und mit den generischen Agenten zu verbinden.
Bevorzugt geschieht dies mit einem Blackboardsystem.
Blackboardsysteme sind beschrieben in "Blackboard Systems", Daniel
Corkill, publiziert in Al Expert, September 1991, Seiten 41-47, in "Blackboard
Systems: The Blackboard Model of Problem Solving and teh Evolution of
Blackboard Achitectures", H. Penny Nii, publiziert in The Ai Magazine, Sommer
1986, Seiten 38-53 und in "Elevator Scheduling Systems Using Blackboard
Achitecture", Grantham K.H.Pang, publiziert in IEE Proceedings-D, Band 138, Nr.
4, Juli 1991, Seiten 337-346.
Wie in Fig. 1A dargestellt, schickt ein Besitzeragent 2, der einen Prozeß 1
enthält, eine Aufgabe an ein Blackboard 3 (RAM). Dies wird von anderen
Besitzeragenten 4 als eine Anforderung von Angeboten interpretiert.
Besitzeragenten 4 schicken dann Angebote zur Vervollständigung des Prozesses
1 entsprechend den Ressourcen, über die sie Verfügungsgewalt haben, und der
Wirtschaftlichkeit zur Vervollständigung der Aufgabe. Die Agenten haben eine
besondere Gestaltung und enthalten beispielsweise Makler.
Fig. 1B zeigt einen logischen Aufbau einer Kommunikation zwischen
Agenten. Hierbei sind die Verfügungsgewalt durch dünne Pfeile und
Nutzungsrechte durch dickere Pfeile dargestellt. Ein Unternehmensagent hat
Verfügungsgewalt über alle anderen Agenten, die in der Hierarchie unter ihm sind,
z. B. Gruppengeräteagenten 12, Gruppenbenutzeragenten 14 usw. Ähnlich hat der
Gruppenbenutzeragent Verfügungsgewalt über Benutzeragenten 16 unter ihm, der
Gruppengeräteagent Verfügungsgewalt über Geräteagenten 18 unter ihm, usw. Der
Gruppenbenutzeragent 14 hat Nutzungsrechte über einen Teil der Dienstleistung,
die von dem Gruppengeräteagenten 1 (12) geliefert wird. Der Benutzeragent 16 hat
Nutzungsrechte über einen Teil der Dienstleistung, die von dem Gerät geliefert wird,
das durch den Geräteagenten unter dem Gruppengeräteagenten 2 (12) kontrolliert
wird.
Zwei Arten von Zielen können einem Agenten präsentiert werden:
Handlungsziele und Bereitstellungsziele. Ein Bereitstellungsziel ist eine Anfrage,
eine Ressource zum späteren Gebrauch durch ein Handlungsziel bereitzustellen.
Wie aus Fig. 1C ersichtlich, gibt es bevorzugt drei Arten von
Bereitstellungszielen: (a) Ziele basierend auf Verfügungsgewalt, die einem Agenten
mitteilen, welche Ziele geliefert werden können, die Methoden zum Bewältigen
dieser Ziele und welche Nutzungsrechte für Ressourcen benötigt werden, um die
Ziele zu erfüllen, (b) auf Nutzungsrechten basierende Ziele, wo das Zuschneiden
bezüglich einer Ressource, für die der Agent Nutzungsrechte hat, vorgenommen
wird, und (c) ein Ziel zur Zulassungskontrolle, wodurch die Reservierung von
Ressourcen bewirkt und anderen Agenten für Ressourcen Nutzungsrechte
eingeräumt werden.
Gemäß Fig. 1D gibt es unterschiedliche Typen von Maklern, die im
Ressourcenbereich eines Agenten angesiedelt sind. Ein Handlungsmakler agiert
auf Anforderung eines Handlungsziels zum unmittelbaren Gebrauch einer
Ressource. Ein Bereitstellungsmakler erfüllt alle drei Typen von Bernitstellungs
zielen, indem er beispielsweise eines oder alle drei Arten von Bereitstellungszielen
an andere Agenten sendet.
Makler können unter Ressourcen wählen, für die der Agent Nutzungsrechte
besitzt, um ein Ziel besser zu verwirklichen, oder können anderen Agenten
Nutzungsrechte einräumen oder können Ziele und Nutzungsrechte für seinen
Agenten bereitstellen oder können Ressourcen, für die der Agent Nutzungsrechte
hat, individuell gestalten.
Gemäß Fig. 1B gibt es zwei Arten von Agenten, aktive und passive. Ein
aktiver Agent kann Handlungsziele akzeptieren, die Ressourcen erfordern, die
anderen Agenten zugeordnet sind. Ein passiver Agent kann nur Handlungsziele
akzeptieren, die ohne Anforderung von Ressourcen von anderen Agenten erfüllt
werden können. Ein passiver Agent ist ein atomarer Agent, der typischerweise ein
einzelnes Gerät oder eine Einheit (Gruppe) von Daten repräsentiert.
Agenten können auf verschiedene Arbeiten spezialisiert sein.
Beispielsweise repräsentiert ein Unternehmensagent die Bedürfnisse und
Wünsche eines Unternehmens. Er könnte firmenweite Restfunktionen bezüglich
Ressourcen aktivieren oder könnte der Hüter des Agentenverzeichnisses sein, das
Kenntnis aller Agentenadressen besitzt.
Ein Gruppenbenutzeragent könnte eine Gruppe von Leuten repräsentieren,
die zur Durchführung einer Aufgabe bestimmt sind. Ein Benutzeragent könnte eine
einzelne Person repräsentieren.
Ein Gruppengeräteagent könnte ein Initiator oder Konfigurator oder Erzeuger
von Geräteagenten für einen bestimmten Gerätetyp sein.
Diese Agenten sind sämtlich aktive Agenten.
Ein Geräteagent könnte Daten oder eine Aufgabe, die eine Person
durchführen kann, oder ein physisches Gerät einschließlich den Tätigkeiten des
Geräts als auch Bereitstellungsinformationen repräsentieren.
Andere Agenten könnten beispielsweise Buchungsagenten, Überwachungs
agenten, Mobilitätsmanager, Sicherheitsagenten (gegen Hackertum), Instandhal
tungsagenten, Verkehrsanalyseagenten, Ereignisverfolgungsagenten usw. sein.
Agenten können verschiedene Mittel zum Zuteilen von Ressourcen und
Zerlegen von Zielen in Abhängigkeit von ihrer Umgebung besitzen. Dies kann zum
Vereinfachen des Agenten und zum Beschleunigen der Durchführung und des
Lieferns von Dienstleistungen getan werden. Ansammlungskontrollprozesse können
durchgeführt werden, wenn Kenntnis über die Art der Verknüpfung zwischen
Systemen besteht. Starke Verknüpfung tritt ein, wenn zwei Agenten von den
gegenseitigen Ressourcen und Standorten Kenntnis haben. Taktische Verknüpfung
tritt auf, wenn keine tatsächliche Kenntnis des internen Betriebs eines anderen
Agenten besteht. Ressourcenzuteilung erfolgt dynamisch auf einer taktischen Basis.
Kontraktverknüpfung tritt ein, wenn keine tatsächliche Kenntnis vom internen
Betrieb einer Ressource vorliegt. Ressourcenzuteilung ist statisch und kann nur auf
einer Kontraktbasis geändert werden. Ansammlungskontrolle ist auf einer
protokollentkoppelten Basis vorzunehmen. Informationsbereiche können nicht
verwendet werden.
Die Struktur eines Agenten 25 ist in Fig. 2A gezeigt. Der Agent ist in vier
Abschnitte kategorisiert: Einen Informationsbereich 29, einen Bereitstellungsbereich
26, einen Handlungsbereich 28 und einen Ressourcenbereich 30.
Der Informationsbereich 29 repräsentiert einen Bereich, an den der Agent
Information über seine Ressourcen liefert. Irgendein Agent, der Nutzungsrechte
über Ressourcen oder Teile von Ressourcen in diesem Agenten hat, hat
Leseprivilegien für diesen Bereich, wenn er Zugriff hierzu erhalten kann. Zugriff
kann durch direktes Lesen oder auf einer Nachricht basierend erfolgen.
Der Bereitstellungsbereich 26 repräsentiert die Möglichkeit eines Agenten,
Bereitstellungsziele aller drei Arten zu empfangen. Bei einem passiven Agenten
kann es sich nur um Ziele in seinem Zielverzeichnis handeln, die nicht in Ziele für
andere Agenten zerfallen. Wenn ein Bereitstellungsziel empfangen wird und in eine
Einheit zerfällt, die eine Ressource darstellt, für die er Nutzungsrechte hat, ist es
möglich, daß eine Merkmalswechselwirkung auftritt. Diesbezüglich sollte eine
Überprüfung vorgenommen und diese behandelt werden.
Der Handlungsbereich 28 stellt die Fähigkeit eines Agenten dar, ein
Handlungsziel zu akzeptieren und es in andere Ziele zu zerlegen, die er an andere
Agenten oder in Ressourcen weitergibt, an denen er Nutzungsrechte hat. In einem
passiven Agenten können die Ziele nur in Ressourcen zerlegt werden, die keine
anderen Agentenwechselwirkungen erfordern. Wenn es in eine Einheit zerfällt, die
eine Ressource darstellt, für die er Nutzungsrechte hat, ist es möglich, daß eine
Merkmalswechselwirkung auftreten kann. Diesbezüglich muß geprüft und diese
berücksichtigt werden, wenn diese Ressource genutzt wird. Die Verantwortlichkeit
für die Ausführung der Schritte, die folgen müssen, wenn ein Ziel einmal zerlegt ist,
liegt in diesem Bereich. Dies kann reaktives Planen involvieren. Ein Agent kann nur
auf Ziele wirken, von denen er Kenntnis hat.
Der Ressourcenbereich 30 stellt die Daten und Kenntnisquellen dar, die von
dem Agenten zum Zerlegen eines Ziels benötigt werden. Er ist ein privater Bereich
des Agenten. Ein Zielverzeichnis 30A zerlegt Ziele in ihre Bestandteile, wird in und
aus dem Bereitstellungsbereich 26 geschrieben und von dem Handlungsbereich 28
verwendet. Die Darstellung der Ressourcen einschließlich Grundfunktion, Kapazität,
Beschränkungen, Bietmechanismen usw. ist ebenfalls in diesem Bereich enthalten
ebenso wie die Kenntnisquelle, die zum Gebrauch einer Ressource benötigt wird.
Dies kann auch von dem Bereitstellungsbereich 26 geschrieben und von dem
Handlungsbereich 28 verwendet werden.
Um ein System von Vorgängen mit Agenten zu erstellen, die keine Kenntnis
von anderen Agenten und welche Ressourcen oder wie sie diese benutzen, haben,
definiert das anfängliche Erstellen des Systems die Vorgänge, und zerlegt diese in
Ziele für verschiedene Agenten und Ressourcen, die für jedes Ziel benötigt werden.
Bevorzugt erfolgt dies mit einem System, das in Datenbanken das Unternehmen in
Kategorien von Organisationsstrukturen einschließlich Benutzer, Geräte und
Ressourcen, die sie nutzen, definiert. Die Vorgänge, die ausgeführt werden
müssen, sollten einschließlich der Benutzer, Gruppen und Ressourcen, die zur
Ausführung jedes Teils hiervon benötigt werden, und in welcher Ordnung
beschrieben werden. Wenn die Datenbanken vollständig sind, werden sie in die
Ziele und Ressourcen, die von jedem Agenten benötigt werden, zerlegt und diese
Daten in die Agenten heruntergeladen. Ein Prozeß wird als eine Reihe von Zielen
definiert, die Ressourcen benötigen, und diese Ziele werden entsprechend einem
vorbestimmten Muster ausgeführt. Dementsprechend bildet ein Telefonanruf einen
Prozeß, eine Anforderung, Daten zu drucken, ist ein Prozeß, und ein Befehl, eine
Ausrüstung zu erwerben, ist ein Prozeß des Unternehmens.
Einfache Nachrichten können verwendet werden, um komplizierte Aufgaben
durchzuführen, da es sich um die Interpretationen von Nachrichten durch den
Agenten handelt, welche dem System die Fähigkeit verleihen, sich den
Bedürfnissen der Benutzer anzupassen und zu ändern.
Somit können Dienste dynamisch dadurch erzeugt werden, daß man einen
Prozeßagenten hat, der die einzige Aufgabe hat, Dienste zu erzeugen und
aufrechtzuerhalten. Entsprechend einer Ausführungsform schicken Entitäten, die
neue Dienste von Vorgängen erfordern, ihre Anforderung an einen Bereich eines
Blackboards. Eine Anforderung könnte beispielsweise vom Agenten 1 (Fig. IA) als
dynamische Anfrage oder von einem Unternehmens-Modellwerkzeug, das über
einen statischen Eingang gesammelt hat, bezüglich eines Prozesses kommen, der
dem System hinzuzufügen ist. Dies bringt einen Prozeßagenten 5 hervor, der
verantwortlich ist zu versuchen, den geforderten Prozeß zu erfüllen.
Der geforderte Prozeß wird in Kategorien einer Gruppe von Eingängen und
gewünschten Ausgängen geschrieben. Der Prozeßagent hat Zugang zu einer
Datenbank, die in einer Ausführungsform eine ziffernbaumartige Struktur aufgebaut
aus Hinweisen auf existierende Agenten besitzt, die verschiedene Aufgaben
handhaben können. Der Prozeßagent liest und interpretiert diese Daten, um zu
bestimmen, welche Agenten erforderlich sind, um den geforderten Prozeß zu
realisieren.
Der Prozeßagent verhandelt dann die Nutzungsrechte mit jedem der
verschiedenen Agenten, die in der Erstellung des neuen Prozeß involviert sind, um
neuen geforderten Prozeß auszuführen.
Der neue Prozeßagent entscheidet, ob er sich in der Datenbank
existierender Vorgänge installieren soll, um für andere Agenten, die den gleichen
Prozeß wünschen, zugänglich zu sein. Der neue Prozeßagent könnte auch sich
selbst den anfordernden Agenten anbieten und sich ansonsten selbst eliminieren.
Wenn ein Benutzer einen neuen Prozeß kreieren will, um monatliche
Berichte zu handhaben, sei angenommen, daß nach Abschluß des Berichts der
Benutzer diesen automatisch in einem Speicher, zu einer spezifischen Mailingliste
geschickt, speichern möchte und eine auf den neuesten Stand gebrachte Liste, was
zu tun ist, haben möchte. Ferner sei angenommen, daß bereits ein Agent existiert,
der das Senden von ASCII-Textdateien an einen vorgegebenen Benutzer handhabt
(beispielsweise ein Prozeßagent, der die ASCII-Textdatei nimmt und sie zu einem
Agenten sendet, der sie in ein korrektes Format konvertiert und sie dann an einen
Agenten sendet, der das tatsächlichen Übermitteln durchführt). Auch sei
angenommen, daß ein Agent existiert, der zum Speichern von Dateien dient, und
ein anderer Agent, der Benutzerlisten für vorzunehmende Tätigkeiten handhabt,
vorhanden ist.
Die Anforderung des Benutzers wird an ein Blackboard gegeben, ein neuer
Prozeßagent geschaffen und erwartete Eingänge von Eingangsagenten 20 und
erwartete Ausgänge von Ausgangsagenten 21 eingegeben, Fig. 2B. Der neue
Prozeßagent verhandelt dann Nutzungsrechte mit den existierenden Agenten 20,
21 und stellt eine Vorgehensweise zusammen, die aus dem Senden eines Ziels an
den korrekten Agenten zum Konvertieren von ASCII in Schnellversand (Quickmail)
für jedes Mitglied auf der Liste der vorgesehenen Benutzer besteht, und sendet
dann die Dateien an einer Speicheragenten und stellt eine Anforderung zur
Listenaktualisierung an den entsprechenden Agenten.
Dies könnte natürlich ein iterativer Prozeß werden, wobei der Prozeßagent
andere Prozeßagenten anrufen kann.
Fig. 3A illustriert einen Agenten 25 gemäß einer bevorzugten Ausfüh
rungsform, wie er mit anderen Agenten kommuniziert. Die durchgezogenen Pfeile
stellen Kommunikationsverbindungen während des Bereitstellens und die
gestrichelten Pfeile Kommunikationsverbindungen während des Betriebs dar.
Der Agent 25 umfaßt verschiedene Programme 27 und Daten 29, die alle
natürlich in einem Speicher gespeichert sind. Die Daten 29 stellen einen Informa
tionsbereich dar. Die Programme 27 sind, wie in Fig. 3A gezeigt, Dienst-, d. h.
Aufgabenausführungsmechanismen, Ziel- oder Planlösungsmechanismen, Fähig
keitsdefinitionsmechanismen, Zugangssteuermechanismen, Fernzuschnitts
mechanismen und Ressourcenzuweisungsmechanismen. Verbindungen zu
externen (anderen) Agenten 31 wie einem Kontrollagenten, einem untergeordneten
Agenten, einem anderen Agenten, der Nutzungsrechte über Agent 25 hat, einem
anderen Agenten, über den dieser Agent Nutzungsrechte hat, usw.
Die verschiedenen Programme haben die in den Fig. 3B und 3C darge
stellten und nachstehend beschriebenen Funktionen.
Der Fähigkeitsdefinitionsmechanismus empfängt Ziele, Aufgaben, Taktiken
und Nutzungsrechte von einem Agenten, der Verfügungsgewalt über diesen
Agenten besitzt, d. h. von einem höhergradigen Agenten. Er schafft Kenntnisquellen
und aktualisiert die Blackboardstruktur im Handlungsbereich 28, Fig. 2A. Er will
auch "wissen", wie die Ziele zufriedengestellt werden können. Er wird ferner
Dienstobjekte plazieren, die die möglichen Aufgaben ausführen können, die die
verschiedenen Ziele in dem Aufgabenausführer 49 zufriedenstellen. Darstellungen
werden in einem Ressourcenmaklerbereich 47 (Darstellungen von Nutzungsrechten
für Ressourcen zum Befriedigen von Zielen) angeordnet. Dieser Mechanismus kann
Ressourcen im Überschuß zu dem, was von dem Gruppenagenten zum lokalen
Zuschneiden vorgesehen ist, hinzufügen; der lokale Manager kann Ressourcen
unabhängig von dem Unternehmen "erwerben". Er kann auch Taktiken für den
Maklerbereich zu schneiden.
Der Zugangssteuermechanismus 27 liefert Nutzungsrechte dieses Agenten
für einen anderen Agenten; er liefert auch Leistungsgarantien für andere Agenten.
Er enthält Methoden zur Vorhersage von Kapazität und Leistung für die Ressourcen
einschließlich untergeordneter Agenten, die er kontrolliert. Die Zugangssteuerung
liefert Autorisation und Taktikinformation für den Handlungsbereich 28, Fig. 2A. Er
enthält eine Methode zum Erzeugen von Agenten von unterem Niveau und zum
Versehen dieser Agenten mit Nutzungsrechten (Ziele und Ressourcen). Die in
diesem Bereich enthaltenen Daten umfassen die Kapazität und die Fähigkeit des
Agenten.
Der Zugangssteuermechanismus wirkt auch zum Aufrechterhalten
existierender Agenten niedrigeren Niveaus oder Antworten zum Beibehalten von
Nachrichten von Agenten höheren Niveaus, was durch Lesen bestimmter Informa
tionsbereiche und durch Senden von Nachrichten geschehen kann. Er verhindert
die Vermehrung von verwaisten Agenten, die den Kontakt mit dem Rest des
Systems verloren haben. Verwaiste Agenten sollten sich selbst zerstören.
Der Agent kann Taktiken bezüglich Ressourcennutzung in dem Dienstobjekt
bereich eines bestimmten Agenten modifizieren und enthält Methoden zum
Modifizieren solcher Agenten, für die er Nutzungsrechte hat. Der Agent kann ein
Dienstobjekt in einem bestimmten Agenten herrichten; beispielsweise kann ein
Benutzeragent auf das Drücken einer spezifischen Taste eines Telefons hin
Nachrichten, die als ein Ergebnis gesendet werden, herrichten.
Der Aufgabenlösungsmechanismusbereich 27, Fig. 3A, akzeptiert Ziele, die
auszuführen sind, die analysiert und durch verschiedene Entitäten bearbeitet
werden. Diese Entitäten können aus einem Analysieren, Bearbeiten, Autorisieren,
Bemessen, Taktieren, Analysieren bezüglich Häufung von Zielen, Ressourcen
management, Verfolgen, Diagnostizieren usw. bestehen. Es ist Zweck des
Aufgabenlösungsmechanismus, die richtige Aktion zu wählen, um das Ziel bei durch
die Entitäten gegebenen Zwängen zu erreichen.
Dieser Bereich funktioniert als ein opportunistischer Geist, um eine Aktion zu
wählen, je nach dem Kontext des Agenten, seinen Ressourcen und den laufenden
Zielen, die darauf zugreifen. Der Bereich könnte ein Blackboard umfassen. Er
interpretiert, analysiert ein eingehendes empfangenes Ziel, kreiert eine Hypothese,
wie das Ziel erfüllt werden kann unter Verwendung des laufenden Kontextes,
beschränkt die Aktion von Vorgängen, die ein Taktieren, Bemessen usw. umfassen.
Er kann senden oder sendet auch ein Ziel zum Gruppenagenten, wenn er durch
eingehende Ziele überschüttet wird oder genügende Ressourcen zum Realisieren
des Ziels fehlen.
Der Ressourcenzuweisungsmechanismus enthält eine lokale Darstellung von
Ressourcen, für die der Agent das Nutzungsrecht hat, d. h. Nutzungsrechts
informationen, wie oft ein Agent diese laufend nutzt, und, wenn notwendig, einige
Information aus dem Informationsbereich des Ressourcenagenten. Diese Informa
tion besteht aus Information, die für die Fähigkeit eines entfernten Agenten relevant
ist, den Dienst zu leisten, der mit ihm vereinbart wurde. Diese Information vom
Ferninformationsbereich kann periodisch oder augenblicklich aktualisiert werden.
Wenn es nicht möglich ist, Information von dem Ferninformationsbereich zu
erhalten, beruht die lokale Darstellung einer Ressource auf Garantien, die durch
den Ressourcenagenten a priori geliefert werden. Diese Darstellungen können an
einem Bietprozeß mit einem Makler teilhaben, um Ressourcen zu einem Dienstob
jekt zu liefern, und enthalten Nutzungsrechtsgarantien und Aktualisierungen, die die
Ressource a priori an den Agenten geliefert hat.
Die Darstellung enthält die Adressen von physischen Ressourcen, und daher
kann der Ressourcenagent die Darstellung zwecks falscher Anhäufung usw.
aktualisieren. Das Aktualisieren kann von jeder Seite dynamisch oder periodisch
getriggert werden. Ein Makler wählt Ressourcen für ein Dienstobjekt basierend auf
Taktiken, die durch dieses Dienstobjekt erstellt wurden.
Der Dienstbereich 27, Fig. 3A, enthält Objekte oder Prozesse, die die
Aktionen bezüglich des Ziellösungsbereichs durchführen können. Diese Aktionen,
die für ein Dienstobjekt aufgestellt werden können, werden Aufgaben genannt. Ein
Dienstobjekt kann bezüglich eines Agenten lokal sein, oder es kann ein Hinweis auf
einen Dienst irgendwo im System sein. Als Dienstbereich kann der Ausgang des
Agenten betrachtet werden.
Dieses Objekt verrichtet Aufgaben aufgrund des Empfangs von Triggernach
richten vom Handlungsbereich. Triggernachrichten enthalten das gleiche Identifika
tionsformat und den gleichen Index zum Identifizieren des Kontextes der Aufgabe
als die Zielnachricht. Das Objekt kann auch den Erfolg oder Fehlschlag des Hand
lungsbereichs bezüglich der Aufgaben rückmelden.
Die Rückmeldungsnachrichten können verwendet werden, den Kontext des
Handlungsbereichs zu aktualisieren, und daher dazu verwendet werden, eine
weitere Aktion zu triggern, um das Ziel in diesem Bereich zu erfüllen.
Die weitere Aktion kann darin bestehen, andere Dienstobjekte zu triggern,
die zusätzlich das Erfüllen des Ziels unterstützen können. Für ein Dienstobjekt kann
es möglich sein, ein anderes direkt zu triggern, um den gleichen Zweck zu
erreichen. Jedoch wird dies im allgemeinen als weniger wünschenswert angesehen,
da es erstens den Ziellösungsbereich daran hindert, den vollen Kontext des Ziels zu
kennen, und daher diesen daran hindert, seine volle Urteilsfähigkeit zu nutzen, und
es zweitens erfordert, daß Dienstobjekte Kenntnis von gegenseitigen Fähigkeiten
und laufenden Zuständen haben. Dies beeinträchtigt die Unabhängigkeit dieser
Dienste und ist eine Aufgabe, die man am besten dem Ziellösungsbereich überläßt.
Die Dienstobjekte sollten Taktiken zur Auswahl von Ressourcen durch den
Ressourcenmakler enthalten. Es ist wichtig, daß diese Taktiken in diesem Bereich
gehalten werden, da sie fähig sein sollten, auf Anforderungen von lokalen
Benutzern und ferner in Abhängigkeit von laufenden Aktionen des Agenten
zugeschnitten zu werden.
Nach Empfang einer Triggernachricht vom Handlungsbereich kann ein
Dienstobjekt mehr Ressourcen vom Gruppenagenten anfordern.
Der Informationsbereich 29 ist ein Bereich, in den der Agent Informationen
schreiben kann, die dazu verwendet werden können, seine Aktionen mit anderen
Agenten oder Systemen zu koordinieren. Dies kann Funktionstüchtigkeits-,
Stauanzeigen des lokalen Systems, Bemessungs-, Such-, Lokalagentkontext- oder
andere Information, die für die Aktivität des Agenten wichtig ist, umfassen.
Information im Informationsbereich kann durch spezialisierte Agenten
gesammelt und bearbeitet werden, um Systemprobleme, Überfüllung, Buchung etc.
zu diagnostizieren. Für andere Agenten ist der Informationsbereich nur auf Lesen
beschränkt.
Aufgaben- und Zielnachrichten müssen mit einer Identifikation
gekennzeichnet werden, um den rufenden Agenten und den Kontext, in dem die
Aufgabe oder das Ziel zu interpretieren sind, anzuzeigen. Die Nachricht kann von
folgendem Format sein:
(Ziel)(Index)(Identifikation des rufenden Agenten)(Identifikation des Agenten, die bestätigt werden muß).
(Ziel)(Index)(Identifikation des rufenden Agenten)(Identifikation des Agenten, die bestätigt werden muß).
Der Index ist die Identifikation des Prozesses, der durch das Ziel zu bedienen
ist, und kann von folgendem Format sein:
(Identifikation des entstehenden Agenten)(Folgenummer).
Ein Prozeß wird durch eine Reihe von Zielen und Aufgaben, die zwischen
Agenten und Dienstobjekten ausgetauscht werden, ausgeführt. Es ist wichtig, daß
der Agent in der Lage ist, ein Ziel von einem rufenden Agenten zu autorisieren, zu
überwachen und zu bemessen. In diesem Fall kann der Agent die Identifikation des
rufenden Agenten mit der Liste von Zielen prüfen, für die er autorisiert ist, diese
auszuführen.
Der Agent wird typischerweise zur gleichen Zeit an vielen Vorgängen
teilnehmen und muß einen Kontext für jeden dieser Vorgänge aufrechterhalten.
Der Index identifiziert allein jeden Prozeß. Identifikationen sind einem
Agenten durch seinen Gruppenagenten zugeordnet, die hierarchisch basierend auf
der Identifikation des Gruppenagenten angeordnet sein sollten.
Daher sind Identifikationen offen und wiederverwendbar. Es ist auch möglich,
den Zugang basierend auf einer hierarchischen Mitgliedschaft in der Organisation
basierend auf der Analyse eines Teils der Identifikation zu autorisieren.
Wie oben ausgeführt, haben Agenten einen Ziellösungsmechanismus.
Gemäß Fig. 4A bezieht sich dieser Mechanismus als eine Alternative zu einem
Blackboard des Systems auf Ziele, die im Informationsbereich 29 gespeichert und
Zielverzeichnissen 33 aufgelistet sind. Jeder Agent hat Zugang zu seinem
eigenen Zielverzeichnis, das eine Liste von Zielen, die von dem Agenten
verstanden werden, sowie einen Prozeß enthält, der benötigt wird, um jedes Ziel zu
erfüllen. Jeder Agent hat ferner Zugang zu seiner Prozeßtabelle 35, der für einen
vorgegebenen Prozeß einen Hinweis zu einem Softwareprogramm zu seinem
Ablauf besitzt.
Jeder hiervon kann aktualisiert oder durch andere Agenten, die entweder
Verfügungsgewalt über den Agenten besitzen oder Nutzungsrechte für einen
speziellen Prozeß gewähren, ergänzt werden.
Im Falle eines Agenten 38, der anfragt, einen neuen Dienst zu erstellen, wie
Fig. 4B gezeigt ist, richtet er die Anfrage an das Blackboard 39. Der erfolgreiche
Prozeßagent 39, der ausgewählt ist, den Dienst zu erstellen, kreiert einen neuen
Prozeß 41, der in den Agenten 38 heruntergeladen wird, da er Nutzungsrechte
erstellt hat und nun über die verschiedenen Komponenten des Prozesses gewährt.
Gemäß Fig. 40 kann in dem Fall, in dem ein Gruppenagent 43 wünscht, eine
neue Instanz eines Geräteagenten zu schaffen, er durch Verfügungsgewalt in den
neuen Geräteagenten 45 die notwendigen Softwareprogramme 44 zum Steuern
eines Geräts herunterladen.
Gemäß Fig. 4D kann in dem Fall, in dem ein Gruppenbenutzeragent 47
Verfügungsgewalt über einen Benutzeragenten 48 hat, ersterer letzteren mit
gruppenspezifischen Aufgaben 49 und Prozessen 50, die zum Erfüllen von diesen
notwendig sind, zur Bedienung der Gruppe, über die der Gruppenagent 47
Verfügungsgewalt hat, ausstatten.
Gemäß Fig. 5 schickt er, wenn ein signifikantes Ereignis in einem Agenten
auftritt, dieses Ereignis zum Blackboard 55. Irgendein Agent 57, der an einem
besonderen Ereignis interessiert ist, registriert diese Tatsache in einem
Registrierungsabschnitt 59 des Blackboards 55. Wenn ein Ereignis eintritt, wird das
Blackboard 55 informiert, und sämtliche Agenten werden in einem
Benachrichtigungsbereich des Blackboards 55 benachrichtigt.
Wenn daher beispielsweise ein neuer Buchungsprozeß dem System
hinzugefügt wird, registriert der betroffene Agent über das Blackboard 55 die
Ereignisse, an denen er interessiert ist, die mit dem Buchungsprozeß zu tun haben
können. Agenten, die irgendwelche Ereignisse an das Blackboard 55 schicken,
benötigen keine Kenntnis davon, daß der neue Buchungsprozeßagent existiert oder
wo er sich physisch im System befindet.
In dem in Fig. 5 dargestellten System registrieren beispielsweise der
Buchungsagent 57A und der Instandhaltungsagent 57B im Registrierbereich 59 des
Blackboards 55, an welchen Ereignissen diese jeweils interessiert sind. Wenn ein
Ereignis auftritt, wie es an den Bereichsabschnitt 60 des Blackboards 55 für
"übermittelte Ereignisse" übermittelt wird, werden diese Agenten, wenn es Daten
oder einen Prozeß bezüglich der Ereignisse, für die sie sich als interessiert gemel
det haben, gibt, vom Benachrichtigungsbereich des Blackboards 55 benachrichtigt.
Hierbei ist es nicht notwendig, daß der gesamte Blackboard 55 an einem Ort
lokalisiert ist. Jeder Abschnitt des Blackboards kann an einer anderen Stelle
angeordnet über unterschiedliche Prozessoren zugreifbar sein.
Im allgemeinen wird ein Ziel kreiert und von Agent zu Agent in dem in Fig. 6A
dargestellten Prozeß geschickt. Das Ziel und der Index sind konstant. Jedoch wird
in jeder Stufe die Identifikation des rufenden Agenten geändert. Diese Identifikation
wird verwendet, um den Kontext herzustellen, in dem das Ziel zu interpretieren ist.
Wie in Fig. 6B dargestellt, können Agenten A und P Agenten B hergerichtet
haben, unterschiedlich auf das gleiche Ziel zu wirken. Beispielsweise könnte das
Ziel der Tastendruck auf einen Telefonapparat sein. Der Agent B agiert unterschied
lich auf diese Tastendrücke nach Information durch die Telefonagenten A und P.
Agent A könnte den Tastendruck auf eine Schnellwahl eingestellt haben. Agent P
könnte ihn auf eine Leitungswahl eingestellt haben.
Die Identifikation des bestätigenden Agenten in der Nachricht zeigt an,
welchem Agenten Erfolg oder Fehlschlag des Ziels bei dem laufenden Agenten
zuzuerkennen ist.
Beispielsweise kann der Agent B, anstatt den Prozeß gemäß dem Diagramm
von Fig. 6 zu verwenden, entscheiden, sein Ziel durch Anrufen von anderen
Agenten, die für den ursprünglichen Agenten A unbekannt sind, zu erfüllen. Dann
ergibt sich das Prozeßdiagramm von Fig. 60.
Gemäß Fig. 6C befinden sich Agenten J, K und L unter der Leitung von
Agent B. Wenn sie zufällig nicht in der Lage sind, ihre Ziele zu erfüllen, können sie
dies dem Agenten B zu erkennen geben, der eine Korrekturaktion vornehmen kann,
um Nebeneffekte auf ihren Betrieb zu beseitigen und weiter zu versuchen, das Ziel
zu erreichen. Agent B ist in der Lage, dies durch Senden des Ziels mit seiner
eigenen Identifikation als Bestätigung in der Nachricht anzuordnen. Dies ermöglicht
es jeder Stufe des Prozesses, unabhängig von anderen Stufen und verantwortlich
für ihre eigenen Nebeneffekte zu sein.
Gemäß Fig. 7 ist ein lokales Netzwerk 71 (etwa ATM, Ethernet usw.)
vorgesehen, das eine Vielzahl von Personalcomputern (Klient-PC 73, Klient-PC 75,
Klient-PC 77 usw.) und einen Kommunikationsserver 79 wie das MediaPath-
Kommunikationssystem der Fa. Mitel Corp. aufweist. Eine Vielzahl von lokalen
Telefonen 83, 85, 87 usw. ist vorgesehen, die untereinander und mit einem
externen öffentlich geschalteten Telefonnetz 89 über eine Vielzahl von MVIP-Karten
91, wie sie in US 5 631 954 beschrieben sind, verbunden werden können.
Eine Verzeichnis-Datenbank 93 ist zum Aufnehmen verschiedener Dateien,
wie Suchgruppen, Benutzerdateien, Funktionslisten usw., vorgesehen.
Bei der in Fig. 8 dargestellten bekannten Suchgruppenstruktur ist die
Suchgruppe mit einer Pilotnummer (d. h. der Nummer, die ein externer Anrufer am
Telefon 90 durch PSTN 89 wählt, um eine bestimmte Suchgruppe, wie eine
Kundenbetreuergruppe, zu kontaktieren), einen Suchtyp (beispielsweise Anschluß,
Rundruf, Agent mit längster Freizeit usw.) und die Nebenanschlußnummern (d. h.
physische Geräteadressen) jeder Person, die als Mitglied der Suchgruppe
programmiert ist.
Wenn Mitglieder zu einer Suchgruppe hinzugefügt oder aus der Suchgruppe
entfernt werden oder zeitweilig nicht in der Suchgruppe sind, muß die Suchgruppen
struktur manuell reprogrammiert werden, um die entsprechende Person bezüglich
der Suchgruppe hinzuzufügen oder zu entfernen. Wenn daher z. B. eine Person ein
Mitglied von vier Suchgruppen ist und diese Person aus der Organisation
verschwindet, dann müssen die vier Suchgruppen, zu der die Person gehörte,
manuell neu programmiert werden, um die Benutzererweiterungsnummer von der
Mitgliederliste zu streichen.
Wie in den Fig. 9A, 9B, 90 und 9D gezeigt, wird zweckmäßigerweise eine
Suchgruppenstruktur verwendet, die eine Pilotnummer, einen Namen (z. B.
Kundenbetreuer), Suchtyp und eine Merkmalsliste verwendet, Fig. 9A. Die
Merkmalsliste definiert die Merkmale, zu denen eine Person, die Mitglied der
speziellen Suchgruppe (z. B. Kundenbetreuer) ist, Zugriff hat.
Innerhalb der Verzeichnis-Datenbank 93 ist eine Funktionsliste aller
verfügbarer Funktionen, Fig. 9B, zusammen mit den verschiedenen Suchgruppen,
Fig. 9A, gespeichert, die einen Index für jede der programmierten Suchgruppen
liefert. Die Funktionsliste und die Suchgruppen werden typischerweise durch einen
Systemadministrator erzeugt und unterhalten.
Eine Benutzerdatei wird ebenfalls in der Datenbank 93 gespeichert, deren
Struktur in Fig. 90 dargestellt ist. Die Benutzerdatei wird normalerweise durch einen
Supervisor oder durch menschliches Personal geschaffen und umfaßt ein Feld für
den Namen, die Telefonnummer des Benutzers und eine Liste von Funktionen, die
der Person zugeordnet sind (von den verfügbaren Funktionen, die in der
Funktionsliste, Fig. 9B, erscheinen), zusammen mit zusätzlicher relevanter
Information, die erforderlich sein kann und nicht zum vorliegenden Zusammenhang
gehört.
Weiterhin wird eine Funktionsstatusdatei für jeden Benutzer erzeugt, Fig. 9D,
so daß der Benutzer innerhalb einer bestimmten Funktion aktiviert oder inaktiviert
werden kann.
Betrachtet man Fig. 9A bis 9D insgesamt, erkennt man, daß dann, wenn eine
bestimmte Person (z. B. John Doe am Klient-PC 77) seine Funktion innerhalb der
Organisation ändert, die spezielle Änderung nur in der Funktionsliste der Personen
in seiner Benutzerdatei, Fig. 9C, zu ändern ist. Der Benutzer oder dessen
Supervisor (etwa die Person am Klient-PC 75) hat ferner die Möglichkeit, John Doe
innerhalb der Funktion zu aktivieren oder zu deaktivieren, Fig. 9D, etwa wenn John
Doe für einen Tag krank ist, zum Mittagessen gegangen ist etc. Wird der Benutzer
"inaktiviert", wird die Person zeitweilig aus der angezeigten Suchgruppe entfernt.
Im Betrieb wird gemäß Fig. 10 in Ansprache auf einen externen Anruf (etwa
vom Telefon 90 über PSTN 89) auf eine bestimmte Suchgruppennummer (etwa
Kundenbetreuer) ein Suchgruppenagent 95 vom eingehenden Anruf unterrichtet
(typischerweise über einen Hauptleitungsagenten oder einen anderen geeigneten
Softwareagenten). In Ansprache auf den Empfang der Unterrichtung über den
eingehenden Anruf und basierend auf der gewählten Nummer aktiviert der
Suchgruppenagent 95 die zugehörige Suchgruppe (etwa Kundenbetreuer).
Basierend auf dem Suchgruppentyp (etwa Anschluß, Rundruf usw.) schickt der
Suchgruppenagent 95 die Mitteilung des eingehenden Anrufs an das geeignete
Mitglied der Suchgruppe entsprechend dem Suchgruppentyp und dem Status der
Gruppe. Der Suchgruppenagent 95 durchsucht alle Mitglieder, die in der Funktion
eines Kundenbetreuers definiert sind, die derzeit aktiv sind, und unter Verwendung
der Funktionen, die durch den besonderen Suchgruppentyp definiert sind (etwa
Rundruf, Anschluß usw.) und wählt die geeignete Person aus, um den Anruf zu
dieser zu schicken. In diesem Fall ist die Mitteilung über den eingehenden Anruf als
an den Benutzeragenten 97 für John Doe dargestellt.
Durch Anbieten des Anrufs an den Benutzeragenten 97 wird der
Merkmalssatz für diese Suchgruppe, definiert durch die Merkmalsliste, Fig. 9A, für
Benutzer verfügbar und bewirkt, daß das Telefon 87 des Benutzers klingelt. Die
Funktion, daß der Anruf angeboten wird, kann ebenfalls identifiziert werden (z. B.
kann das Telefon 87 des Benutzers mit einem Display versehen sein, das
"Kundenbefreueranruf" anzeigt usw.).
Der Suchgruppenagent 95 und der Benutzeragent 97 sind so ausgeführt,
daß sie Agentenarchitektur benutzen, wie sie im Zusammenhang mit den Fig. 1 bis
6 beschrieben ist.
Dies läßt sich auf irgendwelche Suchgruppen anwenden. Wenn eine
Schlüsselleitungsgruppe programmiert wird, wird eine neue Funktion für diese
Schlüsselleitungsgruppe (Fig. 9B) geschaffen, und jede Person, die sich für diese
Funktion eingetragen hat (d. h. in das Feld "Funktionen" in Fig. 90), agiert als ein
Mitglied der neuen Gruppe. Jeder Typ einer Gruppe definiert einzig das Verhalten,
das dem eingehenden Anruf, wie in der Merkmalsliste definiert, zugeordnet wird.
Claims (7)
1. Kommunikationssystem mit einer Vielzahl von Benutzerdateien für
entsprechende Benutzer, die jeweils wenigstens ein Funktionskennzeichen
umfassen, wobei eine Vielzahl von Kommunikationsgruppen entsprechende
Gruppennamenkennzeichen zum Zuordnen von vorbestimmten Funktionen zu den
Gruppen und entsprechende Gruppentelefonnummern haben und eine
Funktionslistendatei zum automatischen Zuordnen entsprechender Benutzer zu
einer oder mehreren vorbestimmten Kommunikationsgruppen entsprechend dem
wenigstens einen Funktionskennzeichen.
2. Kommunikationssystem nach Anspruch 1, dadurch gekennzeichnet, daß
eine Vielzahl von Kommunikationsagenten entsprechenden Kommunikations
gruppen und eine Vielzahl von Benutzeragenten entsprechenden Benutzern
zugeordnet sind, wobei die Kommunikationsagenten eingehende Anrufe, die durch
die entsprechenden Gruppentelefonnummern identifiziert sind, empfangen und auf
die Funktionslistendatei zugreifen, um den entsprechenden, den Kommunikations
gruppen zugeordneten Benutzer zu identifizieren und in Ansprache hierauf die
eingehenden Anrufe zu den zugehörigen Benutzeragenten leiten.
3. Kommunikationssystem nach Anspruch 1 oder 2, dadurch gekennzeich
net, daß Mittel zum Modifizieren der Funktionslistendatei zum zeitweiligen Aufheben
des Zuordnens bestimmter Benutzer zu den Kommunikationsgruppen vorgesehen
sind.
4. Kommunikationssystem nach einem der Ansprüche 1 bis 3, dadurch ge
kennzeichnet, daß wenigstens eine der Kommunikationsgruppen eine Suchgruppe
ist.
5. Kommunikationssystem nach einem der Ansprüche 1 bis 4, dadurch ge
kennzeichnet, daß wenigstens eine der Kommunikationsgruppen eine
Abhebegruppe ist.
6. Kommunikationssystem nach einem der Ansprüche 1 bis 5, dadurch ge
kennzeichnet, daß wenigstens eine der Kommunikationsgruppen eine
Tastenanschlußgruppe ist.
7. Kommunikationssystem mit einem Server mit darauf ausführbarer
Anrufsteuersoftware und eine Vielzahl von Sprachinterfaceschaltkreisen zur
Sprachkommunikation hierzwischen unter Steuerung durch die Anrufsteuer
software, mit einer Vielzahl von Kommunikationseinrichtungen, die mit
entsprechenden Sprachinterfaceschaltkreisen verbunden und entsprechenden
Benutzern zugeordnet sind, wobei die Kommunikationseinrichtungen durch den
Server in eine Vielzahl von Kommunikationsgruppen basierend auf vorbestimmten
funktionalen Funktionen organisiert sind, und mit einem mit dem Server
verbundenen Verzeichnis zum Speichern einerseits einer Vielzahl von
Benutzerdateien für entsprechende Benutzer, wobei jede Benutzerdatei wenigstens
ein Funktionskennzeichen umfaßt, und andererseits einer Funktionslistendatei zum
automatischen Zuordnen entsprechender Benutzer zu einer oder mehreren
Kommunikationsgruppen entsprechend wenigstens einem Funktionskennzeichen.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5666097P | 1997-08-22 | 1997-08-22 | |
US60/056,660 | 1997-08-22 | ||
US09/137,630 US6816589B2 (en) | 1997-08-22 | 1998-08-21 | Dynamic communications groups |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19838055A1 true DE19838055A1 (de) | 1999-02-25 |
DE19838055B4 DE19838055B4 (de) | 2005-09-15 |
Family
ID=26735572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19838055A Expired - Lifetime DE19838055B4 (de) | 1997-08-22 | 1998-08-21 | Kommunikationssystem und Verfahren zum Zuordnen von Benutzern zu Kommunikationsgruppen |
Country Status (3)
Country | Link |
---|---|
US (1) | US6816589B2 (de) |
CA (1) | CA2243781C (de) |
DE (1) | DE19838055B4 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001095601A1 (fr) * | 2000-06-09 | 2001-12-13 | Nortel Networks France | Controle d'allocation de references a des adresses numeriques |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7492887B1 (en) * | 1998-12-22 | 2009-02-17 | Siemens Communications | Network group pickup |
US7251666B2 (en) * | 2000-02-01 | 2007-07-31 | Internet Business Information Group | Signature loop authorizing method and apparatus |
AU2001271665A1 (en) * | 2000-06-29 | 2002-01-14 | Dynamic Networks, Inc. | Method and system for producing an electronic business network |
JP2002304476A (ja) * | 2001-04-05 | 2002-10-18 | Hitachi Ltd | ロール管理型協調学習支援システム |
US7734696B2 (en) * | 2002-04-08 | 2010-06-08 | Oracle International Corporation | Hierarchical org-chart based email mailing list maintenance |
EP1427141A1 (de) * | 2002-12-04 | 2004-06-09 | Deutsche Thomson-Brandt Gmbh | Verfahren zur Gestaltung eines Peer-to-Peer Netzwerks mithilfe eines gemeinsahmen Gruppen-Etiketts |
EP1427140A1 (de) * | 2002-12-04 | 2004-06-09 | Deutsche Thomson-Brandt Gmbh | Verfahren zur Kommunikation von Knoten in einem Peer-to-Peer Netz mithilfe eines gemeinsahmen Gruppen-Etikkets |
US7369544B2 (en) * | 2003-02-28 | 2008-05-06 | Innomedia Pte Ltd | Internet telephone system with hunting diversion |
EP1627286A1 (de) * | 2003-05-28 | 2006-02-22 | Belarc, Inc. | System für sicheren benutzerzugriff in einem datenbanksystem für computerdaten |
US11362897B2 (en) * | 2005-05-19 | 2022-06-14 | International Business Machines Corporation | Site policy administrative agent |
US20070083554A1 (en) * | 2005-10-12 | 2007-04-12 | International Business Machines Corporation | Visual role definition for identity management |
US7778400B2 (en) * | 2005-10-27 | 2010-08-17 | Mitel Networks Corporation | Centralized personal directory scheme for communications networks |
US20080273678A1 (en) | 2007-05-01 | 2008-11-06 | Igor Balk | Systems and methods for phone call management |
US7286661B1 (en) | 2007-05-01 | 2007-10-23 | Unison Technologies Llc | Systems and methods for scalable hunt-group management |
US20080285588A1 (en) | 2007-05-16 | 2008-11-20 | Unison Technologies Llc | Systems and methods for providing unified collaboration systems with combined communication log |
US20080285736A1 (en) | 2007-05-16 | 2008-11-20 | Unison Technolgies Llc | Systems and methods for providing unified collaboration systems with conditional communication handling |
US8059810B2 (en) * | 2007-06-28 | 2011-11-15 | Mitel Networks Corporation | Role-based programmable telephone keys |
US8565398B2 (en) | 2007-06-28 | 2013-10-22 | Mitel Networks Corporation | Intelligent calling pattern recognition and adaptive user dialing interface |
US8244782B2 (en) * | 2008-05-05 | 2012-08-14 | Motorola Solutions, Inc. | Role-based operational communications directory |
KR101525760B1 (ko) * | 2009-02-26 | 2015-06-04 | 삼성전자주식회사 | 통화 기능 지원을 위한 사용자 인터페이스 및 이를 지원하는 휴대 단말기 |
US10395016B2 (en) | 2017-01-24 | 2019-08-27 | International Business Machines Corporation | Communication pattern recognition |
US11595202B1 (en) * | 2022-02-09 | 2023-02-28 | My Job Matcher, Inc. | Apparatus and methods for mapping user-associated data to an identifier |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4259549A (en) * | 1976-10-21 | 1981-03-31 | Wescom Switching, Inc. | Dialed number to function translator for telecommunications switching system control complex |
CA1293042C (en) * | 1988-02-04 | 1991-12-10 | Ian Macmillan | Communication system supporting remote operations |
US5206903A (en) * | 1990-12-26 | 1993-04-27 | At&T Bell Laboratories | Automatic call distribution based on matching required skills with agents skills |
US5452350A (en) * | 1992-03-09 | 1995-09-19 | Advantis | Subscriber call routing processing system |
JPH06188831A (ja) * | 1992-12-16 | 1994-07-08 | Fujitsu Ltd | パーソナル通信方式 |
CA2108224C (en) * | 1993-10-12 | 1997-09-09 | Deborah L. Pinard | Method and aparatus for implementing hunt groups |
CA2119085C (en) * | 1994-03-15 | 2002-01-15 | Deborah L. Pinard | Adaptive communication system |
US6333980B1 (en) * | 1994-09-28 | 2001-12-25 | Rockwell International Corporation | Automatic call distributor and method for routing incoming telephone calls based on proficiency ratings of agents |
US5533110A (en) * | 1994-11-29 | 1996-07-02 | Mitel Corporation | Human machine interface for telephone feature invocation |
US5631954A (en) | 1994-12-27 | 1997-05-20 | Mitel Corporation | Method and apparatus for controlling a telephone |
US5761288A (en) * | 1995-06-05 | 1998-06-02 | Mitel Corporation | Service context sensitive features and applications |
US5862325A (en) * | 1996-02-29 | 1999-01-19 | Intermind Corporation | Computer-based communication system and method using metadata defining a control structure |
GB2311188B (en) * | 1996-03-11 | 2000-02-16 | Mitel Corp | Call routing in a communication system |
EP0795991A1 (de) * | 1996-03-11 | 1997-09-17 | Hewlett-Packard Company | Kommunikationssystem |
-
1998
- 1998-07-21 CA CA002243781A patent/CA2243781C/en not_active Expired - Lifetime
- 1998-08-21 US US09/137,630 patent/US6816589B2/en not_active Expired - Lifetime
- 1998-08-21 DE DE19838055A patent/DE19838055B4/de not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001095601A1 (fr) * | 2000-06-09 | 2001-12-13 | Nortel Networks France | Controle d'allocation de references a des adresses numeriques |
FR2810128A1 (fr) * | 2000-06-09 | 2001-12-14 | Matra Nortel Communications | Procede et dispositif de controle d'allocation de references a des adresses numeriques |
Also Published As
Publication number | Publication date |
---|---|
CA2243781C (en) | 2006-08-01 |
US6816589B2 (en) | 2004-11-09 |
DE19838055B4 (de) | 2005-09-15 |
US20010043696A1 (en) | 2001-11-22 |
CA2243781A1 (en) | 1999-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19838055A1 (de) | Kommunikationssystem | |
DE602006000907T2 (de) | Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung | |
DE69831671T2 (de) | Die kentnisse von bedienpersonen berücksichtigende terminplanung für fernsprechanrufzentralen | |
DE602004004321T9 (de) | Vorrichtung und Verfahren zur Echtzeitbeurteilung einer Netzverwaltungsregel | |
EP0632617B1 (de) | Verfahren und Einrichtung zur Unterstützung des Netzwerkmanagements | |
DE69030340T2 (de) | Makler für die Auswahl von Rechnernetzwerkservern | |
DE102004029506A1 (de) | Verfahren und eine Vorrichtung zum Verwalten von Ressourcen in einem Computersystem | |
DE10311074A1 (de) | Verfahren und Anordnungen in einem Telekommunikationsnetz | |
DE102006036796A1 (de) | Zeitplanmanagement | |
DE19948028A1 (de) | Verfahren und System zum Optimieren des Anforderungsschickens in Workflow Management Systemen | |
DE69726019T2 (de) | System zur Bereitstellung von Diensten zur Verwendung in Umgebungen für verteilte Verarbeitung | |
DE69027524T2 (de) | Verfahren und System zur automatischen Steuerung der Verteilung von Datenobjekten | |
WO2007087804A1 (de) | Änderungsverfahren der arbeitsweise einer technischen-kommunikationsgruppen-plattform (tkgp) eines telekommunikations-netzes (tk-netzes) | |
DE60114949T2 (de) | Leitweglenkung | |
DE69812517T2 (de) | Arbeitsflussverwaltungssystem | |
DE102008045853A1 (de) | Vereinigte Leitung und Steuerung einer Vielzahl von Heterogenen Systemen, welche die Funktionsfähigkeit von Callcentern unterstützen | |
DE69916458T2 (de) | Automatische Konfiguration eines Internet - artigen Computernetzes | |
AT504141B1 (de) | Verfahren zur vergabe von zugriffsrechten auf daten | |
DE19508940B4 (de) | Verfahren zum Betrieb eines computergesteuerten Kommunikationssystems | |
EP1227454B1 (de) | Verfahren zur Zusammenstellung eines Testes mit Hilfe einer Datenverarbeitungsanlage | |
DE10153500A1 (de) | Verfahren zur Kommunikation zwischen Mitgliedern und Nichtmitgliedern eines Teams | |
DE102005018630A1 (de) | Zerlegung von Diensten in Aufbaublöcke | |
DE112021001504T5 (de) | Vorrichtung zum Austausch von Nachrichten, und Verfahren zum Austausch von Nachrichten | |
DE10322634A1 (de) | Verfahren und Vorrichtung zur Steuerung einer Kommunikation | |
WO2000055773A2 (de) | Einrichtung, verfahren und computerprogramm-produkt zum betrieb von geschäftsprozessen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8127 | New person/name/address of the applicant |
Owner name: MITEL KNOWLEDGE CORP., KANATA, ONTARIO, CA |
|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: MITEL NETWORKS CORPORATION, OTTAWA, ONTARIO, CA |
|
R071 | Expiry of right |