DE102006047499A1 - Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen - Google Patents

Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen Download PDF

Info

Publication number
DE102006047499A1
DE102006047499A1 DE102006047499A DE102006047499A DE102006047499A1 DE 102006047499 A1 DE102006047499 A1 DE 102006047499A1 DE 102006047499 A DE102006047499 A DE 102006047499A DE 102006047499 A DE102006047499 A DE 102006047499A DE 102006047499 A1 DE102006047499 A1 DE 102006047499A1
Authority
DE
Germany
Prior art keywords
database
data
page
key
application
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.)
Ceased
Application number
DE102006047499A
Other languages
English (en)
Inventor
Alan M. Boulder Bland
Stephan Edward Frederick Friedl
Terry Don Westminster Jennings
Jeffrey James Boulder Olson
Barbara Jo Boulder West
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.)
Avaya Technology LLC
Original Assignee
Avaya Technology LLC
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 Avaya Technology LLC filed Critical Avaya Technology LLC
Publication of DE102006047499A1 publication Critical patent/DE102006047499A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

In einer Ausführungsform umfasst ein Datenverarbeitungssystem: DOLLAR A (a) eine erste Datenbank 304, die von einer ersten Seite unterhalten wird; DOLLAR A (b) eine zweite Datenbank 324, 328, die von einer zweiten Seite unterhalten wird, die sich von der ersten Seite unterscheidet; DOLLAR A (c) eine Arbeitswarteschlange 316, die dazu dient, Daten zu spezifizieren, die zu der zweiten Datenbank hinzugefügt werden sollen; DOLLAR A (d) ein Extraktions-, Transformations- und Lade-Modul 308, das dazu dient, Daten aus der ersten Datenbank in die Arbeitswarteschlange zu schreiben; und DOLLAR A (e) ein Datenimportmodul 320, das dazu dient, Daten aus der Arbeitswarteschlange in die zweite Datenbank zu importieren. In dem System ist die erste Seite nicht berechtigt, die Daten direkt in die zweite Datenbank zu schreiben.

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft allgemein die Ereignisabwicklung und speziell die Überwachung des Leistungsverhaltens von Agenten.
  • Hintergrund der Erfindung
  • Kontaktzentralen wie etwa automatische Anrufverteilungs- oder ACD-Systeme werden von vielen Firmen angewendet, um Kundenkontakte zu bedienen. Eine typische Kontaktzentrale umfasst eine Vermittlungseinrichtung und/oder einen Server zum Empfangen und Lenken eingehender paketvermittelter und/oder leitungsvermittelter Kontakte sowie eine oder mehrere Ressourcen wie etwa als Agenten bezeichnete Sachbearbeiter und automatisierte Ressourcen (z. B. interaktive Sprachausgabe (IVR – Interactive Voice Response) -Einheiten), um die eingehenden Kontakte zu bedienen. Kontaktzentralen verteilen Kontakte, egal ob eingehende oder abgehende, zur Bedienung gemäß vordefinierter Kriterien an irgendeine geeignete Ressource. Bei vielen existierenden Systemen können die Kriterien zum Bedienen des Kontakts ab dem Zeitpunkt, zu dem die Kontaktzentrale des Kontakts gewahr wird, bis der Kontakt mit einem Agenten verbunden wird, vom Anwender spezifiziert werden (d. h. sind von dem Betreiber der Kontaktzentrale programmierbar), und zwar über eine Fähigkeit, die als Vektorisierung bezeichnet wird. Bei heutigen ACDs wird normalerweise, wenn der Controller des ACD-Systems feststellt, dass ein Agent verfügbar geworden ist, um einen Kontakt abzuwickeln, der Controller alle vordefinierten Kontaktabwicklungsfähigkeiten des Agenten feststellen (üblicherweise in einer gewissen Prioritätsreihenfolge) und an den Agenten den ältesten Kontakt mit der höchsten Priorität ausliefern, welcher mit der Fähigkeit mit höchster Priorität des Agenten übereinstimmt. Im Allgemeinen besteht der einzige Zustand, der dazu führt, dass an einen verfügbaren Agenten kein Kontakt abgegeben wird, darin, dass keine abzuwickelnden Kontakte warten.
  • Die Hauptaufgabe einer Kontaktzentralenverwaltung, einschließlich der Anrufverteilungsalgorithmen, besteht letztendlich darin, die Funktionsfähigkeit und die Profitabilität der Kontaktzentrale zu maximieren. Eine ständige Herausforderung bei der Verwaltung von Kontaktzentralen ist die Überwachung des Verhaltens von Agenten, um die Nutzung von Ressourcen der Kontaktzentrale zu optimieren und die Leistungsfähigkeit und Profitabilität der Agenten zu maximieren. Derzeitige Produkte zum Überwachen und Melden des Funktionsverhaltens von Kontaktzentralen, beispielsweise das Call Management System oder CMSTM der Avaya Inc., sind als Data Warehouses (dt.: Daten-Lagerhaus) konfiguriert, die Daten aus mehreren Quellen extrahieren, die Daten in eine normierte Form umwandeln und die Daten in die Data Warehouse-Datenbank laden, typischerweise nach einem Stapelplan. Zusätzliche Berechnungen und Meldungen erfolgen nach dem Stapelladen.
  • Ein üblicher Typ eines Data Warehouse basiert auf der Dimensionsmodellierung. Die Dimensionsmodellierung stellt ein Datenmodell dar, das die Welt in Messwerte und Kontext einteilt. Messwerte sind üblicherweise numerisch und werden wiederholt erfasst. Numerische Messwerte stellen Fakten dar. Fakten werden von bestehendem Kontext in Textform umgeben, wenn der Fakt aufgezeichnet wird. Der Kontext wird oft in Dimensionen unterteilt. Faktentabellen werden bei der Dimensionsmodellierung genutzt, um Messwerte logisch mit mehreren Fremdschlüsseln zu modellieren, die auf die Kontextentitäten verweisen. Den Kontextentitäten ist jeweils ein Primärschlüssel zugeordnet. Ein "Schlüssel" ist ein Datenelement (z. B. Attribut oder Spalte), das eine Instanz einer Entität oder eines Datensatzes in einer Datensammlung, beispielsweise einer Tabelle, identifiziert. Ein "Primärschlüssel" ist eine Spalte oder eine Kombination von Spalten, deren Werte eindeutig eine Zeile in einer Tabelle identifizieren, oder ist das Attribut oder die Gruppe von Attributen, die aus den Kandidatenschlüsseln als das/die geeignetste(n) ausgewählt worden ist/sind, um eindeutig jede Instanz einer Entität zu identifizieren. Ein "Fremdschlüssel" bezeichnet eine Spalte oder eine Kombination von Spalten, deren Werte mit einem Primärschlüssel in einer anderen Tabelle übereinstimmen sollen, oder ist ein Primärschlüssel einer Stammentität, die über eine Beziehung zu einer Unterentität beiträgt. Typen von Primärschlüsseln sind ein natürlicher Schlüssel oder ein Schlüssel, der eine Bedeutung für Benutzer hat, und ein Surrogatschlüssel oder ein Schlüssel, der künstlich oder synthetisch eingeführt wird, für die Benutzer bedeutungslos ist und als Substitut für einen natürlichen Schlüssel genutzt wird.
  • Wenn die gleiche Entität (z. B. ein Agent) in mehreren Datenquellen (z. B. eingehendes Anrufsystem und abgehendes Anrufsystem) durch unterschiedliche natürliche Schlüssel repräsentiert wird, erzeugt ein herkömmliches Data Warehouse einen Surrogatschlüssel und ordnet diesen zu, um die Entität zu identifizieren. Der Surrogatschlüssel stellt einen internen Identifier dar, der von dem Data Warehouse verwaltet wird. Beispielsweise ist es möglich, dass in einer Kontaktzentrale ein Agent eingehende Anrufe von einem System und abgehende Anrufe von einem anderen System abwickelt, und zwar mit unterschiedlichen Identitäten in dem jeweiligen System. Data Warehouses verarbeiten üblicherweise jede Datenquelle unabhängig, wobei eine Datenkorrelation zwischen den Quellen zu einem späteren Zeitpunkt ausgeführt wird.
  • Einige Datenmodelle spezifizieren ein Verhalten, das als Slowly Changing Dimensions (dt: sich langsam verändernde Dimensionen) Typ 2 bezeichnet wird. Eine Dimension vom Typ 2 verfolgt die Historie von Änderungen an einer Entität im Zeitverlauf. Wenn ein Attribut einer Entität geändert wird, beispielsweise wenn ein Agent einer Kontaktzentrale seine Fähigkeiteneinstellung oder Gruppenzugehörigkeit ändert, wird ein neuer Surrogatschlüssel für diese Entität generiert und in die Datenbank wird eine neue Zeile eingefügt. Faktdaten, die mit der Entität verknüpft sind, können nun separat auf Aktivitäten hin verfolgt werden, die vor bzw. nach der Änderung erfolgt sind, und zwar durch Bezug auf den entsprechenden Surrogatschlüssel.
  • Ein fortlaufendes Problem, mit dem Anbieter von Kontaktzentralen-Softwareprodukten konfrontiert sind, insbesondere von Produkten, die Dimensionsmodellierungssoftware enthalten, stellt die Integration der Firmendatenbank-Anwendungen (oder Applikationssoftware), die typischerweise von anderen Anbietern erworben wird, mit der Software der Kontaktzentrale dar. Der Anbieter der Kontaktzentralensoftware möchte eine einfache Integration mit der existierenden Applikationssoftware der Firmendatenbank, muss aber sorgfältig darauf achten, dass die Integration der Software nicht zu semantischen Inkonsistenzen und anderen Konflikten führt, die zur Meldung von Ungenauigkeiten oder, noch schlimmer, Software-Fehlfunktionen führt.
  • Eine Reihe von Ansätzen wird genutzt, um diesem Problem zu begegnen.
  • Bei einem solchen Ansatz bietet die Datenbank eine eingeschränkte Möglichkeit, die Arten von Erweiterungen, die ein spezieller Datenbanknutzer vornehmen kann, zu kontrollieren. Beispielsweise verbietet der Besitzer einer Datenbanktabelle das Löschen einer Spalte, um existierende Daten zu schützen. Es ist auch möglich, dass der Besitzer einer Tabelle gestatten möchte, Spalten zu der Tabelle hinzuzufügen, und er kann die Datenbank derart konfigurieren, dass einem Tabellennutzer gestattet wird, einen festgelegten Satz von Spalten hinzuzufügen. Wenn jedoch die existierenden Spalten Randbedingungen bezüglich ihrer Werte aufweisen, die über das herkömmliche relationale Modell hinausgehen, gibt es keine Möglichkeit sicherzustellen, dass die Daten in den neuen Spalten diesen Randbedingungen genügen. Beispielsweise gibt es bei der Dimensionsmodellierung für Dimensionstabellen mit Schlüsseln vom Typ 2 spezielle Regeln dafür, wann ein neuer Schlüssel generiert werden muss. Grundsätzlich wird, wenn sich der Wert irgendeiner der Spalten mit Nicht-Typ-2-Schlüsseln ändert, eine gesamte neue Zeile mit einem neuen Schlüssel vom Typ 2 und eine komplette Kopie aller aktuellen Daten in die Tabelle eingefügt. Durch diese Vorkehrung können die historischen Informationen, die mit der Dimensionstabelle verknüpft sind, gesichert werden. Wird jedoch einer willkürlichen dritten Seite gestattet, solche Spalten zu erzeugen, ist es erforderlich, dass sich die dritte Seite an der Schlüsselsemantik vom Typ 2 beteiligt. Leider bieten Datenbanken keine Möglichkeit, die Semantik vom Typ 2 zu garantieren. Beispielsweise kann der Anwender eine Schlüsseländerung vom Typ 2 rückgängig machen, die durch die Datenbanksoftware der Kontaktzentrale erfolgt ist, oder umgekehrt. Darüber hinaus krankt dieser Ansatz auch an Wettlaufsituationen, welche den Verlust von Aktualisierungen bewirken könnten.
  • Bei einem anderen Ansatz werden Datenbanktrigger an der Tabelle genutzt, um nach Änderungen von dritter Seite zu suchen, worauf, wenn sie identifiziert werden, eine Anwendung folgt, die eine entsprechende Semantik vom Typ 2 anwendet. Leider führt ein solcher Ansatz häufig zu Wettbewerbszuständen zwischen der Anwendung und der dritten Seite, welche verhindern, dass eine richtige logische Semantik aufrechterhalten wird. Einfach gesagt gibt es keine Möglichkeit, den zeitlichen Ablauf der dritten Seite, der den Änderungen an dem erweiterten Spaltensatz zugeordnet ist, zu kontrollieren. Oftmals ist die Anwendung aus irgendeinem Grund unwillig, Änderungen an einer Tabelle zu gestatten, beispielsweise während ein Extraktions-, Transformations- und Lade- oder ETL-Modul Zusammenfassungen anhand der Tabelle berechnet.
  • Ein weiterer Ansatz nutzt eine Transaktions- oder "Datenbanksperre", bei welcher Anfragen (Transaktionen) um eine festgelegte Zeitspanne verzögert werden. Eine Datenbanksperre kann helfen, kann aber für eine Komplettlösung schwer zu verwenden sein. Wenn beispielsweise die Transaktionshaltezeit langlebig ist, ist es möglich, dass die Anwendung der dritten Seite oder die Anwendung der Kontaktzentrale festfahren.
  • Zusammenfassung der Erfindung
  • Diesen und anderen Bedürfnissen wenden sich die verschiedenen Ausführungsformen und Konfigurationen der vorliegenden Erfindung zu. Die vorliegende Erfindung ist allgemein auf ein erweiterbares Datenmodel ausgerichtet.
  • Bei einer Ausführungsform der vorliegenden Erfindung umfasst ein Datenverarbeitungssystem:
    • (a) eine erste Datenbank, die von einer ersten Seite oder Teilnehmer unterhalten oder verwaltet wird;
    • (b) eine zweite Datenbank, die von einer zweiten Seite oder Teilnehmer unterhalten oder verwaltet wird, die sich von der ersten Seite unterscheidet;
    • (c) eine Arbeitswarteschlange, um Daten zu spezifizieren, die zu der zweiten Datenbank hinzugefügt werden sollen;
    • (d) ein Extraktions-, Transformations- und Lade-Modul, das dazu dient, Daten aus der ersten Datenbank in die Arbeitswarteschlange zu schreiben; und
    • (e) ein Datenimportmodul, das dazu dient, Daten aus der Arbeitswarteschlange in die zweite Datenbank zu importieren.
  • Die Berechtigungen der ersten Seite in Bezug auf die zweite Datenbank sind begrenzt. Zum Beispiel ist die erste Seite vorzugsweise nicht berechtigt, die Daten direkt in die zweite Datenbank zu schreiben (einzufügen, zu löschen und/oder zu aktualisieren) oder das Datenmodell, welches die zweite Datenbank definiert, zu modifizieren (einzufügen, zu löschen und/oder zu aktualisieren). Dies ist so, weil die zweite Seite für die Aufrechterhaltung und Modifizierung der zweiten Datenbank verantwortlich ist, darunter der anwendungsspezifischen Anpassung der zweiten Datenbank, um anwendungsspezifische Daten von der ersten Datenbank zu empfangen. Typischerweise stellen die erste und die zweite Seite unterschiedliche, nicht miteinander in Beziehung stehende Geschäftskörperschaften dar, die nicht unter gemeinsamer Kontrolle stehen und von denen keine ein Kontrollinteresse an der anderen hat.
  • Um das herstellereigene Schema der zweiten Datenbank vor der ersten Seite zu schützen, werden die Berechtigungen hinsichtlich der zweiten Datenbank für die erste Seite vorzugsweise auf Nur-Lesen festgelegt, was den Zugriff der ersten Seite betrifft. Vorzugsweise wird der ersten Seite verwehrt, ausgewählte Teile des Schemas anzuschauen. Dies geschieht, indem der Zugang nur über Datenbankansichten und nicht die echten Tabellen gestattet wird. Generell wird der ersten Seite ein direktes Schreiben von Daten nur in Arbeitswarteschlangentabellen und möglicherweise spezifizierte anwendungsspezifische Tabellen gestattet.
  • Bei einer zweiten Ausführungsform wird ein Verfahren zur Verfügung gestellt, das folgende Schritte umfasst:
    • (a) Empfangen eines Satzes von Spezifikationen von der ersten Seite, wobei die Spezifikationen eine Erweiterung an der zweiten Datenbank, die von der zweiten Seite unterhalten wird, spezifizieren;
    • (b) Modifizieren der zweiten Datenbank, wie in dem Satz von Spezifikationen angegeben, wobei die Modifikation eine anwendungsspezifische Tabelle, eine anwendungsspezifische Zeile in einer Tabelle und/oder eine anwendungsspezifische Spalte in einer Tabelle umfasst;
    • (c) Erzeugen einer Arbeitswarteschlange entsprechend der Modifikation;
    • (d) Empfangen erster Daten aus einer ersten Datenbank durch die Arbeitswarteschlange;
    • (e) Normieren der ersten Daten, um zweite Daten zu bilden; und
    • (f) Schreiben der zweiten Daten in. die anwendungsspezifische Tabelle, die anwendungsspezifische Zeile und/oder die anwendungsspezifische Spalte.
  • Das Verfahren führt effektiv eine Abbildung von Daten aus der ersten in die zweite Datenbank aus. Die ersten Daten sind semantisch kompatibel mit der ersten Datenbank und sind semantisch inkompatibel mit der zweiten Datenbank, und die zweiten Daten sind semantisch inkompatibel mit der ersten Datenbank und sind semantisch kompatibel mit der zweiten Datenbank. Der Begriff "Semantik", wie er vorliegend genutzt wird, bezeichnet die Beziehungen von Symbolen, Zeichen oder Gruppen von Symbolen oder Zeichen zu deren Bedeutungen und/oder zueinander. Die Beziehungen sind typischerweise unabhängig von der Art und Weise ihrer Interpretation und ihrer Nutzung. Zwei Symbole oder Zeichen sind "kompatibel", wenn sie in einer gemeinsamen Datenbank genutzt werden können, ohne dass zunächst semantische Änderungen an der Datenbank erforderlich sind, um der gleichzeitigen Benutzung selbiger Rechnung zu tragen.
  • Die vorliegenden Ausführungsformen können es unberechtigten Seiten (denen potentiell nicht vertraut wird) ermöglichen, Erweiterungen an einem Datenbankmodell vorzunehmen, während zugleich ein Schutz für die logische Semantik, die von dem Datenbankmodell benötigt wird, gegeben ist. Die unberechtigte Seite kennt die Komplexität der ersten, aber nicht der zweiten Datenbank, während die zweite Seite die Komplexitäten der zweiten, aber nicht der ersten Datenbank kennt. Durch die vorstehenden Ausführungsformen können effektiv die Kenntnisse der beiden Seiten miteinander verbunden werden, um die erste und die zweite Datenbank zu kombinieren, während zugleich effektiv Datenkonflikte, -kollisionen und andere Inkonsistenzen aufgrund von Konflikte ergebenden Modifikationen an der zweiten Datenbank verhindert werden. Die erste Seite wird daher davon entlastet, eine komplizierte Semantik, insbesondere Semantik vom Typ 2, des zweiten Datenbankmodells kennen und implementieren zu müssen. Beispielsweise kann die vorliegende Erfindung einen Mechanismus bereitstellen, um richtige Dimensionsschlüssel vom Typ 2 zu garantieren, wenn das Datenbankmodell die Dimensionsmodellierung nutzt.
  • Bei einer Konfiguration nutzt die Erfindung externe Tabellen (in den Arbeitswarteschlangen), um den Zugriff auf die (als "geschützte Tabellen" bezeichneten) Datenbanktabellen der Anwendung zu schützen. Die externen Tabellen umfassen eine so genannte Sandbox (dt.: Sandkasten), in welcher die Firma einfügen, löschen und aktualisieren kann. Datenbanktrigger oder ein ähnlicher Änderungsmeldemechanismus an der externen Tabelle geben Meldung an die Applikationssoftware, die dann entsprechende Änderungen an der entsprechenden geschützten Tabelle vornimmt. Die Änderungen können eine Durchsetzung der Dimensionssemantik vom Typ 2 für die geschützte Tabelle umfassen.
  • Bei einer weiteren Konfiguration kann die Firma nur in die externe Tabelle einfügen. In diesem Fall funktionieren die Trigger wie zuvor, wobei sie bewirken, dass entsprechende Änderungen in der geschützten Tabelle erfolgen. Sobald diese Änderungen abgeschlossen sind, wird die entsprechende Zeile aus der externen Tabelle gelöscht. Auf diese Weise implementiert die externe Tabelle eine Warteschlange für Arbeitsanfragen bezüglich von Änderungen an der geschützten Tabelle.
  • Die externen Tabellen können nicht von der unberechtigten Seite aufgestellt werden. Der Besitzer der geschützten Tabelle kann die externen Tabellen basierend auf Informationen aufstellen, die von der unberechtigten Seite gegeben werden. Beispielsweise können die Informationen umfassen, auf welche geschützte Tabelle sich die externe Tabelle bezieht, wie die Spalten der externen Tabelle lauten, ob die Spalten in der geschützten Tabelle oder als eine separate geschützte Tabelle erzeugt werden sollten, usw.
  • Bei beiden Konfigurationen können die geschützten Tabellen nicht von der unberechtigten Seite modifiziert werden. Die Triggermechanismen setzen die zusätzliche Semantik (z. B. Semantik vom Typ 2) durch, sodass die geschützte Tabelle immer eine richtige Semantik aufrechterhält. Die Applikation kann Triggervorgänge zeitweise aussetzen, während die geschützte Tabelle bearbeitet wird (z. B. summarische Daten anhand dieser gebildet werden). In diesem Fall kann die unberechtigte Seite verfolgen, welche Änderungen erfolgt sind, indem sie die Inhalte der externen Tabelle untersucht.
  • Andere Möglichkeiten zum Schützen der Tabellensemantik gestatten Zugriff (z. B. über die Structured Query Language oder SQL), erfordern aber, dass sich die ansonsten unberechtigte Seite an der Semantik der geschützten Tabelle beteiligt. Im Gegensatz dazu bietet die vorliegende Erfindung die externen Arbeitswarteschlangen, die für die unberechtigte Seite mit Hilfe von SQL zugänglich sind, nutzt vorzugsweise aber Trigger, um die richtige Semantik der geschützten Tabelle sicherzustellen. Erfindungsgemäß kann somit die Notwendigkeit vermieden werden, Tabellen zu schützen, wobei ein Nicht-SQL-Zugriff einer dritten Seite genutzt wird.
  • Aus den vorstehend genannten Gründen kann die Erfindung eine Schnittstelle bereitstellen, die in Echtzeit oder nahezu Echtzeit zwei unterschiedliche Daten aus zwei unterschiedlichen Quellen mischt oder multiplext. Die eine Quelle ist die Datensammlung der Firma und die Verarbeitungssoftware extern der Datensammlung und Verarbeitungssoftware der Kontaktzentrale, und die andere Quelle ist die Software der Kontaktzentrale selbst.
  • Diese und andere Vorteile werden anhand der Offenbarung der vorliegend enthaltenen Erfindung(en) deutlich werden.
  • Die Begriffe "zumindest eine", "eine oder mehrere" und "und/oder", wie sie vorliegend genutzt werden, sind offene Ausdrücke, die in ihrer Anwendung sowohl konjunktiv als auch disjunktiv sind. Beispielsweise bedeutet jeder der Ausdrücke "zumindest eines der Elemente A, B und C", "zumindest eines der Elemente A, B oder C", "eines oder mehrere der Elemente A, B und C, "eines oder mehrere der Elemente A, B oder C" und "A, B und/oder C" A allein, B allein, C allein, A und B zusammen, A und C zusammen, B und C zusammen oder A, B und C zusammen.
  • Die vorliegend beschriebenen Ausführungsformen und Konfigurationen sind weder vollständig noch erschöpfend. Wie zu erkennen sein wird, sind andere Ausführungsformen der Erfindung möglich, bei denen allein oder in Kombination eines oder mehrere der vorstehend angeführten oder nachstehend im Einzelnen beschriebenen Merkmale genutzt werden.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das eine Kontaktzentrale entsprechend einer Ausführungsform der vorliegenden Erfindung darstellt;
  • 2 ist ein Blockdiagramm eines Servers entsprechend einer Ausführungsform der vorliegenden Erfindung;
  • 3 ist ein Blockdiagramm, das eine Ausführungsform des Ereignisverarbeitungsmoduls darstellt;
  • 4 ist ein Ablaufdiagramm, das eine erste funktionale Ausführungsform des Ereignisverarbeitungsmoduls darstellt; und
  • 5 ist ein Ablaufdiagramm, das eine zweite funktionale Ausführungsform des Ereignisverarbeitungsmoduls darstellt.
  • Detaillierte Beschreibung
  • Die Erfindung wird nachstehend im Zusammenhang mit einem beispielhaften Kommunikationssystem veranschaulicht. Obgleich sie gut geeignet für den Einsatz mit z. B. einem System ist, das eine ACD- oder eine ähnliche Kontaktabwicklungs-Vermittlungseinrichtung aufweist, ist die Erfindung nicht auf den Einsatz mit irgendeiner bestimmten Art von Kommunikationssystem-Vermittlungseinrichtung oder Konfiguration von Systemelementen beschränkt. Fachleute werden erkennen, dass die offenbarten Verfahren in einer beliebigen Anwendung genutzt werden können, bei welcher es wünschenswert ist, eine verbesserte Ereignis- (z. B. Kontakt-) Abwicklung bereitzustellen.
  • 1 zeigt eine beispielhafte Ausführungsform der vorliegenden Erfindung. Eine Kontaktzentrale 100 umfasst einen zentralen Server 110, einen Satz von Datenspeichern oder Datenbanken 114, die kontakt- oder kundenbezogene Informationen und andere Informationen enthalten, welche den Wert und die Effizienz der Kontaktabwicklung verbessern können, sowie eine Mehrzahl von Servern, nämlich einen Sprachmail-Server 118, eine interaktive Sprachausgabeeinheit oder IVR (Interactive Voice Response) 122 sowie andere Server 126 (beispielsweise ein prädiktives Einwählprogramm (Dialer)), eine Vermittlungseinrichtung 130, eine Mehrzahl von arbeitenden Agenten, die paketvermittelte (erste) Telekommunikationseinrichtungen 134-1 bis N bedienen (beispielsweise Arbeitsplatzcomputer oder Personalcomputer) und/oder leitungsvermittelte (zweite) Telekommunikationseinrichtungen 138-1 bis M, die alle durch ein lokales Netz LAN (oder Weitverkehrsnetz WAN) 142 untereinander verbunden sind. Die Server können über optionale Kommunikationsleitungen 146 mit der Vermittlungseinrichtung 130 verbunden sein. Wie zu erkennen sein wird, können die anderen Server 126 auch einen Scanner (der normalerweise nicht mit der Vermittlungseinrichtung 130 oder dem Webserver verbunden ist), VoIP-Software, Videoanrufsoftware, Sprachbenachrichtigungssoftware, einen IP-Sprachserver, einen Fax-Server, einen Webserver und einen E-Mail-Server und dergleichen umfassen. Die Vermittlungseinrichtung 130 ist über eine Mehrzahl von Amtsleitungen 150 mit dem öffentlichen Telekommunikationsnetz oder PSTN 154 und über eine/mehrere Verbindung(en) 152 mit den zweiten Telekommunikationseinrichtungen 138-1 bis M verbunden. Ein Gateway 158 ist zwischen dem Server 110 und dem paketvermittelten Netz 162 angeordnet, um Kommunikationsvorgänge abzuwickeln, die zwischen dem Server 110 und dem Netz 162 laufen.
  • Der Begriff "Vermittlungseinrichtung" oder "Server", wie er vorliegend genutzt wird, sollte dahingehend verstanden werden, dass er eine Nebenstellenanlage- (PBX-), eine automatische Anrufverteilungs- (ACD-), eine Firmen-Vermittlungseinrichtung oder eine andere Art von Telekommunikationssystem-Vermittlungseinrichtung oder -Server einschließt, ebenso wie andere Arten von prozessorbasierten Kommunikationssteuerungseinrichtungen wie etwa Medienserver, Computer, Adjuncts, usw.
  • Die Vermittlungseinrichtung 130 und/oder der Server 110 können eine beliebige Architektur aufweisen, um Kontakte zu einer oder zu mehreren Telekommunikationseinrichtungen zu lenken. Beispielsweise können die Vermittlungseinrichtung und/oder der Server eine modifizierte Form des ACD-Systems auf Basis der Nebenstellenanlage (PBX) DefinityTM, der PBX MultiVantageTM, des CRM Central 2000 ServerTM, des Communication ManagerTM, des Medienservers S8300TM und/oder des Avaya Interaction CenterTM der Avaya Inc. darstellen. Typischerweise stellt die Vermittlungseinrichtung/der Server ein speicherprogrammgesteuertes System dar, das in herkömmlicher Weise Schnittstellen zu externen Kommunikationsverbindungen, ein Kommunikationskoppelnetz, Dienstschaltungen (z. B. Tongeneratoren, Ansageschaltungen usw.), einen Speicher zum Speichern von Steuerprogrammen und Daten sowie einen Prozessor (d. h. einen Computer) zum Ausführen der gespeicherten Steuerprogramme, um die Schnittstellen und das Koppelnetz zu steuern und eine automatische Kontaktverteilungsfunktionalität bereitzustellen, umfasst. Die Vermittlungseinrichtung und/oder der Server umfassen typischerweise eine (nicht gezeigte) Netzschnittstellenkarte, um Dienste für die bedienten Telekommunikationseinrichtungen bereitzustellen. Andere Arten bekannter Vermittlungseinrichtungen und Server sind im Fachgebiet allgemein bekannt und werden daher vorliegend nicht im Detail beschrieben.
  • Die ersten Telekommunikationseinrichtungen 134-1, ... 134-N sind paketvermittelt und können beispielsweise IP-Hardphones wie etwa die 4600 Series IP PhonesTM der Avaya Inc., IP-Softphones wie etwa das IP SoftphoneTM der Avaya Inc., persönliche digitale Assistenten oder PDAs, Personalcomputer oder PCs, Laptops, paketbasierte H.320-Videotelefone und Konferenzschaltungseinheiten, paketbasierte Sprachbenachrichtigungs- und Antworteinheiten, paketbasierte herkömmliche Computertelefonie-Adjuncts und eine andere Kommunikationseinrichtung sein.
  • Die zweiten Telekommunikationseinrichtungen 138-1, ... 138-M sind leitungsvermittelt und können beispielsweise drahtgebundene und drahtlose Telefone, PDAs, H.320-Videotelefone und Konferenzschaltungseinheiten, Sprachbenachrichtigungs- und -Antworteinheiten, herkömmliche Computertelefonie-Adjuncts und eine andere Kommunikationseinrichtung sein.
  • Das paketvermittelte Netz 162 kann ein beliebiges Datennetz und/oder Netz mit verteilter Verarbeitung wie etwa das Internet sein.
  • Das paketvermittelte Netz 162 steht in Verbindung mit einer externen ersten Telekommunikationseinrichtung 174 über ein Gateway 178, und das leitungsvermittelte Netz 154 mit einer externen zweiten Telekommunikationseinrichtung 180.
  • Es sei betont, dass die Konfiguration der Vermittlungseinrichtung, des Servers, der Nutzer-Telekommunikationseinrichtungen und andere Elemente, wie sie in 1 gezeigt ist, lediglich der Veranschaulichung dient und nicht als die Erfindung auf irgendeine spezielle Anordnung von Elementen einschränkend betrachtet werden sollte.
  • Nehmen wir Bezug auf 2, so ist in dieser eine mögliche Konfiguration des Servers 110 dargestellt. Der Server 110 steht in Verbindung mit einer Mehrzahl von Teilnehmerkommunikationsleitungen 200a–y (welches eine oder mehrere Amtsleitungen, Telefonleitungen, usw. sein können) und einer Agentenkommunikationsleitung 204 (welches eine Übertragungsleitung für Sprache und Daten wie etwa eine LAN-Leitung 142 und/oder eine leitungsvermittelte Sprachleitung 140 sein kann). Der Server 110 kann ein Ereignisverarbeitungsmodul 228 wie beispielsweise eine modifizierte Form des Basic Call Management SystemTM oder BCMS, Call Management SystemTM und/oder Operational AnalystTM der Avaya Inc. sein, welche Anrufdatensätze und Kontaktzentralen-Statistik zur Nutzung bei der Erzeugung von Kontaktzentralen-Berichten sammelt.
  • Unter den in dem Server 110 gespeicherten Daten befindet sich ein Satz von Kontaktwarteschlangen 208a–n und ein separater Satz von Agentenwarteschlangen 112a–n. Jede Kontaktwarteschlange 208a–n entspricht einem unterschied lichen Satz von Agenten-Fähigkeiten, ebenso wie jede Agentenwarteschlage 212a–n. Herkömmlich wird Kontakten eine Priorität zugeordnet und sie werden entweder in einzelnen Kontaktwarteschlangen 208a–n in der Reihenfolge ihrer Priorität eingereiht oder werden in unterschiedlichen einer Mehrzahl von Kontaktwarteschlangen, die einer unterschiedlichen Priorität entsprechen, eingereiht. Gleichfalls wird den Fähigkeiten jedes Agenten eine Priorität zugeordnet, und zwar entsprechend dem Niveau der Expertenkenntnisse bezüglich dieser Fähigkeit, und die Agenten werden entweder in einzelnen Agentenwarteschlangen 212a–n in der Reihenfolge ihre Niveaus an Fachkenntnissen eingereiht oder werden in unterschiedliche einer Mehrzahl von Agentenwarteschlangen 212a–n eingereiht, die einer Fähigkeit entsprechen und wovon jede einem unterschiedlichen Niveau an Fachkenntnissen entspricht. Unter den Steuerprogrammen in dem Server 110 befindet sich ein Kontaktvektor 216. Kontakte, die in der Kontaktzentrale eingehen, werden durch den Kontaktvektor 216 unterschiedlichen Kontaktwarteschlangen 208a–n zugeordnet, und zwar auf Basis einer Reihe vorbestimmter Kriterien, darunter der Identität des Kunden, den Ansprüchen des Kunden, den Ansprüchen der Kontaktzentrale, der momentanen Länge der Warteschlangen der Kontaktzentrale, dem Wert des Kunden und der Fähigkeit des Agenten, die zur richtigen Abwicklung des Kontakts erforderlich ist. Agenten, die zur Abwicklung von Kontakten zur Verfügung stehen, werden auf Basis der Fähigkeiten und/oder des Niveaus an Fähigkeiten, die sie besitzen, den Agentenwarteschlangen 212a–n zugeordnet.
  • 3 stellt eine Ausführungsform des Ereignisverarbeitungsmoduls 228 dar. Das Modul 228 umfasst einen ersten Satz 300 von Einrichtungen, nämlich eine Firmendatenbank 304 und ein Extraktions-, Transformations- und Lade- oder ETL-Moduls 308, die von der Firma kontrolliert werden, sowie einen zweiten Satz 312 von Einrichtungen, nämlich die firmenkontrollierte(n) Spezifikation(en) 318, einen Datenmodellmodifikator 322, Arbeitswarteschlangen 316a–n, ein Datenimportmodul 320, eine Anbieter-Datenbank 324, eine Erweiterungstabelle 328, ein Semantik-Modul 332, eine Schlüsselverwaltung 336 sowie einen Identitätsauflösungsdienst 340, die alle von einer dritten Seite, beispielsweise dem Hersteller, Anbieter oder der Dienstanbieter- oder Verwaltungsentität der Kontaktzentralen-Software kontrolliert werden. Anders ausgedrückt besitzen die Firma und die dritte Seite einen ersten und einen zweiten Satz von Berechtigungen, was die Modifikation der Datenbanksoftware der Kontaktzentrale betrifft, wobei der erste Satz von Berechtigungen nicht die Fähigkeit einschließt, die Datenbanksoftware und/oder das Datenmodell der Kontaktzentrale zu modifizieren, und wobei der zweite Satz von Berechtigungen diese Fähigkeit einschließt. Das "Modifizieren der Datenbanksoftware und/oder des Datenmodells" umfasst beispielsweise die Fähigkeit, Dimensionen, Schlüssel oder Attribute sowie Zeilen und/oder Spalten von Tabellen einzufügen, zu löschen und/oder zu aktualisieren.
  • Die Firmendatenbank 304 sowie das ETL-Modul 308 sind herkömmlich. Wie zu erkennen sein wird, liest das ETL-Modul 308 Daten aus seiner Quelle, bereinigt diese und formatiert sie einheitlich und schreibt sie danach in das Ziel-Repository, welches als eine Arbeitswarteschlange 316 dargestellt ist. Beispielshalber führt das ETL-Modul 308 etwaige Abbildungen von Schlüsseln/Identifiern von externen Quellen auf natürliche Schlüssel aus, die von dem durch die dritte Seite kontrollierten System erkannt werden. Das ETL-Modul 308 stellt ferner sicher, dass die korrekten Daten geladen werden. Dies kann die Ausführung von Berechnungen oder anderen Transformationen an den Daten sowie die Verknüpfung dieser mit den richtigen Entitäten beinhalten. Beispiele für geeignete Software für die Firmendatenbank 304 sind die Datenbankprodukte von OracleTM sowie die SQL-Server-Datenbankprodukte von MicrosoftTM sowie die Software zur Verwaltung von Kundenbeziehungen von SiebelTM, und Beispiele für geeignete ETL-Module sind die ETL-Systeme, die von MicrosoftTM, OracleTM, IBMTM, der Ascential Software CorporationTM und Hummingbird LtdTM angeboten werden.
  • Die firmenkontrollierte(n) Spezifikation(en) 318 und der Datenmodellmodifikator 322 stellen zusammen ein erweiterbares Datenmodell bereit, das von der dritten Seite nach Anforderung durch die Firma modifiziert werden kann. Die Spezifikation(en) stellt/stellen vorzugsweise eine Metadaten-Spezifikation der Firma dar. Die Spezifikation stellt eine Datei in eXtended Markup Language oder XML dar, welche die Tabellen und Spalten definiert, die in das Datenmodell eingefügt werden sollen, aus diesem gelöscht werden sollen oder in diesem aktualisiert werden sollen. Die Spezifikation stellt vorzugsweise einen Satz von XML-Tags und deren Beziehungen zueinander dar. Die Firma ändert die Spezifikation(en) manuell und/oder über eine Benutzerschnittstelle. Die Benutzerschnittstelle würde beispielsweise dem Nutzer eine Reihe von Anfragen stellen, was die vorgeschlagenen Modifikationen betrifft, und würde die Antworten in eine XML-Datei in der/den Spezifikation(en) schreiben. Um dies zu ermöglichen, kann die Firma bei einer Konfiguration ausgewählte Teile des Datenmodells und/oder der echten Tabellen für die Datenbank 324 anschauen (ohne Änderungsberechtigungen). Der Datenmodellmodifikator 322 implementiert die in der/den Spezifikation(en) 318 angegebene Modifikation. Das Datenmodell kann von dem Datenmodifikator 322 in zumindest folgender Weise modifiziert werden:
    • 1. anwendungsspezifische Fakten können zu einer existierenden Faktentabelle hinzugefügt werden;
    • 2. anwendungsspezifische Fakten können zu einer neuen Tabelle hinzugefügt werden, die parallel einer bestehenden Faktentabelle vorgesehen wird;
    • 3. anwendungsspezifische Attribute können zu einer bestehenden Dimensionstabelle hinzugefügt werden;
    • 4. anwendungsspezifische Attribute können zu einer neuen Tabelle hinzugefügt werden, die parallel zu einer bestehenden Dimensionstabelle vorgesehen ist; und
    • 5. anwendungsspezifische Tabellen können hinzugefügt werden.
  • Dies vorausgesetzt, umfasst/umfassen die Spezifikationen typischerweise Spezifikationen, welche die Daten betreffen, die von dem ETL-Modul empfangen werden sollen. Beispiele für solche Spezifikationen sind Dimensionsidentitäten und Beziehungen zu anderen Objekten (d. h. Dimensionen, Schlüsseln und Attributen) in dem Datenmodell 324, die Identitäten neuer Reihen und Spalten sowie die Beziehungen zu anderen Objekten in dem Datenmodell, Schlüsselidentitäten und -typen sowie deren Beziehungen zu anderen Objekten in dem Datenmodell, Attributidentitäten und -beziehungen zu anderen Objekten in dem Datenmodell, die Identitäten von Spalten, welche Änderungen vom Typ 1 oder 2 erfordern, und dergleichen.
  • Wenn eine existierende Fakten- oder Dimensionstabelle erweitert wird, werden die Spalten, die in der/den Spezifikation(en) spezifiziert sind, von dem Modifikator 322 zu der existierenden Tabelle hinzugefügt. Dies ermöglicht eine einfachere und bessere Ausführung von Listenabfragen, kann aber zu breiten Tabellen führen. Dieser Ansatz ist natürlich beschränkt, wenn eine spezielle Datenbankimplementierung die Anzahl der Spalten, die in einer Tabelle gestattet sind, einschränkt.
  • Um Einschränkungen bezüglich breiter Tabellen zu umgehen, kann der Datenmodellmodifikator 322 eine neue Tabelle erzeugen, die parallel zu der bestehenden Tabelle vorgesehen wird. Die neue Tabelle enthält die anwendungsspezifischen Spalten sowie einen Schlüssel, der sich auf die bestehende Tabelle bezieht. Dieser Ansatz ist beliebig erweiterbar, erfordert aber eine Vereinigung, um auf die Spalten oder Datenfelder der Firma zuzugreifen. Neue Tabellen, die über diesen Ansatz erzeugt werden, werden von der dritten Seite in der gleichen Weise wie Standardtabellen verwaltet.
  • Der Modifikator 322 kann auch anwendungsspezifische Tabellen erzeugen, die vollständig von der Firma verwaltet werden.
  • Die neuen Tabellen und die Firmentabellen sind insgesamt in den Erweiterungstabellen 328 umfasst.
  • Für jede Tabelle mit anwendungsspezifischen Spalten und für jede Erweiterungstabelle 328 erzeugt der Modifikator 322 eine entsprechende Arbeitswarteschlange 316a–n. Jede Arbeitswarteschlange enthält die anwendungsspezifischen Spalten und den natürlichen Schlüssel und empfängt Daten von dem ETL-Modul 308 zum Import in die jeweilige anwendungsspezifische Spalte in der Datenbank 324 des Anbieters und/oder in die entsprechende anwendungsspezifische (Erweiterungs-)Tabelle 328. Vorzugsweise sind die einzigen Tabellen, in welche die Firma schreiben kann, die Arbeitswarteschlangentabellen und etwaige firmenkontrollierte anwendungsspezifische Tabellen.
  • Das Datenimportmodul 320 kopiert die Daten aus den Arbeitswarteschlangen 316a–n gegebenenfalls in die Datenbank 324 der dritten Seite und die Erweiterungstabellen 328. Das Modul 320 wirkt als ein Eingabeadapter, der die Datensätze in der Arbeitswarteschlange in normierte Ereignisse übersetzt und nötigenfalls Dimensionsaktualisierungen vornimmt. Ein "Ereignis" ist ein Vorkommnis oder ein Vorfall, und ein "normiertes Ereignis" ist ein Ausdruck für ein Ereignis, das mit den Datenstrukturen in dem Datenmodell der dritten Seite konsistent ist. Normierte Ereignisse werden für jede Aktualisierung erzeugt und werden zur Verarbeitung in das System 312 eingespeist. Beispielsweise konvertiert das Modul 320 natürliche Schlüssel zu Entitätsidentifiern oder für die Datenbank 324 der Kontaktzentrale internen Schlüsseln, und zwar mit Hilfe des (optionalen) Identitätsauflösungsdienstes (IRS – Identity Resolution Service) 340 und der Schlüsselverwaltung 336.
  • Das Datenimportmodul kann auf mehrerlei Weise anwendungsspezifische Ereignisse in normierte Ereignisse konvertieren. Beispielsweise kann ein XML-Schema für anwendungsspezifische Ereignisse definiert werden und ein Web-Dienst publiziert werden, der das XML in normierte Ereignisse übersetzt. Ein alternativer Ansatz besteht darin, einen anwendungsspezifischen Eingabeübersetzer zu implementieren, der Ereignisse von dem ETL-Modul 308 empfängt und diese in normierte Ereignisse übersetzt. Zusätzlich kann eine standardmäßige Ereignisquelle ihre eigenen anwendungsspezifisch gestaltbaren Ereignisfähigkeiten aufweisen.
  • Das Datenimportmodul kann derart terminiert werden, dass in es einem von der Firma spezifizierten Intervall läuft (z. B. täglich, stündlich, alle 5 Minuten, usw.), manuell aufgerufen wird, nachdem das ETL-Modul gelaufen ist, oder von einem Datenbanktrigger aufgerufen wird.
  • Der Identitätsauflösungsdienst 340 unterhält eine Tabelle mit Entitätsidentifiern, Hinweisen und entsprechenden natürlichen Schlüsseln. Ein "Hinweis" ist eine Form von Anweisung, die angibt, wann ein Surrogatschlüssel zur Nutzung gültig ist. Beispiele für Hinweise sind Ja/Nein-Merker bezüglich der Verfügbarkeit des Surrogatschlüssels für den momentanen Gebrauch, ein Datum und/oder eine Zeit, nach welchem/r der Surrogatschlüssel gültig ist, eine Signatur, die anzeigt, dass der Schlüssel gültig ist, ein bezeichnetes Ereignis, das auftreten muss, bevor der Schlüssel gültig ist, ein Zeitstempel (wie beispielsweise von der Entitäts-IDentifier- oder EID-Anforderung), der Surrogatschlüssel selbst, eine Sequenznummer und dergleichen. Bei einer Ausführungsform wird der Hinweis von der Schlüsselverwaltung genutzt, um von einer EID auf einen entsprechenden (gültigen) Surrogatschlüssel abzubilden.
  • Die Schlüsselverwaltung 336 verwaltet die Surrogatschlüssel. Wenn eine administrative Änderung bewirkt, dass ein neuer Surrogatschlüssel generiert wird, sendet die Schlüsselverwaltung 336 den Entitätsidentifier an den Identitätsauflösungsdienst 340 zusammen mit dem Hinweis, dass ein neuer Surrogatschlüssel verfügbar ist. Die Konfigurationen und Funktionsvorgänge des IRS 340 und der Schlüsselverwaltung 336 sind detailliert in der gleichzeitig anhängigen US-Anmeldung 11/199,828, eingereicht am 08. August 2005, mit dem Titel "Deferred Control of Surrogate Key Generation in a Distributed Processing Architecture" von Bland et al. beschrieben, die hier durch diese Bezugnahme einbezogen wird.
  • Das (optionale) Semantikmodul 332 bietet ein Objektmodell zum Aktualisieren von Dimensions- und Faktendaten an, versteckt die Details der Implementierung der realen Datenbank vor der Firma, einschließlich des realen Schemas, der Abstraktion der Datenbank der dritten Seite sowie der Dimensionssemantik vom Typ 2, verwaltet die Dimensionssemantik vom Typ 2 (d. h. wickelt Dimensionsänderungen vom Typ 2 ab, darunter die Erzeugung von Surrogatschlüsseln) und schreibt, in Zusammenarbeit mit dem Datenimportmodul 320, Dimensions- und Faktendaten in die Datenbanken.
  • Die Drittseiten-, Erweiterungstabellen- und Firmendatenbank, 304, 324 und 328, bilden zusammen die Datenbank 114 aus 1. Die Datenbanken enthalten Fakten und Messwerte und damit in Beziehung stehende Semantik, eine Anzahl von Firmenobjekten betreffend, beispielsweise Kunden, Agenten, Kontakte oder Arbeitsthemen, sowie die Agenten- und Kontaktwarteschlangen 208 und 212.
  • Die Funktionsweise des Datenmodellmodifikators 322 soll nun mit Bezug auf 4 diskutiert werden.
  • Der Prozess wird in Schritt 400 eingeleitet, wenn ein Eintrag durch die Firma in die Spezifikation(en) 318 geschrieben wird.
  • In Schritt 404 erkennt der Modifikator 322 den Eintrag durch ein geeignetes Verfahren. Das Verfahren kann beispielsweise in einem Abfragemechanismus bestehen, oder indem direkt der Modifikator 322 ausgelöst wird, nachdem der Eintrag erfolgte.
  • In Schritt 408 ruft der Modifikator 322 einen nächsten Eintrag in der/den Spezifikation(en) ab.
  • In Schritt 412 modifiziert der Modifikator 322 das Datenmodell wie durch den Eintrag angefordert.
  • In Schritt 416 löscht der Modifikator 322 den verarbeiteten Eintrag aus der/den Spezifikation(en).
  • Im Entscheidungsfeld 420 stellt der Modifikator 322 fest, ob es einen nächsten Eintrag in der/den Spezifikation(en) gibt. Falls nicht, kehrt der Modifikator 322 zu Schritt 400 zurück. Falls ja, kehrt der Modifikator 322 zu Schritt 408 zurück und wiederholt diesen in Bezug auf den nächsten Eintrag.
  • Ein Beispiel soll die Funktionsweise des Modifikators 322 veranschaulichen. Nehmen wir an, dass die Firma eine Agentenkennung zu dem Datenmodell hinzufügen möchte, weil die Firma eine interne Agentenkennung für jeden ihrer Agenten in der Kontaktzentrale hat. Die Firma möchte daher zu der Agentdimension des Datenmodells der dritten Seite hinzufügen. Die Firma erzeugt eine XML-Spezifikation, die angibt, dass eine Spalte (oder Dimension des Typs 2), die als "Kunden-ID" bezeichnet wird, zu der Tabelle Agentdimension hinzugefügt werden soll. Der Spaltentyp wird als "String" bezeichnet. Wie zu erkennen sein wird, sind andere potentielle Typen für Spalten eine numerische Währung, ein ganze Zahl, Gleitzahl und Datum/Zeit. Die XML-Spezifikation lautet folgendermaßen:
    Figure 00250001
  • Unter Ansprechen darauf erzeugt der Modifikator in dem Datenmodell eine Erweiterungstabelle für die Tabelle Agentdimension, welche die Spalte Kunden-ID enthält (als ein Fremdschlüssel in dem Datenmodell der dritten Seite für die Datenbank 324) und fügt eine Arbeitswarteschlangentabelle hinzu, die mit der Erweiterungstabelle verknüpft ist. Nachdem Daten in die Arbeitswarteschlange für eine Kundenkennung geschrieben worden sind, werden sie von dem Datenimportmodul 320 in die entsprechende Erweiterungstabelle geschrieben. Wie zu erkennen sein wird, könnte die neue Spalte, anstatt dass eine separate Erweiterungstabelle erzeugt wird, direkt an das Datenmodell für die Datenbank 324 angefügt werden.
  • Die Funktionsweise des Datenimportmoduls 320, des Identitätsauflösungsdienstes 340, der Schlüsselverwaltung 336 und des Semantikmoduls 332 soll nun mit Bezug auf 5 beschrieben werden.
  • Im Schritt 500 schreibt das ETL-Modul 320 einen Datensatz/mehrere Datensätze in eine oder mehrere Arbeitswarteschlangen (z. B. Arbeitswarteschlangentabellen).
  • In Schritt 504 erkennt das Datenimportmodul 320 den/die neuen Datensatz/-sätze in der/den Arbeitswarteschlange(n). Die Erkennung erfolgt durch irgendein geeignetes Verfahren, beispielsweise durch einen Abfragemechanismus (bei welchem das Datenimportmodul periodisch (in definierten Intervallen) die Arbeitswarteschlangen nach Informationen über unverarbeitete Einträge abfragt), einen Datenbanktrigger (welcher Software in der Arbeitswarteschlange aktiviert; d. h. ein Datenbankcode in den Arbeitswarteschlangen ruft einen Applikationscode auf, wenn der Datenbankcode feststellt, dass eine neue Zeile in die Arbeitswarteschlangentabelle geschrieben worden ist) oder indem die Firma direkt eine Importapplikation auslöst, nachdem in die Warteschlangentabelle geschrieben werden ist.
  • In Schritt 508 ruft das Datenimportmodul 320 den nächsten (eingegebenen) Datensatz aus der Arbeitswarteschlange ab.
  • In Schritt 512 führt das Datenimportmodul 320 etwaig notwendige Transformationen an dem abgerufenen Datensatz zur Normierung der Daten aus. Beispielsweise werden die (externen) natürlichen Schlüssel der Firma in (interne) Schlüssel des Datenbankmodells (beispielsweise Entitätsidentifier) konvertiert.
  • In Schritt 516 liest das Datenimportmodul 320 den seit kürzestem existierenden Datensatz aus der Datenbank 114 für den spezifizierten internen Schlüssel.
  • In Schritt 520 vergleicht das Modul 320 die Attribute des existierenden Datenbank-Datensatzes mit den neuen Attributen in dem abgerufenen Datensatz.
  • Im Entscheidungsfeld 524 stellt das Modul 320 fest, ob sich irgendwelche Attribute geändert haben. Anders ausgedrückt stellt das Modul fest, ob die Attribute in dem abgerufenen Datensatz sich von den Attributen in der Datenbank 114 für den spezifizierten internen Schlüssel unterscheiden.
  • Wenn keine Änderung vorhanden ist, führt das Modul 320 in Schritt 528 keinerlei Änderung an der Datenbank 114 für den abgerufenen Datensatz aus.
  • Wenn eine Änderung vorhanden ist, stellt das Modul 320 im Entscheidungsfeld 536 fest, ob sich irgendwelche Attribute vom Typ 2 geändert haben.
  • Wenn sich kein Attribut vom Typ 2 geändert hat, führt das Modul 320 in Schritt 532 eine Aktualisierung vom Typ 1 aus. Bei einer Konfiguration wird, wenn eine Dimension vom Typ 1 konfiguriert wird, der Entitätsidentifier als der Schlüssel genutzt, und eine Aktualisierung in Schritt 532 beeinflusst die existierende Zeile in der Tabelle.
  • Wenn sich ein Attribut vom Typ 2 geändert hat, erzeugt das Semantikmodul in Schritt 540 einen neuen Surrogatschlüssel, und in Schritt 544 fügt das Datenimportmodul 320 einen neuen Datensatz, der den neuen Surrogatschlüssel und einen/mehrere neue(n) Attributwert(e) enthält, ein.
  • Bei einer Konfiguration, wenn eine Dimension vom Typ 2 konfiguriert wird und sich die Aktualisierung auf eine Dimension bezieht, wählen die Module 320 und 332 die momentanen Dimensionsdaten aus der Datenbank aus (wobei die Auswahl auf dem Entitätsidentifier oder der Nutzung der Schlüsselverwaltung 336 zur Abbildung des Entitätsidentifiers auf einen entsprechenden Surrogatschlüssel basiert) (Schritt 516); vergleicht die momentanen Daten mit den für die Aktualisierung angeforderten neuen Daten (falls keine Spalten geändert wurden, ist keine momentane Aktualisierung notwendig) (Schritt 520); stellt fest, welche Spalte vom Typ 2 ist (Schritt 536); erzeugt, wenn alle Änderungen auf Spalten vom Typ 1 beschränkt sind, eine Aktualisierungsanweisung, um die momentane Zeile in der Datenbank zu aktualisieren (Schritt 532); und fordert, falls sich eine Spalte vom Typ 2 geändert hat, einen neuen Surrogatschlüssel von der Schlüsselverwaltung an (Schritt 540) und generiert eine Einfügungsanweisung, um eine neue Zeile in die Datenbank mit dem neuen Surrogatschlüssel einzufügen (Schritt 544).
  • Falls eine Spalte vom Typ 2 konfiguriert wird und die Aktualisierung einen Fakt betrifft, aktualisieren die Module 320 und 322 den Fakt, indem sie einen Surrogatschlüssel von der Schlüsselverwaltung anfordern, und zwar unter Nutzung des Entitätsidentifiers und eines Hinweises (wie erwähnt informiert der Hinweis die Schlüsselverwaltung darüber, welcher Surrogatschlüssel für die spezielle Faktenaktualisierung gilt, und wird von dem IRS, dem Datenimportmodul oder einem Ereignisprozessor erzeugt und der Schlüsselverwaltung zur Verfügung gestellt) (Schritt 540), und erzeugt eine geeignete Anweisung in Structured Query Language (SQL), um die Faktdaten mit Hilfe des von der Schlüsselverwaltung bereitgestellten Surrogatschlüssels einzufügen oder zu aktualisieren (Schritt 544).
  • Eine Veranschaulichung der Funktionsweise des Dateneingabe- und des Semantikmoduls 320 und 332 soll unter Bezugnahme auf das vorstehende Beispiel diskutiert werden. Nehmen wir an, dass ein Agent "Bob Smith", der in der Datenbank 324 einen natürlichen Schlüssel "100" hat, eine entsprechende Kunden-ID "12345" aufweist. In der entsprechenden Arbeitswarteschlange schreibt das ETL-Modul einen Fremdschlüssel, nämlich "100" (der dem natürlichen Schlüssel der dritten Seite entspricht), und den entsprechenden natürlichen Schlüssel der Firma, oder die Kunden-ID, nämlich "12345". Das Datenimportmodul erkennt den Eintrag in der Arbeitstabelle und fügt einen entsprechenden Datensatz ein, nämlich eine neue Instanz "Bob Smith" mit einem neuen Schlüssel "101", weil die Änderung als eine Änderung vom Typ 2 spezifiziert ist. Der Datensatz stellt eine neue Zeile in der Tabelle Agentdimension dar, die durch den Schlüssel "101" identifiziert wird. Der Eintrag wird dann aus der Tabelle in der Arbeitswarteschlange gelöscht.
  • Eine Reihe von Varianten und Modifikationen der Erfindung können genutzt werden. Es wäre möglich, einige Merkmale der Erfindung vorzusehen, ohne dass andere vorgesehen werden.
  • Beispielsweise ist bei einer alternativen Ausführungsform die Erfindung nicht auf Dimensionsmodelle vom Typ 2 beschränkt, sondern auf irgendein Dimensionsmodell oder eine andere Art von relationalem (nicht-dimensionalem) Datenbankmodell. Die Erfindung ist insbesondere anwendbar auf jede Applikation, bei welcher eine komplizierte Semantik zwischen dem Datenmodell der Applikation und den Erweiterungen, die ein Kunde möglicherweise integrieren möchte, vorhanden ist. Obwohl eine Semantik vom Typ 2 ein gutes Beispiel für eine solche Komplexität darstellt, könnte es andere Anwendungen geben, die nur Typ-1-dimensionale oder nicht-dimensionale Datenbanken mit komplizierter Semantik umfassen.
  • Bei einer anderen alternativen Ausführungsform kann der Server und/oder die Vermittlungseinrichtung ein softwaregesteuertes System darstellen, das eine Verarbeitungseinheit (CPU), einen Mikroprozessor oder eine andere Art von digitalem Datenprozessor umfasst, der Software ausführt, oder eine anwendungsspezifische integrierte Schaltung (ASIC) wie auch verschiedene Teile oder Kombinationen solcher Elemente. Der Speicher kann einen Direktzugriffsspeicher (RAM), einen Nur-Lese-Speicher (ROM) oder Kombinationen dieser und anderer Arten elektronischer Speichereinrichtungen darstellen.
  • Die vorliegende Erfindung in ihren verschiedenen Ausführungsformen umfasst Komponenten, Verfahren, Prozesse, Systeme und/oder Vorrichtungen im Wesentlichen so, wie sie vorliegend dargestellt und beschrieben worden sind, einschließlich verschiedener Ausführungsformen, Teilkombinationen und Teilgruppen derselben. Fachleute auf dem Gebiet werden nach dem Verstehen der vorliegenden Offenbarung verstehen, wie die vorliegende Erfindung auszuführen und zu nutzen ist.
  • Die vorliegende Erfindung umfasst in verschiedenen Ausführungsformen das Bereitstellen von Einrichtungen und Prozessen ohne solche Elemente, die vorliegend oder in verschiedenen Ausführungsformen des Vorstehenden nicht dargestellt und/oder beschrieben worden sind, darunter ohne solche Elemente, die möglicherweise bei früheren Einrichtungen oder Prozessen verwendet worden sind, z. B. um das Funktionsverhalten zu verbessern, eine einfache Realisierung zu erreichen und/oder die Kosten der Realisierung zu reduzieren.
  • Die vorstehende Diskussion der Erfindung wurde zum Zwecke der Veranschaulichung und Beschreibung dargeboten. Mit dem Vorstehenden wird nicht beabsichtigt, die Erfindung auf die vorliegend offenbarte(n) Form oder Formen einzuschränken. In der vorstehenden detaillierten Beschreibung sind beispielsweise verschiedene Merkmale der Erfindung in. einer oder mehreren Ausführungsformen zusammengefasst, zum Zwecke der flüssigeren Offenbarung. Diese Methode der Offenbarung darf nicht dahingehend interpretiert werden, dass sie eine Intension widerspiegelt, dass die beanspruchte Erfindung mehr Merkmale erfordere, als explizit in jedem Anspruch angeführt sind. Wie die folgenden Ansprüche reflektieren, beruhen die erfindungsgemäßen Aspekte vielmehr auf weniger als allen Merkmalen einer einzigen vorstehend offenbarten Ausführungsform. Die folgenden Ansprüche seien hiermit also in diese detaillierte Beschreibung einbezogen, wobei jeder Anspruch für sich allein für eine separate bevorzugte Ausführungsform der Erfindung steht.
  • Obgleich darüber hinaus die Beschreibung der Erfindung die Beschreibung einer oder mehrerer Ausführungsformen und bestimmter Varianten und Modifikationen umfasste, liegen auch andere Varianten und Modifikationen innerhalb des Schutzumfangs der Erfindung, wie sie zum Beispiel nach dem Verstehen der vorliegenden Offenbarung im Rahmen der Fertigkeiten und Kenntnisse von Fachleuten auf dem Gebiet liegen werden. Es wird beabsichtigt, Rechte zu erlangen, die alternative Ausführungsformen in dem gestatteten Umfang einschließen, darunter alternative, austauschbare und/oder äquivalente Strukturen, Funktionen, Bereiche oder Schritte zu den beanspruchten, egal ob diese alternativen, austauschbaren und/oder äquivalenten Strukturen, Funktionen, Bereiche oder Schritte vorliegend offenbart sind oder nicht, und ohne die Absicht, etwaig patentierbare Erfindungsmerkmale öffentlich zu überlassen.

