[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE19838055A1 - Kommunikationssystem - Google Patents

Kommunikationssystem

Info

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
Application number
DE19838055A
Other languages
English (en)
Other versions
DE19838055B4 (de
Inventor
Debbie Pinard
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitel Networks Corp
Original Assignee
Mitel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitel Corp filed Critical Mitel Corp
Publication of DE19838055A1 publication Critical patent/DE19838055A1/de
Application granted granted Critical
Publication of DE19838055B4 publication Critical patent/DE19838055B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit 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/54508Configuration, initialisation
    • H04Q3/54533Configuration data, translation, passwords, databases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42314Systems providing special services or facilities to subscribers in private branch exchanges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42314Systems providing special services or facilities to subscribers in private branch exchanges
    • H04M3/42323PBX's with CTI arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1305Software aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1307Call setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13072Sequence 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ß).
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.
DE19838055A 1997-08-22 1998-08-21 Kommunikationssystem und Verfahren zum Zuordnen von Benutzern zu Kommunikationsgruppen Expired - Lifetime DE19838055B4 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (2)

* Cited by examiner, † Cited by third party
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