-
HINTERGRUND
DER ERFINDUNG
-
Die vorliegende Erfindung betrifft
Fernmeldeanlagen und insbesondere eine verbesserte IP-Telefonanlage.
-
In Fernmeldesystemen ist es möglich, dass mehr
Telefongespräche
für ein
Ziel ankommen, als vom gerufenen Teilnehmer verarbeitet werden können. Um
zu verhindern, dass solche Anrufe verloren gehen, implementieren
zentrale Vermittlungsanlagen wie etwa Nebenstellenanlagen (PBX)
Warteschlangen, welche die Anrufe parken, bis sie vom gerufenen
Teilnehmer verarbeitet werden können.
-
In einer Internetprotokoll-(IP-)Telefonie-Umgebung,
die auf Protokollen wie etwa ITU-T H.323 basiert, existieren keine
solchen zentralen Vermittlungsstellen. Um in einer solchen Anlage
eine Warteschlange zu erzeugen, ist es daher erforderlich, dass die
Ziel-Workstation
sämtliche
in die Warteschlange eingereihten Anrufe annimmt und steuert. Solche Workstations
erfordern jedoch beträchtliche
Speicher-, Prozessor- und Netz-Ressourcen. In vielen Fällen stehen
in gewöhnlichen
Workstations, welche die in die Warteschlange befindlichen Anrufe
empfangen müssen,
derartige Ressourcen nicht zur Verfügung.
-
Außerdem wurden IP-basierende
Callcenter-Anwendungen entwickelt, bei denen zentrale Server für das Annehmen
der Anrufe verantwortlich sind. In solchen Fällen verwendet der Server dann Third-Party
Call Control (Fremd-Verbindungssteuerung), um den Anruf zu einer
speziell ausgerüsteten H.323-Workstation
weiterzuleiten. Normalerweise sind solche Callcenter-Anwendungen
sehr teuer und erfordern in den meisten Fällen spezielle Software für die Third-Party Call Control
in der H.323-Ziel-Workstation.
-
Dementsprechend besteht Bedarf an
einem verbesserten Verfahren zum Einreihen von Anrufen in Warteschlangen
in einer IP- oder paketbasierten Telefonie-Umgebung.
-
Im Patent
EP 0.866.407 wird ein Telemarketing-System
beschrieben, das ein Hyperterm-Netz und Warteschlangen von Benutzungen
verwendet.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Diese und andere Nachteile von Ausführungen
nach dem bisherigen Stand der Technik werden durch ein Wartesystem
gemäß der vorliegenden
Erfindung zum großen
Teil überwunden.
-
Daher besteht eine Aufgabe der vorliegenden
Erfindung darin, ein Verfahren zur Verarbeitung von Anrufen in einer
Fernmeldeanlage bereitzustellen, wobei das besagte Verfahren die
folgenden Schritte umfasst: Empfangen eines ersten Anrufs an einer
Fernsprecheinrichtung an einem Netz; Empfangen eines zweiten Anrufs
an der besagten Fernsprecheinrichtung, während der besagte erste Anruf von
der besagten Fernsprecheinrichtung verarbeitet wird; Umlegen des
besagten zweiten Anrufs zu einer Warteschlange, wobei die besagte
Warteschlange als rufbare Einrichtung an dem besagten Netz definiert
ist; und Umlegen des besagten zweiten Anrufs zurück zu der besagten Fernsprecheinrichtung, nachdem
eine vorgegebene Bedingung erfüllt
ist.
-
Eine weitere Aufgabe der vorliegenden
Erfindung ist es, ein System zum Verarbeiten von Anrufen in einem
Fernmeldenetz bereitzustellen, wobei das besagte System eine oder
mehrere erste rufbare Instanzen, die mit dem besagten Fernmeldenetz
gekoppelt sind, und eine oder mehrere zweite rufbare Instanzen,
die mit dem besagten Fernmeldenetz gekoppelt sind, umfasst, wobei
die besagte eine oder die besagten mehreren zweiten rufbaren Instanzen als
Warteschlangen zum zeitweiligen Parken von Anrufen für die besagte
eine oder die besagten mehreren ersten rufbaren Instanzen, während die
besagte eine oder die besagten mehreren ersten rufbaren Instanzen
andere Anrufe verarbeiten, definiert sind.
-
Die Erfindung wird beim Studium der
nachfolgenden ausführlichen
Beschreibung in Verbindung mit den folgenden Zeichnungen besser
verständlich.
-
KURZE BESCHREIBUNG DER
ZEICHNUNGEN
-
1A ist
ein Schema, welches eine Fernmeldeanlage gemäß einer Ausführungsform
der Erfindung zeigt;
-
1B ist
ein Schema einer beispielhaften H.323-Schnittstelle gemäß einer
Ausführungsform der
Erfindung;
-
2 ist
ein Schema eines beispielhaften Warteschlangenservers gemäß einer
Ausführungsform
der Erfindung;
-
3 ist
ein Flussdiagramm einer Systeminitialisierung gemäß einer
Ausführungsform
der Erfindung;
-
4 ist
ein Flussdiagramm eines Verfahrens gemäß einer Ausführungsform
der Erfindung;
-
5 ist
ein Schema, welches den Prozessablauf gemäß einer Ausführungsform
der Erfindung veranschaulicht;
-
6 ist
ein Flussdiagramm eines Verfahrens gemäß einer Ausführungsform
der Erfindung;
-
7 ist
ein Schema, welches den Prozessablauf gemäß einer Ausführungsform
der Erfindung veranschaulicht;
-
8 ist
ein Schema, welches den Prozessablauf gemäß einer Ausführungsform
der Erfindung veranschaulicht;
-
9 ist
ein Flussdiagramm, welches den Prozessablauf gemäß einer Ausführungsform
der Erfindung veranschaulicht;
-
10 ist
ein Schema, welches den Prozessablauf gemäß einer Ausführungsform
der Erfindung veranschaulicht.
-
AUSFÜHRLICHE
BESCHREIBUNG DER ERFINDUNG
-
1A zeigt
ein Schema 100, welches eine Fernmeldeanlage gemäß einer
Ausführungsform
der vorliegenden Erfindung veranschaulicht. Insbesondere umfasst
die Fernmeldeanlage 100 ein lokales Netz (local area network,
LAN) oder Paketnetz 101. Mit dem LAN 101 gekoppelt
sind verschiedene H.323-Terminals 102a, 102b,
eine Multipoint Control Unit (MCU) 104, ein H.323-Gateway 106,
ein H.323-Gatekeeper 108,
ein LAN-Server 112 und ein Warteschlangenserver 110,
welcher eine Vielzahl von Warteschlangen 111a–111c beinhalten
kann. Außerdem
kann eine Vielzahl von weiteren Geräten wie etwa Personalcomputer
(nicht dargestellt) mit dem LAN 101 gekoppelt sein. Da
die H.323-Terminals 102a, 102b dem H.323-Standard
genügen,
unterstützen
sie H.245 für
die Verhandlung der Kanalnutzung, Q.931 für Rufmeldung und Verbindungsaufbau,
Registration, Admission, Status (RAS) und RTP/RTCP für die Sequentialisierung
von Audio- und Videopaketen. Die H.323-Terminals 102a, 102b können ferner Video-Codecs, T.120 Datenkonferenzschaltungs-Protokolle
und MCU-Fähigkeiten
implementieren. Weitere Einzelheiten, welche die H.323- Spezifikation betreffen,
können
von der International Telecommunications Union-Telecommunications
(ITU-T) erhalten werden.
-
Entsprechend einer speziellen Ausführungsform
zeigt 1B ein logisches
Diagramm einer H.323-Schnittstelle zum LAN 101. Die Schnittstelle umfasst
ein bekanntes Netzterminal/Gerät 10,
welche das ITU-T H.323 Standard-Protokoll verwendet, und eine Paketnetz-Schnittstelle 50,
welche mit dem Netzterminal 10 gekoppelt ist. Die Netzschnittstelle 50 koppelt
das H.323-Gerät
mit dem LAN 101. H.323-Terminals/Geräte und Ausrüstung transportieren
in Echtzeit Sprache, Video und/oder Daten. Es ist anzumerken, dass
H.323 eine Rahmenempfehlung ist, welche Standards für Multimedia-Kommunikationen festlegt,
einschließlich
von Telefonie-über-LAN-Kommunikationen.
Das Netz kann paketvermitteltes Transmission Control Protocol/Internet
Protocol (TCP/IP) und Internet Packet Exchange (IPX) über Ethernet-,
Fast-Ethernet- und Token-Ring-Netze beinhalten.
-
Das Netzterminal 10 ist
mit einer Video-Ein-/Ausgabe-(E/A-) Schnittstelle 28, einer
Audio-E/A-Schnittstelle 12, einer Benutzeranwendungs-Schnittstelle 40 und
einer Systemsteuerungs-Benutzerschnittstelle
(SCUI) 20 gekoppelt. Das Netzterminal 10 umfasst
außerdem
eine H.225-Schicht 24, einen Video-Coder/Decoder (Codec) 22,
einen Audio-Codec 14, Receive-Path-Delay-(Empfangszweigverzögerungs-)Logik 30, H.245-Protokoll-Funktionalität 18,
Q.931-Protokoll-Funktionalität 16 und
RAS-Protokoll-Funktionalität 32.
-
Wie aus 1B ersichtlich ist, ist die Video-E/A-Schnittstelle 28,
welche Teil des H.323-Standard-Gerätes sein kann, an den Video-Coder/Decoder
(Codec) 22 wie etwa einen H.261-Codec zum Codieren und
Decodieren von Videosignalen angeschlossen. Gekoppelt zwischen der
Video-E/A-Schnittstelle 28 und der H.225-Schicht 24, übersetzt
der Video-Codec 22 codierte Videosignale in H.225-Protokoll-Signale.
Obwohl der H.261-Codec der Video-Codec sein kann, der für ein H.323-Terminal
verwendet wird, können
auch andere Video-Codecs
wie etwa H.263-Codecs und andere zum Codieren und Decodieren von
Videosignalen verwendet werden.
-
Die Audio-E/A-Schnittstelle 12,
welche Teil eines H.323-Standard-Terminals
sein kann, ist an den Audio-Codec 14 wie etwa einen G.711-Codec zum
Codieren und Decodieren von Audiosignalen angeschlossen. Gekoppelt
mit der Audio-E/A-Schnittstelle 12, ist der Audio-Codec 14 über die
Receive-Path-Delay-Logik 30 mit der H.225-Schicht 24 gekoppelt
und übersetzt
Audiosignale in H.225-Protokoll-Signale.
Obwohl der G.711-Codec der zwingend vorgeschriebene Audio-Codec für ein H.323-Terminal
ist, können
andere Audio-Codecs wie etwa G.728, G.729, G.723.1, G.722 usw. ebenfalls
zum Codieren und Decodieren von Sprache verwendet werden. G.723.1
ist aufgrund seiner ziemlich niedrigen Übertragungsgeschwindigkeit,
welche die Beibehaltung der Übertragungs-Bandbreite
insbesondere bei Netzverbindungen mit geringerer Geschwindigkeit
ermöglicht,
ein bevorzugter Codec.
-
Die SCUI 20 gewährleistet
die Signalisierung und Flusssteuerung für den korrekten Betrieb des H.323-Terminals.
Insbesondere wird die gesamte Nicht-Audio- und Nicht-Video-Steuersignalisierung von
der SCUI 20 abgewickelt. Mit der SCUI 20 gekoppelt
sind die H.245-Schicht 18,
die Q.931-Schicht 16 und die RAS-Schicht 32, welche
jeweils mit der H.225-Schicht 24 gekoppelt sind. Folglich
ist die SCUI 20 mit dem H.245-Standard gekoppelt, welcher das
Media-Control-Protokoll
ist, das Capability Exchange (Wechseln von Fähigkeiten), Kanalverhandlung,
Umschalten von Medien-Betriebsarten und andere diverse Befehle und
Meldungen für
Multimedia-Übertragungen
ermöglicht.
Die SCUI 20 ist außerdem
mit dem Q.931-Protokoll gekoppelt, welches den Aufbau, das Beenden
und die Steuerung von H.323-Übertragungs-Sitzungen
definiert. Die SCUI 20 ist ferner mit dem Registration,
Admission, Status (RAS) Protokoll gekoppelt, welches definiert,
wie H.323-Instanzen auf H.323-Gatekeeper zugreifen können, um
unter anderem eine Adressenübersetzung
durchzuführen,
wodurch sie H.323-Endpunkten ermöglichen,
andere H.323-Endpunkte über
einen H.323-Gatekeeper zu lokalisieren. Die H.225-Standard-Schicht 24,
welche vom Q.931-Standard abgeleitet ist, ist das Protokoll zum
Herstellen einer Verbindung zwischen zwei oder mehr H.323-Terminals und
formatiert außerdem
die übertragenen
Video-, Audio-, Daten- und Steuerströme in Meldungen für die Ausgabe
an die Netzschnittstelle 50 (z. B. für den Transport über das
IP-Netz 101). Die H.225-Schicht 24 dient außerdem zur
Wiedergewinnung der empfangenen Video-, Audio-, Daten- und Steuerströme aus Meldungen, welche
von der Netzschnittstelle 50 eingegeben worden sind. Die
Benutzeranwendungs-Schnittstelle 40, welche eine T.120-Protokoll-Schnittstelle oder
auch eine Schnittstelle eines anderen Protokolltyps sein kann, ist
ebenfalls mit der H.225-Schicht 24 gekoppelt.
-
Folglich kann ein H.323-Netz so konfiguriert sein,
dass es mehrere verschiedene Geräte
enthält. Zum
Beispiel kann das Netz ein Terminal umfassen, das an ein LAN angeschlossenen
Benutzern ermöglicht
zu sprechen, ein Terminal, das einem im LAN residenten Anrufer ermöglicht,
einen zweiten Benutzer über
das öffentliche
Wählnetz
zu rufen, und/oder ein Terminal, das dem Adapter ermöglicht,
mit Hilfe eines schnurlosen Telefons über eine drahtlose Fernmeldelinie
zu kommunizieren. Das Gerät
kann auch Zusatzdienste gemäß der H.450-Protokoll-Spezifikation 26 implementieren.
Wie weiter unten ausführlicher erläutert wird,
wird die SCUI 20 bei der Initialisierung so konfiguriert,
dass eine oder mehrere Warteschlangen als rufbare Instanzen gekennzeichnet
werden (d. h. als Instanzen, die in der Lage sind, Anrufe von dem speziellen
Gerät zu
empfangen).
-
Das H.323-Gateway 106 (1A) stellt im Allgemeinen
eine Übersetzungsfunktion
zwischen H.323-Konferenzschaltungs-Endpunkten und anderen Typen
von Terminals zur Verfügung
und führt
den Verbindungsaufbau und -abbau sowohl auf der LAN-Seite als auch
auf der Wählnetzseite
durch. Der H.323-Gatekeeper 108 führt die Adressenübersetzung
von LAN-Aliasen für
Terminals und Gateways in IP- oder
IPX-Adressen (wie in der RAS-Spezifikation definiert) sowie die
Bandbreiten-Verwaltung (ebenfalls in der RAS-Spezifikation spezifiziert)
durch. Der H.323-Gatekeeper 108 kann ferner für die Rufwegelenkung
verwendet werden.
-
Schließlich kann gemäß der vorliegenden Erfindung
ein Warteschlangenserver 110 vorgesehen sein. Wie aus 1A ersichtlich ist, umfasst
der Warteschlangenserver 110 eine Vielzahl von Warteschlangen 111a–111c,
denen jeweils ein Warteschlangen-Alias zugeordnet ist und die jeweils
Anrufe von den anderen H.323-Geräten
empfangen können,
wie weiter unten ausführlicher
erläutert
wird. Das heißt,
jede Warteschlange ist ein H.323-rufbarer Endpunkt mit einem oder
mehreren registrierten Aliasen. Jede Warteschlange ist mit einer Liste
von einem oder mehreren Ziel-Aliasen definiert, welche sie bedient.
Es ist anzumerken, dass die rufbaren Warteschlangen, auch wenn sie
als dedizierter Server dargestellt sind, auch in einem Netzserver
oder einem IP-Telefon implementiert sein können; 1A stellt somit nur ein Beispiel dar.
-
Gemäß einer Ausführungsform
der Erfindung ist Warteschlangenbetrieb als eine gesonderte aufrufbare
Funktion auf einem Server implementiert. Folglich ist es möglich, Funktionen
wie den Sammelgruppen-Proxy (Hunt Group Proxy), die möglicherweise
bei mehreren Anrufen ausgeführt
werden müssen,
zu vereinfachen. Der Sammelgruppen-Proxy kann so implementiert werden,
dass er sich immer nur mit einem einzigen Anruf befasst, indem er
vor dem Sammelgruppen-Proxy
installiert wird. Wenn der Kunde Warteschlangenbetrieb für Sammelgruppen
(Hunt Groups) wünscht,
ist es lediglich erforderlich, den Erfordernissen entsprechend die
Warteschlange zu konfigurieren und die Weiterleitung einzustellen.
-
Insbesondere zeigt 2 ein detaillierteres Blockschaltbild
eines beispielhaften Warteschlangenservers 110. Der Warteschlangenserver 110 weist
eine bekannte LAN-Schnittstelle 202 auf, die mit dem LAN 101 (1A) gekoppelt ist und so
geschaltet ist, dass sie Übertragungen über das
LRN 101 empfängt.
Ferner ist eine Steuereinheit 204 vorgesehen, welche mit
H.450 bzw. H.323 konforme Steuerungen 208, 210 umfasst.
Weiterhin ist eine Vielzahl von Warteschlangen (111a–111c)
vorgesehen, die jeweils eine rufbare Instanz 201 und einen rufbaren
Alias 203 definieren. Ferner kann bei einer Ausführungsform
ein Zeitgeber 206 vorgesehen sein, der mit den Warteschlangen 111 und
der Steuereinheit 204 gekoppelt ist. (Im Allgemeinen ist
der Warteschlangenserver 110 H.323-konform, wie in 1B dargestellt; 2 ist aus Gründen der Übersichtlichkeit
vereinfacht.
-
Die Warteschlangen 111 können als
vordefinierte Speichersegmente ausgeführt sein und werden bei der
Initialisierung oder Konfigurierung des Systems eingerichtet und
von der Steuereinheit 204 mit den entsprechenden H.323-Terminals 102 (1A) verknüpft. Ein
Warteschlangenserver 110 gemäß der vorliegenden Erfindung
beinhaltet eine oder mehrere rufbare Warteschlangen 111 und
kann so konfiguriert sein, dass er für irgendeine der traditionellen PBX-Anwendungen,
welche Warteschlangenbetrieb erfordern, verwendet werden kann. Zu diese
gehören
zum Beispiel, jedoch nicht ausschließlich, Sammelgruppen, Vermittlungsplätze (Attendant Consoles),
abgehende Leitungen, Interactive Voice Responsive (IVR) und Voice
Mail. Von einem H.323-Terminal, welches Warteschlangenbetrieb verwendet,
muss lediglich gefordert werden, dass es eine Funktion "Rufumleitung wenn
besetzt" (forward on
busy) zum Warteschlangenserver und, spezieller, zu der zugeordneten
Warteschlange aktiviert hat.
-
Jeder Warteschlangenserver 110 unterhält eine
Menge von Warteschlangen. Für
jede definierte Warteschlange registriert der Warteschlangenserver die
Warteschlangen-Aliase auf bekannte Art und Weise mit dem Gatekeeper 103 bei
der Initialisierung oder wenn eine neue Warteschlange erzeugt wird; der
Warteschlangenserver löscht
die Warteschlangen-Aliase aus dem Register, wenn eine Warteschlange
gelöscht
wird.
-
Wie oben erwähnt wurde, wird eine Warteschlange
mit einem oder mehreren rufbaren Aliasen konfiguriert. Für die Warteschlange
sind außerdem eine
oder mehrere rufbare Instanzen konfiguriert, die dazu bestimmt sind,
das Ziel von Anrufen zu sein, die von der Warteschlange empfangen
werden. Anrufe, die von der Warteschlange empfangen werden, werden
auf der Signalisierungsebene und, falls dies konfiguriert wurde,
durch einen hörbaren
Ton beim Anrufer quittiert und in die Warteschlange eingereiht. Wenn
Anrufe in der Warteschlange vorhanden sind, funktioniert die Warteschlangen-Steuereinheit 204 in einem
von zwei Modi: Falls der von der Warteschlange bediente Endpunkt
nicht (H.450) Zusatzdienste unterstützt, die seinen Status melden,
tritt der Warteschlangenserver 110 in einen "Umlegungs-Rückruf"- (transfer call-back) Modus ein; falls
der von der Warteschlange bediente Endpunkt jedoch Zusatzdienste unterstützt, die
seinen Status melden, tritt der Warteschlangenserver 110 in
einen "Abfrage"-Modus ein. Im Umlegungs-Rückruf-Modus
wartet der Warteschlangenserver 110 eine vorgegebene Wartedauer und
legt anschließend
unter Verwendung von H.450.2-Prozeduren den ersten Anruf in der
Warteschlange zurück
zu dem bedienten Endpunkt um. Falls der bediente Endpunkt noch immer
besetzt ist, wird nach einer kurzen Wartezeit der nächste erneute Versuch
unternommen. Die Wartezeit kann konfigurierbar sein und beträgt normalerweise
etwa ein paar Sekunden. Falls jedoch der von der Warteschlange bediente
Endpunkt H.450-Zusatzdienste
oder CTI (Computer-Telefon-Integration) unterstützt, um seinen Status zu melden,
so fährt
der im Abfrage-Modus befindliche Warteschlangenserver 110 fort,
den Status der für
den Empfang von Anrufen aus der Warteschlange konfigurierten Ziele
abzufragen. Wenn der Warteschlangenserver 110 (d. h. die
Steuereinheit 204) feststellt, dass eines der bedienten
Ziele frei oder nicht besetzt ist, entfernt er einen Anruf aus der Warteschlange
und legt den Anruf über
die LAN-Schnittstelle 202 zum Ziel um.
-
Bei Anrufen, die empfangen werden,
wenn die Länge
der Warteschlange überschritten
ist, ist es möglich,
den Anruf zurückzuweisen
oder den Anruf zu einem Überlauf-Ziel
(nicht dargestellt) umzulegen. Die Eintragungen in der Warteschlange
können
nach dem Prinzip "First-in – first-out" (FIFO) oder nach
Priorität
geordnet sein. Bei einer Prioritäts-Warteschlange
wird die Priorität
eines Anrufs durch den für
den Anruf verwendeten Alias bestimmt. Alle in der Warteschlange
wartenden Anrufe befinden sich entweder in einem aktiven Zustand
oder einem Rufmeldungs-Anklopf-Zustand in Bezug auf H.323-Signalisierung
und -Steuerung, in Abhängigkeit
von der durch das lokale Netz des gerufenen Teilnehmers erfolgenden
Behandlung des Anklopfens. Falls dies für die Warteschlange definiert
ist, kann Musik oder Video-on-hold für die Audio- oder Videokanäle zur Verfügung gestellt
werden.
-
Es wird nun 3 betrachtet; sie zeigt ein Flussdiagramm 250,
welches die Initialisierung der Fernmeldeanlage von 1A veranschaulicht. Insbesondere werden
in einem Schritt 252 die an das LAN angeschlossenen Fernsprecheinrichtungen
als Netz-Aliase besitzend und rufbare Instanzen darstellend definiert.
In einem Schritt 254 werden auch den Warteschlangen 111 im
Warteschlangenserver Aliase zugewiesen. In einem Schritt 256 wird
jeder der Aliase entweder an die entsprechenden Geräte oder den
Gatekeeper gemeldet oder mit ihnen verknüpft. Schließlich werden in einem Schritt 258 die
Prioritäten
der Fernsprecheinrichtungen den Warteschlangen zugewiesen, welche
mit den Geräten
verknüpft worden
sind.
-
Es werden nun 4 und 5 betrachtet;
sie zeigen die Funktionsweise einer Ausführungsform der Erfindung in
einem ersten Modus. Das dargestellte Beispiel bezieht sich auf eine
Implementierung in Verbindung mit einer Sammelgruppe. Jedoch kann
die rufbare Warteschlange gemäß der vorliegenden
Erfindung durch jede beliebige aus einer Vielzahl von Telefonie-Anwendungen
implementiert werden. Die Abbildungen dienen daher nur als Beispiel.
In einem Schritt 300 trifft ein Anruf am Gateway 106 ein.
Das Gateway 106 liest in einem Schritt 302 den
Ziel-Alias, und in einem Schritt 304 leitet das Gateway 106 (siehe
Schritt 1 in 5)
den ersten Anruf zum Sammelgruppen-Proxy 150 weiter. Der Sammelgruppen-Proxy 150 beginnt
dann, unter den Teilnehmern der Sammelgruppe (siehe Schritt 2 in 5) nach einem freien Teilnehmer
der Sammelgruppe zu suchen. Während
der Sammelgruppen-Proxy 150 mit dem ersten Anruf beschäftigt ist, trifft
in einem Schritt 306 ein zweiter Anruf am Gateway 106 ein.
In einem Schritt 308 identifiziert das Gateway 106 erneut
den Ziel-Alias. Das Gateway 106 sendet anschließend (siehe
Schritt 3 in 5) den
zweiten Anruf in einem Schritt 310 zum Sammelgruppen-Proxy.
Da der Sammelgruppen-Proxy 150 besetzt ist, fordert er
in einem Schritt 312 an (siehe Schritt 4 in 5), dass das Gateway 106 den
Anruf zum Warteschlangenserver 110 weiterleitet. Der Sammelgruppen-Proxy 150 verwendet
dazu standardmäßige Befehle
CALL FORWARD ON BUSY (Rufweiterschaltung bei Besetzt) mit dem Alias,
welcher dem Warteschlangenserver 110 zugewiesen wurde.
Das Gateway 106 leitet anschließend in einem Schritt 314 den
Anruf (siehe Schritt 5 in 5) zum
Warteschlangenserver 110 weiter. In einem Schritt 316 empfängt der
konfigurierte Warteschlangenserver 110 den weitergeleiteten
Anruf. In einem Schritt 318 liest der Warteschlangenserver 110 den Alias
und leitet in einem Schritt 320 den Anruf zu der entsprechenden
Warteschlange weiter. Schließlich aktiviert
bei der dargestellten Ausführungsform
der Warteschlangenserver 110 in einem Schritt 322 den Zeitgeber 206.
Wie oben erwähnt,
wird der Zeitgeber 206 von dem Warteschlangenserver 110 verwendet, um
einen Zeitpunkt zu bestimmen, zu dem er versuchen sollte, den Sammelgruppen-Proxy 150 abzufragen,
um festzustellen, ob er frei ist.
-
Der Abschluss des Prozesses in diesem
Beispiel ist in den 6–8 dargestellt. Insbesondere läuft in einem
Schritt 402 der Zeitgeber 206 ab. Danach übermittelt
der Warteschlangenserver
110 in einem Schritt 404 die
Anforderung (siehe Schritt 1 in 7) an das Gateway 106, den zweiten
Anruf zum Sammelgruppen-Proxy 150 umzulegen. Das Gateway 106 versucht
dann in einem Schritt 406, die Umlegung (siehe Schritt 2 in 7) auf eine mit Standard
H.323 konforme Art und Weise durchzuführen. In einem Schritt 408 bestimmt
der Sammelgruppen-Proxy 150, ob er besetzt ist oder nicht.
Falls er tatsächlich
besetzt ist, legt der Sammelgruppen-Proxy 150 in einem
Schritt 412 den Anruf (siehe Schritt 3 in 7) zurück zum Gateway 106 um.
Der Anruf wird dann in einem Schritt 414 zum Warteschlangenserver
zurückgegeben
(siehe Schritt 4 in 7).
Dabei liest der Warteschlangenserver 110 in einem Schritt 416 eine
Kennung des zurückgegebenen
Anrufs, z. B. die globale Anrufkennung. In einem Schritt 418 wird
der zurückgegebene
Anruf an der Spitze der Warteschlange (entsprechend der Priorität, falls
sich mehrere Anrufe in der Warteschlange befinden) im Warteschlangenserver
eingereiht. Es ist anzumerken, dass, obwohl ein einzelner Zeitgeber 206 im Hinblick
auf eine Vielzahl von Warteschlangen 111a–111c dargestellt
ist, für
die einzelnen Warteschlangen auch separate Zeitgeber vorgesehen
werden können,
und es können
sogar mehrere Zeitgeber für
jede Warteschlange vorgesehen werden. Danach findet der Sammelgruppen-Proxy 150 in
einem Schritt 420 einen freien Sammelgruppen-Teilnehmer und
legt den ersten Anruf zu dem Sammelgruppen-Teilnehmer um (siehe 8). In einem Schritt 422 versucht
der Warteschlangenserver 110 eine weitere Verbindung herzustellen
(siehe Schritt 1 in 8),
da der Zeitgeber nochmals abgelaufen ist. In einem Schritt 424 nimmt
der Sammelgruppen-Proxy 150 den zweiten Anruf entgegen
(siehe Schritt 2 in 8),
und in einem Schritt 426 beginnt er (siehe Schritt 3 in 8), die Sammelgruppe nach
einem freien Sammelgruppen-Teilnehmer zu durchsuchen. Schließlich schaltet
der Sammelgruppen-Proxy 150 in einem Schritt 428 den
Anruf zu einem Sammelgruppen-Teilnehmer durch. Falls weiter oben
im Schritt 408 der Sammelgruppen-Proxy 150 frei
gewesen wäre,
wäre in
einem Schritt 424 die Verbindung mit der Sammelgruppe hergestellt
worden.
-
Unter Bezugnahme auf die 9 und 10 wird nun die Implementierung einer
rufbaren Warteschlange gemäß einer
zweiten Ausführungsform
der Erfindung beschrieben. Insbesondere verwendet, wie in den 9 und 10 beschrieben wird, das besagte H.323-Terminal (d. h. der
Sammelgruppen-Proxy 150) H.450-Signalisierung, um zum Beispiel
Zusatzdienste zu unterstützen,
die es ermöglichen,
den Status der Ziele zu identifizieren, die so konfiguriert sind,
dass sie die Anrufe von der Warteschlange empfangen können. Wenn
der Warteschlangenserver 110 feststellt, dass eines der
Ziele frei ist (d. h. wenn er eine entsprechende Mitteilung empfängt), entfernt
der Warteschlangenserver 110 einen Anruf aus der entsprechenden
Warteschlange und legt den Anruf zu dem Ziel um. Insbesondere treffen
ein erster und ein zweiter Anruf ein, wie oben unter Bezugnahme
auf 4 beschrieben wurde, wobei
der zweite Anruf in einer Warteschlange geparkt wird. Dann läuft in einem
Schritt 500 (9) ein
Zeitgeber ab. Im Schritt 502 fragt der Warteschlangenserver 110 (siehe
Schritt 1 in 10)
den Sammelgruppen-Proxy 150 ab, um dessen Status zu bestimmen.
In einem Schritt 504 stellt der Warteschlangenserver 110 fest
(siehe ebenfalls Schritt 1 in 10), ob der Sammelgruppen-Proxy 150 frei
ist. Falls der Sammelgruppen-Proxy 150 nicht frei ist,
aktiviert der Warteschlangenserver 110 in einem Schritt 506 erneut
den Zeitgeber und kehrt zu Schritt 500 zurück. Falls
jedoch der Warteschlangenserver 110 feststellt, dass der
Sammelgruppen-Proxy 150 frei ist, fordert der Warteschlangenserver 110 (siehe Schritt 2 in 10) in einem Schritt 508 eine
Umlegung an. In einem Schritt 510 legt das Gateway den Anruf
(siehe Schritt 3 in 10)
zu dem Sammelgruppen-Proxy 150 um. In einem Schritt 512 nimmt der
Sammelgruppen-Proxy 150 den Anruf entgegen und durchsucht
(siehe Schritt 4 in 10)
in Schritt 514 die Sammelgruppe. Schließlich schaltet der Sammelgruppen-Proxy 150 in
einem Schritt 516 den Anruf zu dem entsprechenden Sammelgruppen-Teilnehmer
durch.