Claims (15)

  1. Datenverarbeitungssystem, umfassend: eine erste Datenbank (304), die von einer ersten Seite unterhalten wird; eine zweite Datenbank (324, 328), die von einer zweiten Seite unterhalten wird, die sich von der ersten Seite unterscheidet; Arbeitswarteschlangenmittel (316) zum Spezifizieren von Daten, die zu der zweiten Datenbank hinzugefügt werden sollen; Extraktions-, Transformations- und Lademittel (308) zum Schreiben von Daten aus der ersten Datenbank in die Arbeitswarteschlangenmittel; und Datenimportmittel (320) zum Importieren von Daten aus der Arbeitswarteschlange in die zweite Datenbank, wobei die erste Seite nicht berechtigt ist, die Daten direkt in die zweite Datenbank zu schreiben.
  2. System nach Anspruch 1, bei welchem die erste Seite ein Kunde ist und die zweite Seite ein Verkäufer der zweiten Datenbank ist, wobei die erste Seite nicht berechtigt ist, die Semantik der zweiten Datenbank direkt zu modifizieren, wobei die erste Seite nicht berechtigt ist, bereits existierende Daten aus der zweiten Datenbank zu löschen und bereits existierende Daten in der zweiten Datenbank zu aktualisieren, und wobei die zweite Seite nicht berechtigt ist, die Semantik der ersten Datenbank direkt zu modifizieren, und welches ferner umfasst: Semantikmittel zum Ausführen von Aktualisierungen an Dimensionssemantik vom Typ 2 in der zweiten Datenbank, um den importierten Daten Rechnung zu tragen.
  3. System nach Anspruch 2, bei welchem die erste Seite berechtigt ist, zumindest ausgewählte Teile der zweiten Datenbank anzuschauen, und welche ferner umfasst: eine Spezifikation (318), um eine zweite Datenbank, die von einer zweiten Seite unterhalten wird, zu erweitern, wobei die Spezifikation von der ersten Seite bereitgestellt wird; und Modifikatormittel (322), um ein Datenmodell zu modifizieren, das die zweite Datenbank beschreibt, um die Spezifikation zu reflektieren und die Arbeitswarteschlangenmittel, die der Modifikation entsprechen, zu erzeugen.
  4. System nach einem der Ansprüche 1 bis 3, bei welchem die Arbeitswarteschlangenmittel einen natürlichen Schlüssel für die erste Datenbank umfassen, wobei der natürliche Schlüssel bezüglich der zweiten Datenbank extern ist, wobei die Datenimportmittel den natürlichen Schlüssel in einen für die zweite Datenbank internen und für die erste Datenbank externen Schlüssel konvertieren, und wobei die Modifikation zumindest eine der folgenden darstellt: (i) Hinzufügen von anwendungsspezifischen Fakten zu einer existierende Faktentabelle in der zweiten Datenbank; (ii) Hinzufügen von anwendungsspezifischen Fakten zu' einer neuen Tabelle, die parallel einer existierenden Faktentabelle in der zweiten Datenbank vorgesehen wird; (iii) Hinzufügen von anwendungsspezifischen Attributen zu einer existierenden Dimensionstabelle in der zweiten Datenbank; (iv) Hinzufügen von anwendungsspezifischen Attributen zu einer neuen Tabelle, die parallel einer existierenden Dimensionstabelle in der zweiten Datenbank vorgesehen ist; und (v) Hinzufügen einer anwendungsspezifischen Tabelle.
  5. Verfahren, umfassend: (a) Empfangen, von einer ersten Seite, eines Satzes von Spezifikationen, die eine Erweiterung an einer zweiten Datenbank definieren, die von der zweiten Seite unterhalten wird; (b) Modifizieren der zweiten Datenbank wie in dem Satz von Spezifikationen angegeben, wobei die Modifikation zumindest entweder eine anwendungsspezifische Tabelle oder eine anwendungsspezifische Spalte in einer Tabelle umfasst; (c) Erzeugen einer Arbeitswarteschlange entsprechend der Modifikation; (d) Empfangen von ersten Daten aus einer ersten Datenbank durch die Arbeitswarteschlange; (e) Normieren der ersten Daten, um zweite Daten zu bilden, wobei die ersten Daten mit der ersten Datenbank semantisch kompatibel sind und mit der zweiten Datenbank semantisch inkompatibel sind und wobei die zweiten Daten mit der ersten Datenbank semantisch inkompatibel sind und mit der zweiten Datenbank semantisch kompatibel sind; und (f) Schreiben der zweiten Daten in zumindest entweder eine anwendungsspezifische Tabelle oder eine anwendungsspezifische Spalte in einer Tabelle.
  6. Verfahren nach Anspruch 5, bei welchem eine Arbeitswarteschlange für jeden einer Mehrzahl von Spezifikationssätzen erzeugt wird, wobei die erste Seite ein Kunde ist und die zweite Seite ein Verkäufer der zweiten Datenbank ist, wobei die erste Seite nicht berechtigt ist, die Semantik der zweiten Datenbank direkt zu modifizieren, wobei die erste Seite nicht berechtigt ist, direkt in die zweite Datenbank zu schreiben und wobei die zweite Seite nicht berechtigt ist, die Semantik der ersten Datenbank direkt zu modifizieren, und welches ferner umfasst: (g) Gestatten, dass die erste Seite nur ausgewählte Teile der zweiten Datenbank anschaut.
  7. Verfahren nach einem der Ansprüche 5 bis 6, bei welchem die Modifikation zumindest eine der folgenden darstellt: (i) Hinzufügen von anwendungsspezifischen Fakten zu einer existierenden Faktentabelle in der zweiten Datenbank; (ii) Hinzufügen von anwendungsspezifischen Fakten zu einer neuen Tabelle, die parallel einer existierenden Faktentabelle in der zweiten Datenbank vorgesehen wird; (iii) Hinzufügen von anwendungsspezifischen Attributen zu einer existierenden Dimensionstabelle in der zweiten Datenbank; (iv) Hinzufügen von anwendungsspezifischen Attributen zu einer neuen Tabelle, die parallel einer existierenden Dimensionstabelle in der zweiten Datenbank vorgesehen wird; und (v) Hinzufügen einer anwendungsspezifischen Tabelle.
  8. Verfahren nach einem der Schritte 5 bis 7, bei welchem in Schritt (e) die Arbeitswarteschlange einen natürlichen Schlüssel für die erste Datenbank umfasst, wobei der natürliche Schlüssel bezüglich der zweiten Datenbank extern ist und wobei das Datenimportmodul den natürlichen Schlüssel in einen für die zweite Datenbank internen und für die erste Datenbank externen Schlüssel umwandelt, und welches ferner umfasst: (h) nach Schritt (b) Löschen des verarbeiteten Satzes von Spezifikationen.
  9. Verfahren nach einem der Ansprüche 5 bis 8, bei welchem der Schreibschritt umfasst: (f1) Vergleichen eines ersten Satzes von Attributen in der zweiten Datenbank mit einem entsprechenden bereits existierenden zweiten Satz von Attributen in der zweiten Datenbank; (f2) wenn der erste und der zweite Satz von Attributen unterschiedlich sind, Feststellen, ob sich ein Attribut vom Typ 2 geändert hat; (f3) wenn sich kein Attribut vom Typ 2 geändert hat, Ausführen einer Aktualisierung vom Typ 1 an der zweiten Datenbank; und (f4) wenn sich ein Attribut vom Typ 2 geändert hat, Generieren eines neuen Surrogatschlüssels und Einfügen eines neuen Datensatzes in die zweite Datenbank, der den neuen Surrogatschlüssel und den ersten Satz von Attributen enthält.
  10. Verfahren nach Anspruch 7, wobei die Modifikation (i) ist.
  11. Verfahren nach Anspruch 10, wobei die Modifikation (ii) ist.
  12. Verfahren nach Anspruch 11, wobei die Modifikation (iii) ist.
  13. Verfahren nach Anspruch 12, wobei die Modifikation (iv) ist.
  14. Verfahren nach Anspruch 13, wobei die Modifikation (v) ist.
  15. Computerlesbares Medium, welches ausführbare Anweisungen zum Ausführen der Schritte gemäß Anspruch 5 umfasst.
DE102006047499A 2005-10-06 2006-10-05 Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen Ceased DE102006047499A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/246,789 US7752230B2 (en) 2005-10-06 2005-10-06 Data extensibility using external database tables
US11/246,789 2005-10-06

Publications (1)

Publication Number Publication Date
DE102006047499A1 true DE102006047499A1 (de) 2007-04-12

Family

ID=37434776

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006047499A Ceased DE102006047499A1 (de) 2005-10-06 2006-10-05 Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen

Country Status (5)

Country Link
US (1) US7752230B2 (de)
JP (1) JP4499699B2 (de)
CN (1) CN100541492C (de)
DE (1) DE102006047499A1 (de)
GB (1) GB2431022A (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415417B2 (en) * 2002-03-15 2008-08-19 Avaya Technology Corp. Presence awareness agent
US8094804B2 (en) 2003-09-26 2012-01-10 Avaya Inc. Method and apparatus for assessing the status of work waiting for service
US7734032B1 (en) 2004-03-31 2010-06-08 Avaya Inc. Contact center and method for tracking and acting on one and done customer contacts
US8000989B1 (en) 2004-03-31 2011-08-16 Avaya Inc. Using true value in routing work items to resources
US7953859B1 (en) 2004-03-31 2011-05-31 Avaya Inc. Data model of participation in multi-channel and multi-party contacts
US8738412B2 (en) 2004-07-13 2014-05-27 Avaya Inc. Method and apparatus for supporting individualized selection rules for resource allocation
US7949121B1 (en) 2004-09-27 2011-05-24 Avaya Inc. Method and apparatus for the simultaneous delivery of multiple contacts to an agent
US8234141B1 (en) 2004-09-27 2012-07-31 Avaya Inc. Dynamic work assignment strategies based on multiple aspects of agent proficiency
US7809127B2 (en) 2005-05-26 2010-10-05 Avaya Inc. Method for discovering problem agent behaviors
US7779042B1 (en) 2005-08-08 2010-08-17 Avaya Inc. Deferred control of surrogate key generation in a distributed processing architecture
US7822587B1 (en) 2005-10-03 2010-10-26 Avaya Inc. Hybrid database architecture for both maintaining and relaxing type 2 data entity behavior
US7787609B1 (en) 2005-10-06 2010-08-31 Avaya Inc. Prioritized service delivery based on presence and availability of interruptible enterprise resources with skills
US8737173B2 (en) 2006-02-24 2014-05-27 Avaya Inc. Date and time dimensions for contact center reporting in arbitrary international time zones
US7418453B2 (en) * 2006-06-15 2008-08-26 International Business Machines Corporation Updating a data warehouse schema based on changes in an observation model
US7936867B1 (en) 2006-08-15 2011-05-03 Avaya Inc. Multi-service request within a contact center
US8391463B1 (en) 2006-09-01 2013-03-05 Avaya Inc. Method and apparatus for identifying related contacts
US8811597B1 (en) 2006-09-07 2014-08-19 Avaya Inc. Contact center performance prediction
US8938063B1 (en) 2006-09-07 2015-01-20 Avaya Inc. Contact center service monitoring and correcting
US8255374B2 (en) * 2006-10-02 2012-08-28 Salesforce.Com, Inc. Method and system for selecting amongst a plurality of processes to send a message
US10387440B2 (en) 2007-03-29 2019-08-20 Jda Software Group, Inc. Generic data staging and loading using enhanced metadata and associated method
US8108335B2 (en) * 2007-07-17 2012-01-31 Teradata Us, Inc. Techniques for integrating disparate data access mechanisms
US8504534B1 (en) 2007-09-26 2013-08-06 Avaya Inc. Database structures and administration techniques for generalized localization of database items
US8862979B2 (en) * 2008-01-15 2014-10-14 Microsoft Corporation Multi-client collaboration to access and update structured data elements
US8856182B2 (en) 2008-01-25 2014-10-07 Avaya Inc. Report database dependency tracing through business intelligence metadata
US8078570B2 (en) * 2009-05-01 2011-12-13 International Business Machines Corporation Versioning data warehouses
US8565386B2 (en) 2009-09-29 2013-10-22 Avaya Inc. Automatic configuration of soft phones that are usable in conjunction with special-purpose endpoints
US8527443B2 (en) * 2009-10-08 2013-09-03 Oracle International Corporation Techniques for processing ontologies
US9516069B2 (en) 2009-11-17 2016-12-06 Avaya Inc. Packet headers as a trigger for automatic activation of special-purpose softphone applications
US8655859B2 (en) * 2010-03-01 2014-02-18 International Business Machines Corporation Concurrency control for extraction, transform, load processes
TWI461929B (zh) * 2011-12-09 2014-11-21 Promise Tecnnology Inc 雲端數據儲存系統
US10445664B2 (en) * 2013-02-20 2019-10-15 Walmart Apollo, Llc Systems and methods for navigating and reserving building spaces
US9442977B2 (en) 2013-09-06 2016-09-13 Sap Se Database language extended to accommodate entity-relationship models
US9361407B2 (en) 2013-09-06 2016-06-07 Sap Se SQL extended with transient fields for calculation expressions in enhanced data models
US9619552B2 (en) * 2013-09-06 2017-04-11 Sap Se Core data services extensibility for entity-relationship models
US9430523B2 (en) 2013-09-06 2016-08-30 Sap Se Entity-relationship model extensions using annotations
US9639572B2 (en) 2013-09-06 2017-05-02 Sap Se SQL enhancements simplifying database querying
US10078699B2 (en) * 2013-12-31 2018-09-18 Facebook, Inc. Field mappings for properties to facilitate object inheritance
US20160110396A1 (en) * 2014-10-21 2016-04-21 Macrodata, Inc. Data processing apparatuses, methods, and non-transitory tangible machine-readable medium thereof
GB2534373A (en) 2015-01-20 2016-07-27 Ibm Distributed system with accelerator and catalog
GB2534374A (en) 2015-01-20 2016-07-27 Ibm Distributed System with accelerator-created containers
US9934277B2 (en) 2015-05-19 2018-04-03 International Business Machines Corporation Data management system with stored procedures
US10515326B2 (en) * 2015-08-28 2019-12-24 Exacttarget, Inc. Database systems and related queue management methods
US10133782B2 (en) * 2016-08-01 2018-11-20 Palantir Technologies Inc. Techniques for data extraction
CN110622152B (zh) * 2017-02-27 2021-04-13 分秒库公司 用于查询时间序列数据的可扩展数据库系统
EP3785133A4 (de) * 2018-04-24 2022-01-19 Von Drakk, Viktor Verbessertes verfahren und vorrichtung zum korrelieren mehrerer tabellen in einer datenbankumgebung
US10764253B2 (en) 2018-06-28 2020-09-01 Bank Of America Corporation System for using metadata to identify and extract specific upstream data, provisioning data batches, and providing dynamic downstream data access
CN110008264B (zh) * 2019-03-04 2020-12-25 广州易朋软件有限公司 成本核算系统的数据采集方法和装置
US11163761B2 (en) * 2020-03-20 2021-11-02 International Business Machines Corporation Vector embedding models for relational tables with null or equivalent values
CN112966047B (zh) * 2021-03-05 2023-01-13 上海沄熹科技有限公司 一种基于分布式数据库的复制表功能实现方法
CN114595294B (zh) * 2022-03-11 2022-09-20 北京梦诚科技有限公司 一种数据仓库建模和抽取方法及系统

Family Cites Families (345)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4163124A (en) 1978-07-24 1979-07-31 Rolm Corporation Finite storage-time queue
US4510351A (en) * 1982-10-28 1985-04-09 At&T Bell Laboratories ACD Management information system
US4567323A (en) * 1983-07-12 1986-01-28 At&T Bell Laboratories Method and apparatus for providing a plurality of special services
US4737983A (en) * 1985-10-02 1988-04-12 American Telephone And Telegraph Company Communications, Inc. Automatic call distributor telephone service
US5644727A (en) * 1987-04-15 1997-07-01 Proprietary Financial Products, Inc. System for the operation and management of one or more financial accounts through the use of a digital communication and computation system for exchange, investment and borrowing
US4797911A (en) * 1987-06-16 1989-01-10 Inventions, Inc. Customer account online servicing system
US4894857A (en) * 1987-06-16 1990-01-16 Inuentions Inc. Method and apparatus for customer account servicing
US5167010A (en) 1989-08-03 1992-11-24 Westinghouse Electric Corp. Expert advice display processing system
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5001710A (en) * 1989-10-24 1991-03-19 At&T Bell Laboratories Customer programmable automated integrated voice/data technique for communication systems
US5274700A (en) 1989-11-27 1993-12-28 Unifi Communications Corporation Methods of automatically rerouting an incoming telephone call placed over a network
US5155761A (en) 1990-01-26 1992-10-13 Intervoice, Inc. Automatic call back system and method of operation
US5164981A (en) 1990-06-04 1992-11-17 Davox Voice response system with automated data transfer
US5101425A (en) * 1990-08-07 1992-03-31 Digital Systems International, Inc. Operations monitoring system
US5325292A (en) 1990-10-12 1994-06-28 Crockett Gary B Tour/schedule generation for a force management system
US5289368A (en) * 1990-10-12 1994-02-22 Iex Corporation Force management system user interface
US5911134A (en) 1990-10-12 1999-06-08 Iex Corporation Method for planning, scheduling and managing personnel
US5185780A (en) * 1990-10-12 1993-02-09 Tex Corporation Method for predicting agent requirements in a force management system
AU9063891A (en) * 1990-11-20 1992-06-11 Unifi Communications Corporation Telephone call handling system
US5291550A (en) * 1990-12-26 1994-03-01 At&T Bell Laboratories Dynamic network call distributor
US5206903A (en) * 1990-12-26 1993-04-27 At&T Bell Laboratories Automatic call distribution based on matching required skills with agents skills
US5164983A (en) 1991-01-28 1992-11-17 American Telephone & Telegraph Company Telemarketing complex performance management system
US5097528A (en) 1991-02-25 1992-03-17 International Business Machines Corporation System for integrating telephony data with data processing systems
US5278898A (en) * 1991-05-30 1994-01-11 Davox Corporation System for managing a hold queue
US5210789A (en) 1991-06-28 1993-05-11 International Telecharge, Inc. Interactive telephone operator terminal
US5749079A (en) 1992-03-04 1998-05-05 Singapore Computer Systems Limited End user query facility including a query connectivity driver
US5335269A (en) 1992-03-12 1994-08-02 Rockwell International Corporation Two dimensional routing apparatus in an automatic call director-type system
US5642515A (en) 1992-04-17 1997-06-24 International Business Machines Corporation Network server for local and remote resources
US5504894A (en) * 1992-04-30 1996-04-02 International Business Machines Corporation Workload manager for achieving transaction class response time goals in a multiprocessing system
US6173052B1 (en) 1992-06-25 2001-01-09 Apropros Technology Blending communications in a call center
AU4653593A (en) 1992-06-25 1994-01-24 Teledata Solutions, Inc. Call distributor
US5444774A (en) 1992-06-26 1995-08-22 At&T Corp. Interactive queuing sytem for call centers
US5309513A (en) 1992-07-02 1994-05-03 Rockwell International Corporation Telephone system with ubiquitous agents
EP0587290B1 (de) 1992-07-30 2000-01-26 Teknekron Infoswitch Corporation Verfahren und System zur Überwachung und/oder Steuerung der Leistung einer Organisation
US5684964A (en) 1992-07-30 1997-11-04 Teknekron Infoswitch Corporation Method and system for monitoring and controlling the performance of an organization
WO1994006087A1 (en) * 1992-09-01 1994-03-17 Nuttall David J H Information model based on a physical system
US5469504A (en) 1992-10-14 1995-11-21 Blaha; David L. Automatic call distribution with intersubnetwork customer information transfer system and method
WO1994009585A1 (en) 1992-10-21 1994-04-28 Digital Systems International, Inc. Integrated intelligent call blending
US5335268A (en) 1992-10-22 1994-08-02 Mci Communications Corporation Intelligent routing of special service telephone traffic
CA2102868C (en) 1992-11-11 1999-10-26 Joseph E. Bloom Device for programming script sets in a telephone system
GB2273025B (en) 1992-11-12 1997-03-26 Rockwell International Corp Automatic call distributor with a programmable data window display system and method
CA2103204C (en) 1992-11-17 2002-11-12 Daniel F. Baker Call distributor with automatic preannouncement system and method
US5499291A (en) * 1993-01-14 1996-03-12 At&T Corp. Arrangement for automating call-center agent-schedule-notification and schedule-adherence functions
JPH06232982A (ja) * 1993-02-02 1994-08-19 Fujitsu Ltd 着信呼の分配制御方式
US5937051A (en) 1993-07-08 1999-08-10 Teknekron Infoswitch Corporation Method and system for transferring calls and call-related data between a plurality of call centers
AU677393B2 (en) 1993-07-08 1997-04-24 E-Talk Corporation Method and system for transferring calls and call-related data between a plurality of call centres
US5499386A (en) 1993-07-09 1996-03-12 Telefonaktiebolaget L M Ericsson Best server selection in layered cellular radio system
US5469503A (en) 1993-07-27 1995-11-21 Aspect Telecommunications Corporation Method for resynchronizing secondary database and primary database with preservation of functionality of an automatic call distribution system
US5594726A (en) * 1993-09-17 1997-01-14 Scientific-Atlanta, Inc. Frequency agile broadband communications system
AU693462B2 (en) 1993-09-22 1998-07-02 E-Talk Corporation Method and system for automatically monitoring the performance quality of call center service representatives
US5390243A (en) * 1993-11-01 1995-02-14 At&T Corp. Telemarketing complex with automatic threshold levels
US5436965A (en) 1993-11-16 1995-07-25 Automated Systems And Programming, Inc. Method and system for optimization of telephone contact campaigns
US5963911A (en) 1994-03-25 1999-10-05 British Telecommunications Public Limited Company Resource allocation
US5473773A (en) 1994-04-04 1995-12-05 International Business Machines Corporation Apparatus and method for managing a data processing system workload according to two or more distinct processing goals
US5537542A (en) 1994-04-04 1996-07-16 International Business Machines Corporation Apparatus and method for managing a server workload according to client performance goals in a client/server data processing system
US5537470A (en) 1994-04-06 1996-07-16 At&T Corp. Method and apparatus for handling in-bound telemarketing calls
US5577169A (en) 1994-04-29 1996-11-19 International Business Machines Corporation Fuzzy logic entity behavior profiler
US5864874A (en) * 1994-05-02 1999-01-26 Ubique Ltd. Community co-presence system
US6243714B1 (en) * 1997-04-11 2001-06-05 Ubique Ltd. Co-presence data retrieval system
GB2289149B (en) 1994-05-02 1998-11-18 Ubique Ltd A co-presence data retrieval system
US5790650A (en) 1994-06-01 1998-08-04 Davox Corporation Telephone call center management system which supports multi-user and separate private applications
US5784452A (en) 1994-06-01 1998-07-21 Davox Corporation Telephony call center with agent work groups
US5519773A (en) 1994-06-07 1996-05-21 Siemens Colm Communications Inc. Call sharing for inbound and outbound call center agents
US5506898A (en) 1994-07-12 1996-04-09 At&T Corp. Expected wait-time indication arrangement
US5592378A (en) * 1994-08-19 1997-01-07 Andersen Consulting Llp Computerized order entry system and method
US5682460A (en) 1994-08-29 1997-10-28 Motorola, Inc. Method for selecting transmission preferences
US5530744A (en) 1994-09-20 1996-06-25 At&T Corp. Method and system for dynamic customized call routing
US5611076A (en) * 1994-09-21 1997-03-11 Micro Data Base Systems, Inc. Multi-model database management system engine for databases having complex data models
US5594791A (en) 1994-10-05 1997-01-14 Inventions, Inc. Method and apparatus for providing result-oriented customer service
JPH08139802A (ja) 1994-11-10 1996-05-31 Fujitsu Ltd リングトリップ判定回路
US5752027A (en) 1994-11-30 1998-05-12 Dun & Bradstreet Software Services, Inc. Apparatus and process for creating and accessing a database centric object
US5836011A (en) 1995-01-20 1998-11-10 International Business Machines Corporation Implementation of teams and roles within a people oriented work environment
US6339754B1 (en) * 1995-02-14 2002-01-15 America Online, Inc. System for automated translation of speech
US5546452A (en) 1995-03-02 1996-08-13 Geotel Communications Corp. Communications system using a central controller to control at least one network and agent system
DE69636239T2 (de) 1995-04-24 2007-05-10 International Business Machines Corp. Verfahren und Gerät zur auf Geschicklichkeit basierten Leitweglenkung in einer Anrufzentrale
US5790642A (en) 1995-04-28 1998-08-04 Dialogic Corporation Competitively bidding service centers
US5748468A (en) 1995-05-04 1998-05-05 Microsoft Corporation Prioritized co-processor resource manager and method
US5606361A (en) * 1995-05-10 1997-02-25 Davidsohn; John Videophone interactive mailbox facility system and method of processing information
US5603029A (en) * 1995-06-07 1997-02-11 International Business Machines Corporation System of assigning work requests based on classifying into an eligible class where the criteria is goal oriented and capacity information is available
US5751707A (en) 1995-06-19 1998-05-12 Bell Atlantic Network Services, Inc. AIN interaction through wireless digital video network
US5627884A (en) 1995-06-26 1997-05-06 Williams; Mark J. Method for returning inbound calls
US5790677A (en) 1995-06-29 1998-08-04 Microsoft Corporation System and method for secure electronic commerce transactions
US6236655B1 (en) * 1995-07-19 2001-05-22 Fujitsu Network Communications, Inc. Port and link identification
US5684872A (en) 1995-07-21 1997-11-04 Lucent Technologies Inc. Prediction of a caller's motivation as a basis for selecting treatment of an incoming call
CA2181781C (en) * 1995-07-26 2000-02-29 Seiji Iwafune Television system for providing interactive television programs and server system for constructing the television system
US6411682B1 (en) 1995-09-21 2002-06-25 Aspect Telecommunications Corporation Computer controlled paging and telephone communication system and method
US5884032A (en) * 1995-09-25 1999-03-16 The New Brunswick Telephone Company, Limited System for coordinating communications via customer contact channel changing system using call centre for setting up the call between customer and an available help agent
US5742675A (en) 1995-09-26 1998-04-21 Telefonaktiebolaget Lm Ericsson Method and apparatus for automatically distributing calls to available logged-in call handling agents
US6430282B1 (en) 1995-09-29 2002-08-06 Nortel Networks Limited Methods and apparatus for originating voice calls
US5703943A (en) 1995-10-16 1997-12-30 Lucent Technologies, Inc. Completion of calls to a preferred agent in an automatic call distributor
US5930786A (en) 1995-10-20 1999-07-27 Ncr Corporation Method and apparatus for providing shared data to a requesting client
US5754841A (en) 1995-10-20 1998-05-19 Ncr Corporation Method and apparatus for parallel execution of user-defined functions in an object-relational database management system
US5794250A (en) 1995-10-20 1998-08-11 Ncr Corporation Method and apparatus for extending existing database management system for new data types
US5689698A (en) 1995-10-20 1997-11-18 Ncr Corporation Method and apparatus for managing shared data using a data surrogate and obtaining cost parameters from a data dictionary by evaluating a parse tree object
US6597685B2 (en) 1995-10-25 2003-07-22 Genesys Telecommunications Laboratories, Inc. Method and apparatus for determining and using multiple object states in an intelligent internet protocol telephony network
US6175564B1 (en) * 1995-10-25 2001-01-16 Genesys Telecommunications Laboratories, Inc Apparatus and methods for managing multiple internet protocol capable call centers
US5926538A (en) 1997-02-11 1999-07-20 Genesys Telecommunications Labs, Inc Method for routing calls to call centers based on statistical modeling of call behavior
US5915012A (en) 1997-01-14 1999-06-22 Genesys, Telecommunications Laboratories, Inc. System and method for operating a plurality of call centers
EP0770967A3 (de) 1995-10-26 1998-12-30 Koninklijke Philips Electronics N.V. System zur Entscheidungsunterstützung für das Management einer flinken Versorgungskette
US5754639A (en) 1995-11-03 1998-05-19 Lucent Technologies Method and apparatus for queuing a call to the best split
US5740238A (en) 1995-11-03 1998-04-14 Lucent Technologies Inc. Method and apparatus for queuing a call to the best backup split
US20030051136A1 (en) 1995-11-06 2003-03-13 Pavel Curtis Multimedia coordination system
US5754776A (en) 1995-12-28 1998-05-19 Intel Corporation Re-prioritizing background data transfers in multipoint conferencing
US5802282A (en) 1995-12-28 1998-09-01 Intel Corporation Recovering missing data during background data transfer in multipoint conferencing
US5742763A (en) 1995-12-29 1998-04-21 At&T Corp. Universal message delivery system for handles identifying network presences
US5802510A (en) 1995-12-29 1998-09-01 At&T Corp Universal directory service
US5826039A (en) 1995-12-29 1998-10-20 Lucent Technologies Inc. Universal connection point for resources and communication unrelated to a physical endpoint
US5757904A (en) 1996-02-05 1998-05-26 Lucent Technologies Inc. Context-sensitive presentation of information to call-center agents
US5973756A (en) 1996-02-06 1999-10-26 Fca Corporation IR Transmitter with integral magnetic-stripe ATM type credit card reader & method therefor
US5838968A (en) 1996-03-01 1998-11-17 Chromatic Research, Inc. System and method for dynamic resource management across tasks in real-time operating systems
US5909669A (en) 1996-04-01 1999-06-01 Electronic Data Systems Corporation System and method for generating a knowledge worker productivity assessment
US5914951A (en) 1996-04-16 1999-06-22 At&T Corp System and method for controlling and monitoring communication between customers and customer service representatives
US5867562A (en) 1996-04-17 1999-02-02 Scherer; Gordon F. Call processing system with call screening
US20030144900A1 (en) 2002-01-28 2003-07-31 Whitmer Michael L. Method and system for improving enterprise performance
US5915010A (en) 1996-06-10 1999-06-22 Teknekron Infoswitch System, method and user interface for data announced call transfer
US6064730A (en) 1996-06-18 2000-05-16 Lucent Technologies Inc. Customer-self routing call center
US5721770A (en) * 1996-07-02 1998-02-24 Lucent Technologies Inc. Agent vectoring programmably conditionally assigning agents to various tasks including tasks other than handling of waiting calls
US6052723A (en) 1996-07-25 2000-04-18 Stockmaster.Com, Inc. Method for aggregate control on an electronic network
US6385646B1 (en) 1996-08-23 2002-05-07 At&T Corp. Method and system for establishing voice communications in an internet environment
US5903877A (en) 1996-09-30 1999-05-11 Lucent Technologies Inc. Transaction center for processing customer transaction requests from alternative media sources
US5897622A (en) 1996-10-16 1999-04-27 Microsoft Corporation Electronic shopping and merchandising system
US6446092B1 (en) 1996-11-01 2002-09-03 Peerdirect Company Independent distributed database system
US5796393A (en) 1996-11-08 1998-08-18 Compuserve Incorporated System for intergrating an on-line service community with a foreign service
US6055308A (en) 1997-01-21 2000-04-25 Genesys Telecommunications Laboratories, Inc. Method and system for determining and using multiple object states in a computer telephony integration system
US5903641A (en) 1997-01-28 1999-05-11 Lucent Technologies Inc. Automatic dynamic changing of agents' call-handling assignments
US5828747A (en) 1997-01-28 1998-10-27 Lucent Technologies Inc. Call distribution based on agent occupancy
US6014437A (en) * 1997-02-03 2000-01-11 International Business Machines Corporation Multi service platform architecture for telephone networks
US6044144A (en) * 1997-02-07 2000-03-28 Mci Communications Corp. Network call parking manager
US5940496A (en) 1997-02-10 1999-08-17 Gewesys Telecommunications Laboratories, Inc. Apparatus and methods enhancing call routing within and between call-centers
US5946387A (en) 1997-02-10 1999-08-31 Genesys Telecommunications Laboratories, Inc, Agent-level network call routing
US6185292B1 (en) * 1997-02-10 2001-02-06 Genesys Telecommunications Laboratories, Inc. Skill-based real-time call routing in telephony systems
US5923745A (en) 1997-02-28 1999-07-13 Teknekron Infoswitch Corporation Routing calls to call centers
US5982873A (en) 1997-03-07 1999-11-09 Lucent Technologies Inc. Waiting-call selection based on objectives
US5905793A (en) 1997-03-07 1999-05-18 Lucent Technologies Inc. Waiting-call selection based on anticipated wait times
US6185603B1 (en) * 1997-03-13 2001-02-06 At&T Corp. Method and system for delivery of e-mail and alerting messages
US6134318A (en) 1997-03-19 2000-10-17 At&T Corp System and method for telemarketing through a hypertext network
US5948065A (en) 1997-03-28 1999-09-07 International Business Machines Corporation System for managing processor resources in a multisystem environment in order to provide smooth real-time data streams while enabling other types of applications to be processed concurrently
US5974462A (en) 1997-03-28 1999-10-26 International Business Machines Corporation Method and apparatus for controlling the number of servers in a client/server system
US5960073A (en) 1997-04-03 1999-09-28 Genesys Telecommunications Laboratories , Inc. Method and apparatus for providing an interactive home agent with access to call center functionality and resources
NO971605L (no) 1997-04-08 1998-10-09 Ericsson Telefon Ab L M Anordning for forbedring av tilgjengelighet av tjenester i et kommunikasjonssystem
US5996013A (en) 1997-04-30 1999-11-30 International Business Machines Corporation Method and apparatus for resource allocation with guarantees
US6049547A (en) 1997-05-15 2000-04-11 Lucent Technologies Inc. Lookahead interflow of traffic among a plurality of serving sites of one customer
US5901215A (en) 1997-05-20 1999-05-04 Rockwell Semiconductor Systems, Inc. Apparatus and method for identifying records of overflowed ACD calls
US6263359B1 (en) 1997-05-22 2001-07-17 International Business Machines Corporation Computer resource proportional utilization and response time scheduling
US6259969B1 (en) 1997-06-04 2001-07-10 Nativeminds, Inc. System and method for automatically verifying the performance of a virtual robot
US5974135A (en) 1997-06-11 1999-10-26 Harrah's Operating Company, Inc. Teleservices computer system, method, and manager application for integrated presentation of concurrent interactions with multiple terminal emulation sessions
US5937402A (en) 1997-06-19 1999-08-10 Ontos, Inc. System for enabling access to a relational database from an object oriented program
US5987117A (en) 1997-07-07 1999-11-16 Mitel Corporation Method of dynamic load sharing between systems with automatic telephone call distributors
US6044355A (en) * 1997-07-09 2000-03-28 Iex Corporation Skills-based scheduling for telephone call centers
US6023681A (en) 1997-08-11 2000-02-08 At&T Corp. Method and apparatus for predicting queuing delays
US6052685A (en) 1997-08-13 2000-04-18 Mosaix, Inc. Integration of legacy database management systems with ODBC-compliant application programs
US6038293A (en) * 1997-09-03 2000-03-14 Mci Communications Corporation Method and system for efficiently transferring telephone calls
US6000832A (en) 1997-09-24 1999-12-14 Microsoft Corporation Electronic online commerce card with customer generated transaction proxy number for online transactions
US6490350B2 (en) 1997-09-30 2002-12-03 Mci Communications Corporation Monitoring system for telephony resources in a call center
US6084954A (en) 1997-09-30 2000-07-04 Lucent Technologies Inc. System and method for correlating incoming and outgoing telephone calls using predictive logic
US6038296A (en) * 1997-10-07 2000-03-14 Lucent Technologies Inc. Internet/intranet user interface to a multimedia messaging system
US6229819B1 (en) 1997-10-21 2001-05-08 Mci Communications Corporation Advanced intelligent network gateway
US5999963A (en) 1997-11-07 1999-12-07 Lucent Technologies, Inc. Move-to-rear list scheduling
JP3617997B2 (ja) * 1997-11-14 2005-02-09 三菱電機株式会社 データ更新方式
US6108670A (en) 1997-11-24 2000-08-22 International Business Machines Corporation Checking and enabling database updates with a dynamic, multi-modal, rule based system
US6088441A (en) 1997-12-17 2000-07-11 Lucent Technologies Inc. Arrangement for equalizing levels of service among skills
US6704409B1 (en) * 1997-12-31 2004-03-09 Aspect Communications Corporation Method and apparatus for processing real-time transactions and non-real-time transactions
US6115462A (en) 1998-01-09 2000-09-05 Gte Laboratories Incorporated Method and apparatus for efficient call routing
US6192122B1 (en) * 1998-02-12 2001-02-20 Avaya Technology Corp. Call center agent selection that optimizes call wait times
US6426950B1 (en) 1998-02-13 2002-07-30 Nortel Networks Limited Method of resource management at computer controlled telephony hardware
US6449358B1 (en) 1998-02-17 2002-09-10 Genesys Telecommunications Laboratories, Inc. Method for predicting and managing call load by determining the optimum frequency of outbound call generation during an out-bound calling campaign from a call center
US6157655A (en) 1998-02-17 2000-12-05 Genesys Telecommunications Laboratories, Inc. Method for estimating telephony system-queue waiting time in an agent level routing environment
US5943416A (en) 1998-02-17 1999-08-24 Genesys Telecommunications Laboratories, Inc. Automated survey control routine in a call center environment
US6226377B1 (en) 1998-03-06 2001-05-01 Avaya Technology Corp. Prioritized transaction server allocation
US6230183B1 (en) 1998-03-11 2001-05-08 International Business Machines Corporation Method and apparatus for controlling the number of servers in a multisystem cluster
US6278777B1 (en) 1998-03-12 2001-08-21 Ser Solutions, Inc. System for managing agent assignments background of the invention
US6154769A (en) 1998-03-27 2000-11-28 Hewlett-Packard Company Scheduling server requests to decrease response time and increase server throughput
US6049779A (en) 1998-04-06 2000-04-11 Berkson; Stephen P. Call center incentive system and method
US6173053B1 (en) 1998-04-09 2001-01-09 Avaya Technology Corp. Optimizing call-center performance by using predictive data to distribute calls among agents
US6650748B1 (en) 1998-04-13 2003-11-18 Avaya Technology Corp. Multiple call handling in a call center
US6360222B1 (en) * 1998-05-06 2002-03-19 Oracle Corporation Method and system thereof for organizing and updating an information directory based on relationships between users
US6604084B1 (en) 1998-05-08 2003-08-05 E-Talk Corporation System and method for generating an evaluation in a performance evaluation system
US6449356B1 (en) 1998-05-26 2002-09-10 Rockwell Semiconductor Systems, Inc. Method of multi-media transaction processing
US6292550B1 (en) 1998-06-01 2001-09-18 Avaya Technology Corp. Dynamic call vectoring
US6233332B1 (en) 1998-06-03 2001-05-15 Avaya Technology Corp. System for context based media independent communications processing
US6011844A (en) * 1998-06-19 2000-01-04 Callnet Communications Point-of-presence call center management system
US6307931B1 (en) 1998-06-19 2001-10-23 Avaya Technology Corp. System and method for allowing communication between networks having incompatible addressing formats
US20010011228A1 (en) 1998-07-31 2001-08-02 Grigory Shenkman Method for predictive routing of incoming calls within a communication center according to history and maximum profit/contribution analysis
US6389400B1 (en) 1998-08-20 2002-05-14 Sbc Technology Resources, Inc. System and methods for intelligent routing of customer requests using customer and agent models
US6535601B1 (en) * 1998-08-27 2003-03-18 Avaya Technology Corp. Skill-value queuing in a call center
US6272544B1 (en) 1998-09-08 2001-08-07 Avaya Technology Corp Dynamically assigning priorities for the allocation of server resources to completing classes of work based upon achievement of server level goals
US6178441B1 (en) * 1998-09-21 2001-01-23 International Business Machines Corporation Method and system in a computer network for the reliable and consistent ordering of client requests
US6295353B1 (en) 1998-10-07 2001-09-25 Avaya Technology Corp. Arrangement for efficiently updating status information of a network call-routing system
US6449646B1 (en) 1998-10-13 2002-09-10 Aspect Communications Corporation Method and apparatus for allocating mixed transaction type messages to resources via an integrated queuing mechanism
US6128304A (en) 1998-10-23 2000-10-03 Gte Laboratories Incorporated Network presence for a communications system operating over a computer network
US6298062B1 (en) 1998-10-23 2001-10-02 Verizon Laboratories Inc. System providing integrated services over a computer network
US6031896A (en) * 1998-10-23 2000-02-29 Gte Laboratories Incorporated Real-time voicemail monitoring and call control over the internet
US6064731A (en) 1998-10-29 2000-05-16 Lucent Technologies Inc. Arrangement for improving retention of call center's customers
US6735593B1 (en) 1998-11-12 2004-05-11 Simon Guy Williams Systems and methods for storing data
EP1003117A3 (de) 1998-11-17 2003-07-23 Citibank, N.A. Verfahren und System für eine strategische Verwaltung der anfallenden Arbeiten in Dienstleistungsunternehmen
US6275812B1 (en) 1998-12-08 2001-08-14 Lucent Technologies, Inc. Intelligent system for dynamic resource management
US6665395B1 (en) * 1998-12-11 2003-12-16 Avaya Technology Corp. Automatic call distribution system using computer network-based communication
US6366666B2 (en) 1998-12-16 2002-04-02 Avaya Technology Corp. Adjustment of call selection to achieve target values for interval-based performance metrics in a call center
US6463471B1 (en) 1998-12-28 2002-10-08 Intel Corporation Method and system for validating and distributing network presence information for peers of interest
US6556974B1 (en) 1998-12-30 2003-04-29 D'alessandro Alex F. Method for evaluating current business performance
US6356632B1 (en) * 1998-12-31 2002-03-12 Avaya Technology Corp. Call selection and agent selection in a call center based on agent staffing schedule
US7295669B1 (en) 1999-01-21 2007-11-13 Avaya Technology Corp. Call center telephone and data flow connection system
US6434230B1 (en) 1999-02-02 2002-08-13 Avaya Technology Corp. Rules-based queuing of calls to call-handling resources
US7200219B1 (en) 1999-02-10 2007-04-03 Avaya Technology Corp. Dynamically allocating server resources to competing classes of work based upon achievement of service goals
US6560649B1 (en) 1999-02-10 2003-05-06 Avaya Technology Corp. Hierarchical service level remediation for competing classes based upon achievement of service level goals
US6744877B1 (en) 1999-03-08 2004-06-01 Avaya Technology Corp. Method and system for enterprise service balancing
US6366668B1 (en) 1999-03-11 2002-04-02 Avaya Technology Corp. Method of routing calls in an automatic call distribution network
US6424709B1 (en) 1999-03-22 2002-07-23 Rockwell Electronic Commerce Corp. Skill-based call routing
US6574599B1 (en) 1999-03-31 2003-06-03 Microsoft Corporation Voice-recognition-based methods for establishing outbound communication through a unified messaging system including intelligent calendar interface
US20060178994A1 (en) * 1999-07-26 2006-08-10 Stolfo Salvatore J Method and system for private shipping to anonymous users of a computer network
US6829348B1 (en) 1999-07-30 2004-12-07 Convergys Cmg Utah, Inc. System for customer contact information management and methods for using same
JP3614044B2 (ja) 1999-08-12 2005-01-26 サクサ株式会社 電話装置
US6463415B2 (en) 1999-08-31 2002-10-08 Accenture Llp 69voice authentication system and method for regulating border crossing
US6427137B2 (en) * 1999-08-31 2002-07-30 Accenture Llp System, method and article of manufacture for a voice analysis system that detects nervousness for preventing fraud
US6697457B2 (en) * 1999-08-31 2004-02-24 Accenture Llp Voice messaging system that organizes voice messages based on detected emotion
US6480826B2 (en) * 1999-08-31 2002-11-12 Accenture Llp System and method for a telephonic emotion detection that provides operator feedback
US6275806B1 (en) 1999-08-31 2001-08-14 Andersen Consulting, Llp System method and article of manufacture for detecting emotion in voice signals by utilizing statistics for voice signal parameters
US6151571A (en) 1999-08-31 2000-11-21 Andersen Consulting System, method and article of manufacture for detecting emotion in voice signals through analysis of a plurality of voice signal parameters
US6353810B1 (en) * 1999-08-31 2002-03-05 Accenture Llp System, method and article of manufacture for an emotion detection system improving emotion recognition
US7222075B2 (en) 1999-08-31 2007-05-22 Accenture Llp Detecting emotions using voice signal analysis
US6389028B1 (en) 1999-09-24 2002-05-14 Genesys Telecommunications Laboratories, Inc. Method and apparatus for providing estimated response-wait-time displays for data network-based inquiries to a communication center
US6463346B1 (en) 1999-10-08 2002-10-08 Avaya Technology Corp. Workflow-scheduling optimization driven by target completion time
US6389132B1 (en) 1999-10-13 2002-05-14 Avaya Technology Corp. Multi-tasking, web-based call center
US7035808B1 (en) 1999-10-20 2006-04-25 Avaya Technology Corp. Arrangement for resource and work-item selection
US20040202309A1 (en) 1999-11-16 2004-10-14 Knowlagent, Inc. Managing the rate of delivering performance interventions in a contact center
US20020065894A1 (en) 1999-12-03 2002-05-30 Dalal Siddhartha R. Local presence state and user-controlled presence and message forwarding in unified instant messaging
US6535600B1 (en) * 1999-12-06 2003-03-18 Avaya Technology Corp. System for automatically routing calls to call center agents in an agent surplus condition based on service levels
US6553114B1 (en) 1999-12-06 2003-04-22 Avaya Technology Corp. System for automatically predicting call center agent work time in a multi-skilled agent environment
US6563920B1 (en) 1999-12-15 2003-05-13 Avaya Technology Corp. Methods and apparatus for processing of communications in a call center based on variable rest period determinations
US6614903B1 (en) 1999-12-15 2003-09-02 Avaya Technology Corp. Methods and apparatus for service state-based processing of communications in a call center
US6571285B1 (en) 1999-12-23 2003-05-27 Accenture Llp Providing an integrated service assurance environment for a network
US6985901B1 (en) * 1999-12-23 2006-01-10 Accenture Llp Controlling data collection, manipulation and storage on a network with service assurance capabilities
US20020035605A1 (en) * 2000-01-26 2002-03-21 Mcdowell Mark Use of presence and location information concerning wireless subscribers for instant messaging and mobile commerce
US6668167B2 (en) 2000-01-26 2003-12-23 Mcdowell Mark Method and apparatus for sharing mobile user event information between wireless networks and fixed IP networks
US6711253B1 (en) * 2000-02-04 2004-03-23 Avaya Technology Corp. Method and apparatus for analyzing performance data in a call center
US7203655B2 (en) 2000-02-16 2007-04-10 Iex Corporation Method and system for providing performance statistics to agents
US6603854B1 (en) 2000-02-25 2003-08-05 Teltronics, Inc. System and method for evaluating agents in call center
US6839735B2 (en) * 2000-02-29 2005-01-04 Microsoft Corporation Methods and systems for controlling access to presence information according to a variety of different access permission types
US6775377B2 (en) 2001-09-10 2004-08-10 Knowlagent, Inc. Method and system for delivery of individualized training to call center agents
US6324282B1 (en) 2000-03-02 2001-11-27 Knowlagent, Inc. Method and system for delivery of individualized training to call center agents
US6757362B1 (en) 2000-03-06 2004-06-29 Avaya Technology Corp. Personal virtual assistant
WO2001071939A1 (en) * 2000-03-21 2001-09-27 Ehud Shapiro Community co-presence system and method having virtual groups
CA2398426A1 (en) * 2000-04-17 2001-10-25 Avaya Technology Corp. A system for integrating diverse databases and maintaining their consistency
US20020021307A1 (en) * 2000-04-24 2002-02-21 Steve Glenn Method and apparatus for utilizing online presence information
US6754333B1 (en) 2000-04-27 2004-06-22 Avaya Technology Corp. Wait time prediction arrangement for non-real-time customer contacts
ATE350857T1 (de) * 2000-05-17 2007-01-15 Ibm System und methode um den aufenthalt oder die verfügbarkeit eines telefonnutzers zu erkennen und die rufnummer im internet zu veröffentlichen
US7266508B1 (en) 2000-05-25 2007-09-04 At&T Intellectual Property, Inc. System and method for managing customer contacts and related information
US7526440B2 (en) * 2000-06-12 2009-04-28 Walker Digital, Llc Method, computer product, and apparatus for facilitating the provision of opinions to a shopper from a panel of peers
US7340408B1 (en) 2000-06-13 2008-03-04 Verizon Laboratories Inc. Method for evaluating customer valve to guide loyalty and retention programs
CA2311884A1 (en) * 2000-06-16 2001-12-16 Cognos Incorporated Method of managing slowly changing dimensions
US7117215B1 (en) * 2001-06-07 2006-10-03 Informatica Corporation Method and apparatus for transporting data for data warehousing applications that incorporates analytic data interface
US6785666B1 (en) * 2000-07-11 2004-08-31 Revenue Science, Inc. Method and system for parsing navigation information
US6738462B1 (en) 2000-07-19 2004-05-18 Avaya Technology Corp. Unified communications automated personal name addressing
US6766326B1 (en) 2000-07-24 2004-07-20 Resty M Cena Universal storage for dynamic databases
US20020012186A1 (en) * 2000-07-24 2002-01-31 Tohoku Techno Arch Co., Ltd. Magnetic record/reproduce apparatus for recording/reproducing large amounts of data at ultra-high-speed using a perpendicular magnetic recording mode
US6947988B1 (en) 2000-08-11 2005-09-20 Rockwell Electronic Commerce Technologies, Llc Method and apparatus for allocating resources of a contact center
US7039176B2 (en) 2000-08-14 2006-05-02 Telephony@Work Call center administration manager with rules-based routing prioritization
JP2002082911A (ja) * 2000-09-11 2002-03-22 Nec Corp 認証システム
GB2368227B (en) * 2000-10-17 2003-12-10 Hewlett Packard Co Contact center
US20020087630A1 (en) 2000-10-20 2002-07-04 Jonathan Wu Enhanced information and presence service
US20020085701A1 (en) 2000-10-30 2002-07-04 Parsons Eric W. Method and system for providing unified communication management based on presence information
US6822945B2 (en) 2000-11-08 2004-11-23 Genesys Telecommunications Laboratories, Inc. Method and apparatus for anticipating and planning communication-center resources based on evaluation of events waiting in a communication center master queue
US7299259B2 (en) 2000-11-08 2007-11-20 Genesys Telecommunications Laboratories, Inc. Method and apparatus for intelligent routing of instant messaging presence protocol (IMPP) events among a group of customer service representatives
AU2002219796A1 (en) 2000-11-20 2002-06-03 At And T Wireless Services, Inc. Systems for providing wireless communication presence information
US7957514B2 (en) 2000-12-18 2011-06-07 Paltalk Holdings, Inc. System, method and computer program product for conveying presence information via voice mail
US6766014B2 (en) 2001-01-09 2004-07-20 Avaya Technology Corp. Customer service by batch
US6968052B2 (en) 2001-01-24 2005-11-22 Telecordia Technologies, Inc. Method and apparatus for creating a presence monitoring contact list with dynamic membership
US7568001B2 (en) * 2001-01-30 2009-07-28 Intervoice, Inc. Escalated handling of non-realtime communications
US7246371B2 (en) 2001-02-05 2007-07-17 Openwave Systems Inc. System and method for filtering unavailable devices in a presence and availability management system
US20020112186A1 (en) 2001-02-15 2002-08-15 Tobias Ford Authentication and authorization for access to remote production devices
US20020123923A1 (en) 2001-03-01 2002-09-05 Stefanos Manganaris Method and system for assessing intrinsic customer value
US8601492B2 (en) 2001-03-31 2013-12-03 Siebel Systems, Inc. User interface for multi-channel communication
US7315616B2 (en) 2001-03-31 2008-01-01 Siebel Systems, Inc. System and method for maintaining real-time agent information for multi-channel communication queuing
US20030028621A1 (en) * 2001-05-23 2003-02-06 Evolving Systems, Incorporated Presence, location and availability communication system and method
US20070038632A1 (en) * 2001-05-31 2007-02-15 Engstrom G E Time slot based calendar access control
US6766013B2 (en) 2001-06-05 2004-07-20 Avaya Technology Corp. Timely shut-down of a real-time work center
US7100200B2 (en) 2001-06-13 2006-08-29 Citrix Systems, Inc. Method and apparatus for transmitting authentication credentials of a user across communication sessions
US7110525B1 (en) 2001-06-25 2006-09-19 Toby Heller Agent training sensitive call routing system
US7844055B2 (en) 2001-06-26 2010-11-30 Link Us All, Llc Detecting and transporting dynamic presence information over a wireless and wireline communications network
US7409423B2 (en) 2001-06-28 2008-08-05 Horvitz Eric J Methods for and applications of learning and inferring the periods of time until people are available or unavailable for different forms of communication, collaboration, and information access
US6879683B1 (en) 2001-06-28 2005-04-12 Bellsouth Intellectual Property Corp. System and method for providing a call back option for callers to a call center
US7324954B2 (en) 2001-06-29 2008-01-29 International Business Machines Corporation System and method for organizational risk based on personnel planning factors
US7953219B2 (en) 2001-07-19 2011-05-31 Nice Systems, Ltd. Method apparatus and system for capturing and analyzing interaction based content
US6915305B2 (en) 2001-08-15 2005-07-05 International Business Machines Corporation Restructuring view maintenance system and method
US20030093465A1 (en) 2001-10-31 2003-05-15 International Business Machines Corporation Management strategies for internationalization in a distributed computer environment
US6735299B2 (en) 2001-11-08 2004-05-11 Avaya Technology Corp. Automatic call distribution groups in call center management systems
US7139390B2 (en) 2001-12-12 2006-11-21 International Business Machines Corporation Promoting use of experts to callers waiting in a hold queue
US7076051B2 (en) 2001-12-12 2006-07-11 International Business Machines Corporation Promoting caller voice browsing in a hold queue
US7257597B1 (en) 2001-12-18 2007-08-14 Siebel Systems, Inc. Table substitution
US7212625B1 (en) 2001-12-20 2007-05-01 Nortel Networks Limited System and method for presenting queue lengths of various media used by service centers
US6947543B2 (en) 2002-01-03 2005-09-20 Avaya Technology Corp. Computer-telephony integration that uses features of an automatic call distribution system
WO2003065251A1 (en) 2002-01-29 2003-08-07 Children's Hospital Boston Information exchange between heterogeneous databases through automated identification of concept equivalence
JP2003223420A (ja) 2002-01-31 2003-08-08 Fujitsu Ltd アクセス制御方法、記憶装置及び情報処理装置
US7035927B2 (en) 2002-03-12 2006-04-25 Avaya Technology Corp. Intelligent inbound/outbound communications blending
US7336779B2 (en) 2002-03-15 2008-02-26 Avaya Technology Corp. Topical dynamic chat
US7415417B2 (en) 2002-03-15 2008-08-19 Avaya Technology Corp. Presence awareness agent
US7620169B2 (en) 2002-06-17 2009-11-17 Avaya Inc. Waiting but not ready
US20040008828A1 (en) * 2002-07-09 2004-01-15 Scott Coles Dynamic information retrieval system utilizing voice recognition
US7010542B2 (en) * 2002-07-20 2006-03-07 Microsoft Corporation Result set formatting and processing
US7136873B2 (en) 2002-07-20 2006-11-14 Microsoft Corporation Dynamic filtering in a database system
US7165075B2 (en) * 2002-07-20 2007-01-16 Microsoft Corporation Object graph faulting and trimming in an object-relational database system
US7412436B2 (en) 2002-07-20 2008-08-12 Microsoft Corporation System and interface for manipulating a database
US7162469B2 (en) 2002-07-20 2007-01-09 Microsoft Corporation Querying an object for properties
US7096216B2 (en) * 2002-07-20 2006-08-22 Microsoft Corporation Performing operations on a set of objects in a database system
US7149733B2 (en) 2002-07-20 2006-12-12 Microsoft Corporation Translation of object queries involving inheritence
US7082433B2 (en) * 2002-07-20 2006-07-25 Microsoft Corporation Translation of object queries involving inheritence
US20040138944A1 (en) 2002-07-22 2004-07-15 Cindy Whitacre Program performance management system
US7558739B2 (en) 2002-10-22 2009-07-07 Avaya Inc. Method and apparatus for meeting an on-site enterprise service level objective
US7020254B2 (en) * 2002-10-28 2006-03-28 Bellsouth Intellectual Property Corporation Escalation tracking system
US20040210475A1 (en) 2002-11-25 2004-10-21 Starnes S. Renee Variable compensation tool and system for customer service agents
US8065717B2 (en) 2002-11-27 2011-11-22 Activcard Automated security token administrative services
US7545925B2 (en) 2002-12-06 2009-06-09 At&T Intellectual Property I, L.P. Method and system for improved routing of repair calls to a call center
US7170976B1 (en) 2002-12-17 2007-01-30 Cisco Technology, Inc. System and method for communicating text teletype (TTY) information in a communication network
US6847711B2 (en) 2003-02-13 2005-01-25 Sbc Properties, L.P. Method for evaluating customer call center system designs
US20040162998A1 (en) 2003-02-14 2004-08-19 Jukka Tuomi Service authentication in a communication system
US7155612B2 (en) * 2003-04-30 2006-12-26 International Business Machines Corporation Desktop database data administration tool with row level security
US7376127B2 (en) 2003-05-12 2008-05-20 Avaya Technology Corp. Methods for reconstructing missing packets in TTY over voice over IP transmission
US7110523B2 (en) 2003-05-30 2006-09-19 Interactive Intelligence, Inc. System and method for distributing and routing calls in a call center
US7050566B2 (en) 2003-06-13 2006-05-23 Assurant, Inc. Call processing system
US7392402B2 (en) * 2003-07-02 2008-06-24 Hitachi, Ltd. Method and apparatus for data integration security
CN100363855C (zh) * 2003-07-04 2008-01-23 诺基亚有限公司 密钥存储管理方法、装置及其系统
US20050021529A1 (en) * 2003-07-22 2005-01-27 Jeff Hodson Transaction time tracking and reporting system
US7158628B2 (en) * 2003-08-20 2007-01-02 Knowlagent, Inc. Method and system for selecting a preferred contact center agent based on agent proficiency and performance and contact center state
US6842503B1 (en) * 2003-09-02 2005-01-11 Cisco Technology, Inc. Support of TTY systems in voice over data networks
US20050071212A1 (en) * 2003-09-26 2005-03-31 Flockhart Andrew D. Method and apparatus for business time computation in a resource allocation system
US7770175B2 (en) * 2003-09-26 2010-08-03 Avaya Inc. Method and apparatus for load balancing work on a network of servers based on the probability of being serviced within a service time goal
US8094804B2 (en) * 2003-09-26 2012-01-10 Avaya Inc. Method and apparatus for assessing the status of work waiting for service
US20050071241A1 (en) * 2003-09-26 2005-03-31 Flockhart Andrew D. Contact center resource allocation based on work bidding/auction
US7783513B2 (en) 2003-10-22 2010-08-24 Intellisist, Inc. Business performance and customer care quality measurement
US20050125458A1 (en) * 2003-12-09 2005-06-09 Sutherland James E. Chronological data record access
US7290205B2 (en) 2004-06-23 2007-10-30 Sas Institute Inc. System and method for management of document cross-reference links
US7672966B2 (en) * 2004-06-30 2010-03-02 Microsoft Corporation Adding extrinsic data columns to an existing database schema using a temporary column pool
US7656861B2 (en) * 2004-07-09 2010-02-02 Cisco Technology, Inc. Method and apparatus for interleaving text and media in a real-time transport session
US8738412B2 (en) * 2004-07-13 2014-05-27 Avaya Inc. Method and apparatus for supporting individualized selection rules for resource allocation
US20060026049A1 (en) 2004-07-28 2006-02-02 Sbc Knowledge Ventures, L.P. Method for identifying and prioritizing customer care automation
US20060056598A1 (en) * 2004-09-14 2006-03-16 Sbc Knowledge Ventures, L.P. Detection of TTY's using programmable filters
US8594704B2 (en) 2004-12-16 2013-11-26 Atc Technologies, Llc Location-based broadcast messaging for radioterminal users
US7177401B2 (en) * 2005-02-03 2007-02-13 Texas Instruments Incorporated TTY communication over packet networks
US7567653B1 (en) 2005-03-22 2009-07-28 Avaya Inc. Method by which call centers can vector inbound TTY calls automatically to TTY-enabled resources
US7809127B2 (en) 2005-05-26 2010-10-05 Avaya Inc. Method for discovering problem agent behaviors
JP4125309B2 (ja) 2005-07-25 2008-07-30 キヤノン株式会社 撮像装置
US8774389B2 (en) * 2005-09-13 2014-07-08 International Business Machines Corporation Call routing between shared service centers
US8199900B2 (en) 2005-11-14 2012-06-12 Aspect Software, Inc. Automated performance monitoring for contact management system
US8737173B2 (en) 2006-02-24 2014-05-27 Avaya Inc. Date and time dimensions for contact center reporting in arbitrary international time zones
US8856182B2 (en) 2008-01-25 2014-10-07 Avaya Inc. Report database dependency tracing through business intelligence metadata

Also Published As

Publication number Publication date
GB0619051D0 (en) 2006-11-08
GB2431022A (en) 2007-04-11
CN100541492C (zh) 2009-09-16
US20070083572A1 (en) 2007-04-12
JP4499699B2 (ja) 2010-07-07
CN101000612A (zh) 2007-07-18
US7752230B2 (en) 2010-07-06
JP2007102797A (ja) 2007-04-19

Similar Documents

Publication Publication Date Title
DE102006047499A1 (de) Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen
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
DE60003395T2 (de) Multimedia Kundenanrufzentrale mit schichtformigen Steuerarchitektur
DE112016002395T5 (de) Zugriffskontrolle für Datenressourcen
DE102007007669A1 (de) Datums- und Zeitdimensionen für Kontaktzentralen-Auswertung in beliebigen internationalen Zeitzonen
DE102009043274A1 (de) Zwischenbetriebliche Zusammenarbeitsüberlagerungslösung für berufliche Sozialnetze
DE19955718A1 (de) Paralleler Datenbank-Support für Workflow-Management-Systeme
DE102011016865A1 (de) View and metrics for a queueless contact center
DE102011121803A1 (de) System und verfahren für suchbasierte arbeitszuweisungen in einem kontakt-center
DE202016008918U1 (de) Ein Dokumentenverifizierungssystem
DE112018005452T5 (de) Schlüsselbasiertes loggen für die verarbeitung strukturierter datenelemente mit ausführbarer logik
DE112013001175T5 (de) Erzeugen von elektronischen Stammbäumen
DE102011016859A1 (de) Bitmaps für Kontaktzentrale der nächsten Generation
DE10320419A9 (de) Datenbank-Abfragesystem und Verfahren zum rechnergestützten Abfragen einer Datenbank
DE10252445A1 (de) Verfahren und Computer-Anordnung zum Bereitstellen von Datenbankinformation einer ersten Datenbank und Verfahren zum rechnergestützten Bilden eines statistischen Abbildes einer Datenbank
EP2601594A1 (de) Verfahren und vorrichtung zur automatischen verarbeitung von daten in einem zellen-format
DE102008045853B4 (de) Vereinigte Leitung und Steuerung einer Vielzahl von Heterogenen Systemen, welche die Funktionsfähigkeit von Callcentern unterstützen
EP3776257B1 (de) Objektdatenbank zur geschäftsmodellierung mit verbesserter datensicherheit
EP1285315B1 (de) Informationsverarbeitungssystem und verfahren zu dessen betrieb
EP1139243A1 (de) Abrechnungs- und Kundenverwaltungssystem
EP1051016B1 (de) Verfahren zum Auffinden einer Kontaktperson oder zum Verbindungsaufbau zu dieser Kontaktperson
DE202021105248U1 (de) Ein Studenten-Service-Management-System
WO2002015061A2 (de) Verfahren zur bearbeitung von anfragen und anfragebearbeitungssystem
DE102007054674A1 (de) Arbeitserkenntnis-Algorithmus für Kontaktzentralenagenten

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection