-
Die
Erfindung bezieht sich auf das allgemeine Gebiet von Netzwerk-Call-Centers
und programmierbare Agenten-Arbeitsstationen.
-
HINTERGRUND DER ERFINDUNG
-
Überblick
-
Die
vorliegende Erfindung offenbart ein programmierbares Arbeitsstations-System
und ein Verfahren für
ein auf einem Netzwerk beruhendes Call-Center mit Fernsprechfunktionen,
die über
ein IP-Netzwerk bereitgestellt werden und einen Personalcomputer
verwenden. Für
solch ein Call-Center besteht der Bedarf, die Fernsprechfunktionen
den Verfügbarkeitsfunktionen
des Agenten zu koordinieren. Bestehende Lösungen nutzen eine Vermittlungsstelle
und ein PSTN-Telefon, um Informationen an einen automatischen Ruf-Weiterleiter (automated
call director) (ACD) zu übertragen.
Es besteht Bedarf, das Problem zu lösen, ein ähnliches Berichten durchzuführen und
Fernsprechfunktionen und Agenten-Datenfunktionen gemeinsam bestehen
zu lassen. Merkmale der Erfindung beinhalten (a) spezielle Protokolle,
um Agenten-Informationen an einen Virtuellen ACD weiterzugeben und
zusammen mit der ITU-T H.323-Signalisierung
zu existieren und (b) die Fähigkeit, den
Agenten-Zustand
weiterzugeben und eine bildschirmbasierte Schnittstelle zum Agenten
auch für
solche Informationen bzgl. der Agentenverfügbarkeit und -Alarmierung bereitzustellen.
-
Allgemeine System-Architektur
-
Die
allgemeine System-Architektur der vorliegenden Erfindung ist in 1,
mit der Agenten-Arbeitsstation (1121) als Hauptaugenmerk
der Lehren der vorliegenden Erfindung, veranschaulicht.
-
BESCHREIBUNG DES STANDES DER
TECHNIK
-
Bestehende
Lösungen
des Problems, das die vorliegende Erfindung löst, benutzen eine Vermittlungsstelle
und ein PSTN-Telefon, um Informationen an einen automatischen Ruf-Weiterleiter
(ACD) zu kommunizieren. Jedoch gab es kürzlich Versuche, diese Funktionen
zu integrieren. Siehe Nicholas Cravotta, "Voice Over Packet – Putting it all Together", ELECTRONIC DESIGN
MAGAZINE, Seite 107–118
(16. März
2000).
-
Unter
Bezug auf
1 gehören zum aktuellen Stand der
Technik Telefonausrüstung
(
1101), öffentliche
vermittelte Telefonnetzwerke (
1102) und öffentliche
Vermittlungsstellen (branch exchanges) (
1103). Die übrigen Elemente
in diesem Bild können
mit einbezogen werden, indem man die Lehren der vorliegenden Erfindung
benutzt, um Merkmale bereitzustellen, die nicht in der bestehenden
Technik vorhanden sind. Die
EP 957621A1 betrifft
die Integration eines E-mailservers und eines Telephonieservers
in einem PC mit einem JTAPI Client, der eine in Java implementierte
Telefonieschnittstelle aufweist. Hier wird jedoch nicht offenbart,
wie man eine solche Integration für einen stabilen und Rechner-Resourcen
schonenden Mehrbenutzerbetrieb wie er bei Weiterleitungs-Unterstützungssystemen
benötigt
wird, (Directory Assistance System) (DAS), verwirklichen kann.
-
AUFGABE DER ERFINDUNG
-
Die
Aufgabe der vorliegenden Erfindung ist die Integration von VOIP
in den Bedienerplatz eines Weiterleitungs-Unterstützungssystems (Directory Assistance
System) (DAS).
-
Durch
die Lösung
der Aufgabe wird es dem Bediener erlaubt, entweder manuell (durch
Tastendruck) oder programmatisch (durch Aufrufe von Makro-Befehlen)
sprachbezogene Parameter (zum Beispiel Mikrofon-Pegel und Kopfhörer-Pegel)
und anrufbezogene Parameter (Anmelden, Tonfreigabe, Platzfreigabe,
nicht bereit) zu steuern. Weitere Aspekte der Erfindung sind:
Die
Fähigkeit
für eine
oder mehrere DLL-Anwendungen, die auf der intelligenten Arbeitsstations-Plattform
(Intelligent Workstation Platform) (IWSP) laufen, 1 bis 8 Client-TCP/IP-Socket-Verbindungen zu anderen
Anwendungen, die entweder auf dem gleichen PC oder irgendwo anders
im Netzwerk laufen, zu öffnen.
Die PlusTapi-Anwendung (109, 5500) war eine solche
DLL. Die PlusTcp-DLL (109, 5500), die diese Unterstützung lieferte, erzeugte
Nachrichten zurück
an jede andere IWSP-DLL, wenn Daten empfangen wurden. Die PlusTcp-DLL (109, 5500)
gab auch Fehlermeldungen an die untergeordnete (owing) DLL zurück, wann
immer eine TCP/IP-Ausnahme auftrat. Die übergeordnete (owning) DLL konnte
daraufhin eine PlusTcp-API aufrufen, die eine Zeichenkette, die
eine Textnachricht mit dem entsprechenden Fehlercode enthielt, zurückgab. Die
Textnachricht würde
in der Sprache erzeugt, die aktuell auf dem Platz ausgewählt war
(Englisch, Spanisch usw.), welcher dann dem Operator angezeigt wurde.
-
Aufruf
von Makros durch Ereignisse, die von der PlusTapi-JavaPhone-Schnittstelle
erzeugt werden. Makros wurden für
die Aktualisierung von Bildschirmanzeigen oder für die Ausführung anderer Operationen benutzt,
die für
die IWSP-Arbeitsstation definiert wurden. PlusTapi-Makro-Aufrufe
erlauben es dem Nutzer, flexible Anzeigen zu erzeugen, die den Bediener über verschiedene
Ereignisse (Eingang eines Anrufes, Ende eines Anrufes, Anpassungen
der Lautstärke
des Kopfhörers
usw.) informieren. PlusTapi-Makro-Befehle erlaubten es dem Nutzer
auch, verschiedene Steuerungen in JavaPhone (z. B. betriebsbereit/nicht
bereit, Tonfreigabe usw.) auszulösen.
-
PlusTapi
enthielt einen TCP/IP-"ping"-Makro-Befehl, der
durch einen einzigen Tastendruck oder programmatisch durch das DDE-Protokoll oder die
IWSP-DLL-API eine Ping-Anforderung über die JavaPhone-Anwendung
(105, 4400) an den Anruf-Weiterleiter (Call Director)
aussandte und dann die Ergebnisse rückwärts beim Bediener in einer
WindowsTM-Messagebox anzeigte.
-
PlusTapi
(109, 5500) unterstützt zwei Betriebsarten – eine,
in der Makrobefehls-Fehler Messagebox-Anzeigen an den Operator erzeugten
und eine, bei der Makrobefehls-Fehler Rückkehrcodes an die aufrufende
Anwendung erzeugten. Der Modus, in dem PlusTapi arbeitet, wird durch
einen Makro-Befehl gesteuert und kann je nach Wunsch dynamisch geändert werden.
-
Im
Allgemeinen werden diese Ziele durch die veröffentlichte Erfindung, die
in den folgenden Abschnitten erläutert
wird, erreicht, wobei diese Ziele nicht als Begrenzung der Lehren
der vorliegenden Erfindung verstanden werden sollen.
-
KURZE ZUSAMMENFASSUNG DER
ERFINDUNG
-
ÜBERBLICK
-
Die
Erfindung bezieht sich auf das allgemeine Gebiet einer programmierbaren
Arbeitsstation für
ein netzwerkbasiertes Call-Center
mit Telefonfunktionen, die über
das IP-Netzwerk bereitgestellt werden und einen Personalcomputer
benutzen. Für
ein solches Call-Center bestand der Bedarf, die Telefonfunktionen
mit Agenten-Verfügbarkeitsfunktionen
zu koordinieren. Bestehende Lösungen
nutzen eine Vermittlungsstelle und PSTN-Telephone, um Informationen
an einen ACD zu übertragen.
Wir müssen
das Problem lösen,
ein ähnliches
Berichten durchzuführen
und Telefonfunktionen und Agenten-Datenfunktionen gemeinsam bestehen
zu lassen. Merkmale der Erfindung: (1) ein spezielles Protokoll
zur Weiterleitung von Agenten-Informationen an den Virtuellen ACD
und gleichzeitiges Bestehen der H.323-Signalisierung, (2) die Fähigkeit,
den Agentenzustand weiterzuleiten und eine bildschirmbasierte Schnittstelle
für den
Agenten auch für
Informationen bzgl. Agenten-Verfügbarkeit
und Alarmierung bereitzustellen.
-
Verallgemeinerte Systemarchitektur
-
Die
IP-basierte Agenten-Technologie entwickelt sich für IP-Call-Center. Die Hauptprobleme
mit herkömmlichen
Call-Center waren herstellerspezifische Schnittstellen für die Schaffung
von Diensten innerhalb von Vermittlungen, die komplex zu ändern sind.
Die meisten Vermittleranbieter steuern, welche Informationen zugänglich sind,
und das macht die Entwicklung neuer Dienste sehr schwierig.
-
Wir
nehmen Bezug auf 2 – die vorliegende Erfindung
versetzt, wenn sie in eine Systemumgebung (2200) eingebunden
wird, eine virtuelle ACD-Umgebung (2203) mit integrierter
Einheit zur Spracherwiderung (Voice response unit) (VRU) und virtuellem
automatischem Anrufverteiler (Virtual Automatic Call Distributor) (VACD)
(1114) in die Lage, eine programmierbare Schnittstelle
(1121) mit einer üblichen
Skriptlogik zu haben, so dass der komplette Anruffluss in einem
einzigen Prozess ausgeführt
werden kann. Die Bediener-Schnittstelle (1122) kann eine
Vielzahl von Formen annehmen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die
Unterlagen dieses Patentes enthalten wenigstens eine Zeichnung/Fotografie
in Farbe. Kopien dieses Patentes mit Farbzeichnungen/Fotografien
werden vom Patent and Trademark Office auf Anforderung und bei Bezahlung
der nötigen
Gebühr
bereitgestellt.
-
Für ein besseres
Verständnis
der Vorteile, die die Erfindung bietet, sollte man sich auf die
folgende, detaillierte Beschreibung mit den dazugehörenden Zeichnungen
beziehen, wobei
-
1 eine
beispielhafte Umgebung der Systemanwendung der vorliegenden Erfindung
veranschaulicht;
-
2 ein
beispielhaftes Diagramm der Datenflussarchitektur veranschaulicht,
das die Lehren der vorliegenden Erfindung unterstützt;
-
3 ein
verallgemeinertes Systemblockdiagramm darstellt, das die Hauptbestandteile
der vorliegenden Erfindung zeigt;
-
4 eine
beispielhafte JavaPhone API-Schnittstelle zeigt, die in einigen
Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
5 eine
beispielhafte PlusTCP API-Schnittstelle veranschaulicht, die in
einigen Ausführungsformen der
vorliegenden Erfindung benutzt wird;
-
6 eine
beispielhafte PlusTapi API-Schnittstelle darstellt, die in einigen
Ausführungformen
der vorliegenden Erfindung benutzt wird;
-
7 einen
beispielhaften, normalen Anmelde-(sign on)Nachrichtensequenz-Datenfluss
veranschaulicht, der in einigen Ausführungsformen der vorliegenden
Erfindung benutzt wird;
-
8 einen
beispielhaften, normalen Abmelde-(sign off)Nachrichtensequenz-Datenfluss
darstellt, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
9 einen
beispielhaften Abmelde-Nachrichtenfolge-Datenfluss für nichtangeschlossenen
Kopfhörer
zeigt, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
10 einen
beispielhaften Nachrichtenfolge-Datenfluss eines ankommenden Anrufes
zeigt, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
11 einen
beispielhaften Dialog zum Wählen
einer Nummer veranschaulicht, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
12 einen
beispielhaften abgehenden Nachrichtenfolge-Datenfluss darstellt, der in einigen
Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
13 einen
beispielhaften Nachrichtenfolge-Datenfluss für wartenden/nichtwartenden
Anruf zeigt, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
14 einen
beispielhaften Nachrichtenfolge-Datenfluss für Anrufweiterleitung an eine
externe Nummer darstellt, der in einigen Ausführungsformen der vorliegenden
Erfindung benutzt wird;
-
15 einen
beispielhaften Nachrichtenfolge-Datenfluss für eine Telefonkonferenz mit
Supervisor darstellt, die in einigen Ausführungsformen der vorliegenden
Erfindung benutzt wird;
-
16 einen
beispielhaften Schlüssel-Nachrichtenfolge-Datenfluss für ein Bediener-Auflegen
mit Unterbrechen des Anrufs zeigt, der in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
17 eine
beispielhafte PlusTapi-Diensteprogrammanzeige darstellt, die in
einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
18 beispielhafte InfoWin-Diensteprogrammeinstellungen
für das
CSW veranschaulicht, die in einigen Ausführungsformen der vorliegenden
Erfindung benutzt werden;
-
19 ein im normalen Modus laufendes CSW darstellt,
das in einigen Ausführungsformen
der vorliegenden Erfindung benutzt wird;
-
20 einen beispielhaften Datenfluss veranschaulicht,
der zeigt, wie die vorliegende Erfindung genutzt werden kann, um
auf mehrere entfernte Kommunikationssysteme zuzugreifen.
-
BESCHREIBUNG DER ZUR ZEIT
BEVORZUGTEN BEISPIELHAFTEN AUSFÜHRUNGSFORMEN
-
Ausführungsformen sind beispielhaft
-
Obwohl
diese Erfindung in vielen verschiedenen Formen ausgeführt werden
kann, wird sie in einer ausführlichen
bevorzugten Ausführungsform
in den Zeichnungen gezeigt und hier beschrieben, mit dem Verständnis, dass
die vorliegende Veröffentlichung
als ein Beispiel der Prinzipien der Erfindung anzusehen ist und nicht
beabsichtigt ist, den breiten Aspekt der Erfindung auf die dargelegte
Ausführungsform
zu beschränken.
-
Die
zahlreichen innovativen Lehren der vorliegenden Anwendung werden
mit besonderem Bezug auf die derzeit bevorzugten Ausführungsformen
beschrieben, wobei diese innovativen Lehren in vorteilhafter Weise
auf die speziellen Probleme eines programmierbaren Agenten-Arbeitsstationssystems
und -Verfahrens angewandt werden. Es sollte jedoch verstanden werden,
dass diese Ausführungen
nur Beispiele der vielen vorteilhaften Nutzungen der innovativen
Lehren sind. Im Allgemeinen beschränken Aussagen, die in der Spezifizierung
der vorliegenden Anwendung gemacht werden, nicht notwendigerweise
irgendeine der verschiedenen beanspruchten Erfindungen. Mehr noch,
einige Aussagen können
auf einige Erfindungsmerkmale angewandt werden, aber nicht auf andere.
Im Allgemeinen, wenn nicht anders gekennzeichnet, können einzelne
Elemente, ohne Verlust der Allgemeinheit, im Plural stehen und umgekehrt.
-
Definitionen
-
In
den Erläuterungen
in diesem Dokument werden die folgenden Definitionen benutzt:
-
Systemblöcke/nicht beschränkende Ablaufschritte
-
Die
vorliegende Erfindung kann passend durch beispielhafte System-Blockdiagramme
und Ablauf-Flussdiagramme beschrieben werden. Während diese Dinge ausreichend
sind, einem normalen Fachmann die Lehren der Erfindung zu vermitteln,
sollten sie nicht strikt als Begrenzung des Bereiches der vorliegenden
Erfindung verstanden werden. Ein Fachmann ist sich bewusst, dass
System-Blockdiagramme ohne Verlust der Allgemeinheit kombiniert
und neu angeordnet werden können
und dass Ablaufschritte hinzugefügt oder
weggelassen und neu angeordnet werden können, um den gleichen Effekt
ohne Verlust der allgemeinen Lehre zu erreichen. Demzufolge sollte
verstanden werden, dass die vorliegende Erfindung so wie in den
angefügten,
beispielhaften System-Blockdiagrammen und Ablauf-Flussdiagrammen
dargestellt, nur zu Lehrzwecken bestimmt ist und von einem Fachmann,
in Abhängigkeit
von der beabsichtigten Zielanwendung, überarbeitet werden kann.
-
Nicht beschränkender Personalcomputer
-
Für die Erörterung
hier werden Beispiele zur Verfügung
gestellt, die Personalcomputer-(PC)Technologien benutzen, um die
Lehren der vorliegenden Erfindung zu veranschaulichen. Dem Ausdruck "Personalcomputer" sollte in dieser
Beziehung eine breite Bedeutung eingeräumt werden, da im Allgemeinen
jeder Rechner genutzt werden kann, um die Lehren der vorliegenden
Erfindung zu realisieren, und der Bereich der Erfindung ist nicht
nur auf Personalcomputer-Anwendungen beschränkt.
-
Nicht beschränkendes
Betriebssystem
-
Obwohl
die vorliegende Erfindung realisiert werden kann, indem vorteilhafterweise
eine Vielzahl von Microsoft®-Betriebssystemen (inklusive
eine Vielzahl der WindowsTM Varianten) genutzt
wird, sollte zusätzlich nichts
so interpretiert werden, dass der Bereich der Erfindung auf diese
speziellen Softwarekomponenten beschränkt wird. Insbesondere können das
hier vermittelte System und Verfahren weiträumig in einer Vielzahl von
Systemen umgesetzt werden, von denen einige eine grafische Benutzeroberfläche enthalten
können.
-
System
-
Überblick
-
Die
vorliegende Erfindung kann allgemein als innerhalb der Beispiel-Systemarchitektur
von 3 dargestellt angesehen werden. Diese Beispielarchitektur
wird nun im Detail beschrieben.
-
Die
folgende Erläuterung
zeigt detailliert die funktionellen Spezifikationen und andere Elemente,
die notwendig sind, damit Weiterleitungs-Unterstützungs-(DAS)Arbeitsstationen
ein vorgeschlagenes Netzwerk-Call-Center unterstützen. 3 zeigt
eine grobe Darstellung der vorgeschlagenen Systemarchitektur. Es gibt
verschiedene Verbesserungen zur Weiterleitungs-Unterstützungs-Systemumgebung im vorgeschlagenen Netzwerk-Call-Center, darunter:
Die Übertragung
von Sprachdaten über
das TCP/IP-Netzwerk anstatt über
besondere Audioleitungen.
Nutzung von Standard-PCs mit einer
Kopfhörereinheit
für Audiosignale,
die an dem seriellen Anschluss angeschlossen ist.
Weglassen
der üblichen
Call-Center-Vermittlungsstelle und der funktionellen Spezifikationen
der Zugangs-Arbeitsstation zur Anrufverarbeitung (Call Processing
Gateway Workstation) für
das Netzwerk-Call-Center.
-
Alle
vermittlungsstellenbezogenen Steuerungen, zum Beispiel "besetzt", und das Audiosignal
werden über
das TCP/IP-Netzwerk an die "JavaPhone"-Anwendung (105, 4400)
gesendet, die sich auf der Arbeitsstation befindet. Die Arbeitsstation
stellt im Allgemeinen eine Bildschirmanzeige bereit, die visuelle
Anzeigen für den
Bediener über
die aktuellen Anruf- und Audiozustände enthält. Diese Bildschirmanzeige
wird in diesen Unterlagen als "Anrufstatus-Fenster" (Call Status Window
(CSW)) bezeichnet.
-
Annahmen
-
Die
folgenden Ausführungsmerkmale
und -Annahmen sind für
die DISP/IWSP-Arbeitsstation festgelegt worden:
TPORT unterstützt weiterhin
jede vorhandene Nachrichtenübermittlung
zwischen der Arbeitsstation und den vorhandenen Komponenten im DAS-Netzwerk
(z. B. LSIP, MAP usw.).
Alle Nachrichten zur Anrufsteuerung
(ankommender Anruf, Trennen usw.) werden über die JavaPhone-API gesendet
und empfangen. Der Anrufverarbeitungszugang (Call Processing Gateway
(CPG)) wird nicht benutzt.
Sprache kann zur Arbeitsstation übertragen
werden, indem die "Voice
Over Data"-(Sprache über Daten)
(VoD) Technologie benutzt wird.
Das "JavaPhone" stellt die Audiounterstützung innerhalb
der Arbeitsstation bereit, indem der externe Baustein ShelCad (angeschlossen
an den PC über
den seriellen Anschluss) benutzt wird.
Das Überwachen eines Bedieners durch
einen Supervisor muss nicht die Fähigkeit beinhalten, das Audiosignal
des Bedieners zu hören.
Die
Arbeitsstation muss die Unterstützung
jeder audiobezogenen Steuerung (z. B. laut/leise, Mikrofon stummschalten
usw.) beinhalten.
Die Arbeitsstation stellt eine neue Unterstützung für jede vermittlungsstellenbezogene
Nachrichtenübermittlung
an den neu entwickelten "Anrufweiterleiter"-Baustein (z. B.
besetzt usw.) bereit.
Die Arbeitsstation muss eine Art "Vermittlungsstellen-
und Audio-Statusanzeige" für den Bediener
bereitstellen, die Informationen wie Anrufstatus, stummgeschaltetes
Mikrofon, Platz besetzt usw. enthält.
Die Basis-DA-Funktionalität in der
DISP/IWSP Arbeitsstation wird unterstützt. Sprach-Speicherung und
-Weiterleitung und Spracherkennungstechnologie ist nicht enthalten.
Die
Arbeitsstation läuft
als eine 16-Bit-Anwendung auf der WindowsTM-95-Plattform,
ist aber nicht auf diese Anwendung beschränkt.
-
BEISPIELAUSFÜHRUNGSFORM
DER ARBEITSSTATION
-
Die
folgenden Abschnitte beschreiben die Umsetzungen für jedes
der festgelegten Merkmale, die für das
Netzwerk-Call-Center erforderlich sind. Die Arbeitsstation kann
weiterhin als eine 16-Bit WindowsTM-Anwendung
ausgeführt
werden, kann aber auch in einer WindowsTM95-Umgebung
laufen. Zusätzliche
Arbeitsstations-Komponenten
werden für
die neuen Merkmale benötigt. 3 zeigt
eine bildliche Beispieldarstellung der neuen beispielhaften Softwarekomponenten
der DA-Arbeitsstation.
-
Die
neuen Bestandteile werden in 3 mit dicken
Linien und fetten, blauen Buchstaben gezeigt und beinhalten:
JavaPhone-Anwendung
(105, 4400);
"PlusTcp DLL" (109, 5500); und
"PlusTapi DLL" (110, 6600).
-
Die
bestehenden Bestandteile, die Modifizierungen verlangen, werden
in dicken Linien mit normaler schwarzer Beschriftung gezeigt und
enthalten eine DISP DLL (Directory Assistance – Client-Anwendung). Die folgenden
Abschnitte beschreiben jeden dieser einzelnen Bestandteile und legen
auch andere Anforderungen zur Umsetzung für das Netzwerk-Call-Center
fest.
-
JavaPhone-Anwendung (4)
(105, 4400)
-
Die
JavaPhone-Anwendung (105, 4400) wie in 3 (105)
und 4 (4400) gezeigt, stellt zwei grundlegende
Funktionen bereit:
Audio-Steuerungen und -Status (4411);
und
Anruf-Steuerungen und -Status (4412).
-
Die
JavaPhone-Anwendung (105, 4400) unterstützt eine
lokale TCP/IP Socket-Schnittstelle, die es der Arbeitsstations-Software
(DISPIWSP) erlaubt, die verschiedenen verfügbaren Operationen auszuführen und beliebige
Status-Ereignisse oder -Attribute zu empfangen. Ein einziges lokales
TCP/IP-Socket wird für
die Übermittlung
sowohl von Audio- als auch von Anruf-Steuerungen benutzt.
-
JavaPhone Audio-Steuerungen (4401)
-
Der
Audiopfad beinhaltet das Senden von "Voice over Data" (VoD) unter Benutzung des H.323-Protokolls.
Der Bediener benutzt einen Kopfhörer,
der mit dem ShelCad-Produkt (außerhalb
der PC-Hardware)
verbunden ist. Die JavaPhone-Anwendung (105, 4400) überträgt und empfängt die
Audiodaten durch eine TCP/IP Socket-Verbindung zum "VoD-Zugang".
-
Die
folgenden Audiomerkmale können
in diesen funktionellen Block eingebracht werden:
Steuerungen
für laut/leise
(4421);
Steuerungen für Mikrofon stumm/nicht stumm
(4422);
Steuerungen für Erhöhung/Verringerung der Mikrofonverstärkung (4423);
und
Erkennung des nicht angeschlossenen Kopfhörers (4424).
-
JavaPhone Anruf-Steuerungen (4412)
-
Die
Anrufsteuerungen werden zwischen der JavaPhone-Anwendung (105, 4400)
und dem Anrufweiterleiter unter Nutzung der Java Telephony API (JTAPI) übertragen
und empfangen. Die folgenden Anrufsteuerungen und Statusereignisse
sind allgemein in der vorliegenden Erfindung verfügbar:
Steuerungen
für Anmelden/Abmelden
und Statusereignisse (4425);
Anzeigen für ankommenden
Anruf (4426);
Anzeigen für Anruf-Ende (4427);
Telefonkonferenz
(4428);
Besetzt-Steuerung (4429); und
Steuerung
für Anruf
wartend/nicht wartend (4420).
-
Die
TCP/IP API zur Nachrichtenübermittlung
stellt alle Audio- und
Anrufsteuerungen bereit, die über die
lokale Socket-Verbindung
gesendet werden.
-
PlusTcp DLL (5) (109, 5500)
-
Die
PlusTcp DLL (109, 5500) empfängt Daten in den Puffern, die
von der Anrufanwendung (in diesem Fall die PlusTapi DLL (110, 6600))
bereitgestellt werden. Folglich gibt es keinen Grund für die PlusTcp
DLL (109, 5500), Nachrichten, die von einem der
offenen Sockets empfangen werden, intern zwischenzuspeichern.
-
PlusTcp Enumerated Commands (5502)
-
Wie
in 5 dargestellt, stellt diese neue IWSP DLL die
folgenden Befehle bereit:
TcpOpen (5521) – dieser
Befehl stellt die Socket-Verbindung mit der bereitgestellten TCP/IP-Adresse
und der Anschlusshummer her.
TcpClose (5522) – dieser
Befehl beendet die Socket-Verbindung.
TcpSend
(5523) – dieser
Befehl sendet Daten über
die vorher eingerichtete Socket-Verbindung.
TcpRecv (5524) – dieser
Befehl empfängt
Daten über
die vorher eingerichtete Socket-Verbindung.
TcpGetLastError
(5525) – dieser
Befehl ruft den letzten Fehler des angeforderten Gesprächs (d.
h. Socket) ab.
TcpGetErrorString (5526) – dieser
Befehl gibt eine Nachrichtenzeichenkette zurück, die die textliche Beschreibung
des Fehlerrückgabecodes
enthält,
der durch den Befehl TcpGetLastError erhalten wurde.
-
Die
obigen Befehle unterstützen
die grundlegende TCP/IP Nachrichtenübermittlung, die für jede IWSP DLL
benötigt
wird, die mit einer anderen Anwendung kommuniziert, die sich entweder
auf dem gleichen PC (wie im Falle der JavaPhone-Anwendung) oder
irgend woanders im TCP/IP-Netzwerk befindet. Jeder Befehl spezifiziert
eine "Gesprächs"-Nummer, die die
PlusTcp DLL (109, 5500) senden kann und mit der
durch das passende Socket Daten empfangen werden können.
-
Die
PlusTcp DLL (109, 5500) unterstützt ein
Benachrichtigungsschema, das für
die Benachrichtigung des zugehörigen
Client (in diesem Falle die PlusTapi DLL (110, 6600))
benutzt wird, dass Daten verfügbar
sind. Die Benutzung von IWSP DLL spezifiziert eine flüchtige (non-persistent)
Variable, die genutzt wird, um eine Rückruf-Routine immer dann aufzurufen,
wenn Daten an einem offenen Socket empfangen werden. Diese flüchtige spezifizierte
Variable muss der IWSP-Plattform zugeordnet und dann als Parameter
im TcpOpen-Befehl spezifiziert (siehe unten) werden. Wenn die PlusTcp
DLL (109, 5500) durch die WINSOCK DLL API benachrichtigt
wird, dass Daten an einem offenen Socket verfügbar sind, ruft die PlusTcp
DLL (109, 5500) den IWSP-PlusPokeData-Befehl auf,
der die flüchtige
Zählvariable,
die durch den TcpOpen-Befehl geliefert wird, spezifiziert. Die IWSP-Plattform
erkennt dann, dass die Zählvariable
flüchtig
ist und ruft die spezifizierte Rückrufroutine
auf (in diesem Falle die Routine in der PlusTapi DLL (110, 6600)).
Die übergeordnete
DLL (d. h. -PlusTapi) muss dann sich selbst eine Windows "WM_USER"-Nachricht schicken,
um sich selbst anzuzeigen, dass sie von dem Socket lesen muss. Sie
darf den TCP/IP-Empfang nicht im gleichen Ausführungs-Thread der Rückrufroutine
ausführen.
Wenn die übergeordnete
DLL später
ihre WM_USER-Nachricht empfängt,
muss sie den TcpRecv-Befehl aufrufen (spezifiziert durch die PlusTcp
DLL), um die Daten von dem TCP/IP-Socket zu lesen. Beachte, dass
aufgrund der Natur des Datenstroms des TCP/IP Socket eine einzige
TecpRecv-Operation mehr als eine Nachricht der JavaPhone-Anwendung
zurückgeben
kann.
-
Die
PlusTcp DLL (109, 5500) ist ausgelegt, um bis
zu acht (8) Socket-Verbindungen zur Nutzung durch eine oder mehrere
IWSP DLLs zu unterstützen.
Jede Sitzung wird durch eine "Gesprächsnummer" gekennzeichnet,
die als erster Parameter in jedem der von der PlusTcp DLL (109, 5500)
spezifizierten Befehle spezifiziert wird. Die PlusTcp DLL (109, 5500)
unterhält
und spezifiziert für
die IWSP die internen Variablen, die irgendwelche Fehler enthalten,
die während
des letzten TCP/IP API-Anrufs empfangen wurden, und erlaubt es damit
der Client-Anwendung,
diese Informationen zu erhalten.
-
TcpOpen Command (5521)
-
Dieser
Befehl wird immer dann aufgerufen, wenn eine IWSP DLL wünscht, einen
TCP/IP-Socket zu einer anderen Anwendung, die als TCP/IP-Server
fungiert, zu öffnen.
Eine Benachrichtigungsvariable wird in der Parameterliste spezifiziert,
die anschließend
immer dann aufgerufen wird, wenn Daten an dem Socket empfangen werden.
Format: | TcpOpen
(nConv, sInetAddress, nPortNumber, sAdviseVar) |
Parameter: | Nconv | "Gesprächsnummer". Die PlusTcp DLL |
| | unterstützt bis
zu 8 verschiedene |
| | Sitzungen.
Jede Sitzung kann einen |
| | aktiven
Socket haben. Gültige
Werte sind |
| | 1–8. |
| sInetAddress | TCP/IP-Adresse
des Serversystems (z. B. |
| | 9.83.85.218
oder "Local Host") |
| nPortNumber | Anschlussnummer
des Serversystems (z. B. – |
| | 23) |
| sAdviseVar | Dies
sollte eine "flüchtige" |
| | spezifizierte
Variable sein, die für
die |
| | IWSP
deklariert ist. Die in dieser |
| | spezifizierten
Variablen spezifizierte |
| | Rückrufroutine
wird immer dann |
| | aufgerufen,
wenn Daten am aktiven Socket |
| | empfangen
werden. |
Ergebnisse: | PLUS_COMMAND_OK | Socket
erfolgreich geöffnet |
| PLUS_COMMAND_ | PlusTcp
DLL nicht installiert. |
| NOT_AVAIL | |
| PLUS_COMMAN_ERRO | R
Allgemeiner Fehler aufgetreten. |
| –100 | Ungültige Parameter übergeben. |
| –101 | Ungültige Gesprächsnummer. |
| –102 | Angeforderte
Gesprächsnummer
wird schon |
| | benutzt. |
-
TcpClose Command (5522)
-
Dieser
Befehl wird immer dann aufgerufen, wenn eine IWSP DLL eine vorher
geöffnete
TCP/IP-Verbindung zu schließen
wünscht.
Format: | TcpClose
(nConv) | |
Parameter: | Nconv | "Gesprächsnummer", |
| | vorher
durch den Aufruf |
| | eines
TcpOpen-Befehls |
| | initialisiert. |
Ergebnisse: | PLUS_COMMAND_OK | Socket
erfolgreich |
| | geschlossen. |
| PLUS_COMMAND_ | PlusTcp
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten.
Die IWSP |
| | DLL
sollte den |
| | TcpGetLastError-Befehl |
| | aufrufen,
um die Anzeige |
| | des
TCP/IP-Fehlers zu |
| | erhalten. |
-
TcpSend Command (5523)
-
Dieser
Befehl wird immer dann aufgerufen, wenn eine IWSP DLL Daten an einen
vorher mit dem TcpOpen-Befehl eingerichteten TCP/IP-Socket senden
möchte.
Format: | TcpSend (nConv,sDataName,
nOffset, nLength) |
Parameter: | Nconv | "Gesprächsnummer" |
| | vorher
durch den Aufruf |
| | eines
TcpOpen-Befehls |
| | initialisiert. |
| SDataName | Name
einer |
| | spezifizierten |
| | Variablen,
die die Daten |
| | enthält, die
an den |
| | Socket
gesendet werden |
| | sollen. |
| Noffset | Offset
im sDataName- |
| | Puffer,
aus dem die |
| | Daten
ausgelesen werden |
| | sollen. |
| Nlength | Länge der
Daten, die |
| | gesendet
werden sollen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTcp
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten.
Die IWSP |
| | DLL
sollte den |
| | TcpGetLastError-Befehl |
| | aufrufen,
um die Anzeige |
| | des
TCP/IP-Fehlers zu |
| | erhalten. |
-
TcpRecv Command (5524)
-
Dieser
Befehl wird immer dann aufgerufen, wenn eine IWSP DLL Daten von
einem vorher mit dem TcpOpen-Befehl eingerichteten Socket lesen
möchte.
Beachte, dass TCP/IP-Daten als ein Datenstrom empfangen werden,
was bedeutet, dass der Puffer mehr als eine Anwendungsnachricht
enthalten kann. Es liegt in der Verantwortung der empfangenden Anwendung,
die Daten zu analysieren, um deren Inhalt zu decodieren.
-
Beachte:
Dieser Befehl blockiert nicht das Lesen des TCP/IP Socket. Falls
keine Daten verfügbar
sind, kehrt er sofort zum Anrufer mit einem Rückkehrcode von 0 zurück.
Format: | TcpRecv (nConv,
sDataName, nOffset, nLength) |
Parameter: | Nconv | Initialisiert
durch |
| | Aufruf
des TcpOpen- |
| | Befehls. |
| SDataName | Name
einer |
| | spezifizierten |
| | Variablen,
die die von |
| | dem
Socket gelesenen |
| | Daten
enthalten soll. |
| Noffset | Offset
in dem sDataName- |
| | Puffer,
in den die Daten |
| | gelesen
werden. |
| Nlength | Maximale
Länge der
zu |
| | lesenden
Daten. |
Ergebnisse: | 0 | Keine
Daten verfügbar. |
| > 0 | Länge der
vom Socket |
| | gelesenen
Daten. |
| PLUS_COMMAND_ | PlusTcp
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten.
Die IWSP |
| | DLL
sollte den |
| | TcpGetLastError-Befehl |
| | geben,
um die Anzeige |
| | des
TCP/IP-Fehlers zu |
| | erhalten. |
-
TcpGetLastError Command (5525)
-
Dieser
Befehl wird immer dann aufgerufen, wenn eine IWSP DLL die spezifische
Fehleranzeige, die während
des Aufrufs von einem der anderen verfügbaren PlusTcp DLL (
109,
5500)
Befehle (siehe oben) aufgetreten ist, zu erhalten wünscht.
Format: | TcpGetLastError
(nConv, sDataName) |
Parameter: | NConv | "Gesprächsnummer", |
| | vorher
durch einen |
| | Aufruf
des TcpOpen- |
| | Befehls
initialisiert. |
| sDataName | Name
einer |
| | spezifizierten |
| | Variablen,
der mit dem |
| | letzten
TCP/IP- |
| | Rückkehrscode
geladen |
| | wird.
Diese Variable |
| | sollte
ein kurzer |
| | Datentyp
ohne Vorzeichen |
| | sein. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTcp
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten. |
-
TcpGetErrorString (5526)
-
Dieser
Befehl ergibt eine Nachrichtenzeichenkette, die eine Textbeschreibung
enthält,
die dem Fehlerrückkehrcode
entspricht, der durch den TcpGetLastError-Befehl erhalten wurde.
Format: | TcpGetErrorString
(nErrNum, sDataName, nMaxBytes) |
Parameter: | NerrNum | Fehlernummer,
die durch |
| | Nutzung
des |
| | TcpGetLastErr-Befehls |
| | zurückgegeben
wurde. |
| SDataName | Name
des Datenelementes, |
| | das
mit der dem nErrNum- |
| | Parameter
entsprechenden |
| | Kette
geladen wurde. |
| NmaxBytes | Maximale
Anzahl von |
| | Bytes,
einschließlich |
| | des
Null-Terminators, |
| | die
in die sDataName- |
| | Variable
kopiert werden |
| | sollen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTcp
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten. |
| –103 | Ungültige Fehlernummer. |
-
Fehlerbehandlung
-
Die
PlusTcp DLL (109, 5500) gibt immer einen negativen
numerischen Rückkehrcode (PLUS_COMMAND_ERROR)
durch die IWSP DLL API zurück,
wenn einer ihrer Anrufe an die Winsock API einen Fehler ergibt.
Das erlaubt der anrufenden DLL (in diesem Falle PlusTapi) auszuwählen, ob
der Fehler entweder programmatisch gehandhabt werden soll oder eine
Fehlernachricht an den Bediener erzeugt wird. Wenn ein Fehler mit
der Winsock API während
der Bearbeitung eines TcpSend-, TcpRecv- oder TcpClose-Befehls erkannt
wird, speichert PlusTcp den Rückkehrcode
des speziellen Fehlers in ihrer internen Variablen, die durch den
TcpGetLastError-Befehl zugänglich
ist. Die anrufende DLL empfängt
nur den PLUS_COMMAND_ERROR-Rückkehrcode
durch die IWSP DLL API. Sie muss dann den TcpGetLastError-Befehl
ausführen,
der die passende Gesprächsnummer
spezifiziert, um den speziellen Fehlercode zu erhalten. Die anrufende
DLL kann dann optional den TcpGetErrorString aufrufen, um eine Fehlernachrichten-Zeichenkette zu erhalten
(aus der aktuell gewählten
Sprachdatei), die der durch den TcpGetLastError-Aufruf erhaltenen
Fehlernummer entspricht. Da die PlusTcp eine Nachrichten-Zeichenkette
für jede
mögliche
Fehlerbedingung spezifiziert, brauchen die anrufenden DLL keine äquivalenten
Zeichenketten zu spezifizieren. Der Kunde kann den Textinhalt dieser
Zeichenketten durch die Benutzung des Hilfsprogramms IWSP Define
Language erhöhen.
Beachte, dass der TcpOpen-Befehl genauere Rückkehrcodes zurückgibt,
da diese Fehler auftreten würden,
bevor ein TCP/IP-Gespräch
mit der Winsock DLL hergestellt werden kann.
-
Falls
ein unerwarteter TCP/IP-Fehler auftritt, was zur Beendigung einer
aktiven Sitzung führt,
wird die PlusTcp DLL (109, 5500) nicht versuchen,
irgendwelche erneuten Versuche auszuführen, um die Sitzung wiederherzustellen.
Nachfolgende Befehlsaufrufe mit dem betroffenen Gespräch (Socket)
werden als Antwort Fehlerzustände
erzeugen. Die anrufende DLL kann dann den Fehler über die
Mensch-Maschine-Schnittstelle melden.
-
PlusTapi DLL (6) (110, 6600)
-
Die
PlusTapi DLL spezifiziert die Befehle und Datenelemente zur IWSP-Plattform,
was es einem DA-Bediener erlaubt, mit der JavaPhone-Anwendung zu
kommunizieren (105, 4400) und die zugehörigen Audio-
und Anruf-Steuerungsoperationen auszuführen. Die von der PlusTapi
DLL (110, 6600) spezifizierten Befehle unterstützen die
Benutzung von IWSP Softkeys oder DISP Makro Keys zum Aufrufen der
Operationen, die die verlangte Nachrichtenübermittlung an die JavaPhone-Anwendung
ausführen.
Die PlusTapi DLL (110, 6600) nutzt die PlusTcp
DLL (109, 5500), um die TCP/IP-Nachrichtenübermittlung
an die JavaPhone-Anwendung zu senden und von dort zu empfangen.
-
Die
PlusTapi DLL (110, 6600) stellt auch visuelle
Statusanzeigen an den Bediener bereit (z. B. für Mikrofon stumm). Dies wird
durch Textanzeigen auf der bestehenden "InfoWin DLL" erreicht.
-
Die
PlusTapi DLL (110, 6600) benutzt den PlusTcp DLL
(109, 5500) -Befehl (TcpOpen), um eine lokale Socket-Verbindung
mit der JavaPhone-Anwendung (105, 4400) während des
Startens herzustellen. Wiederholungslogik wird bereitgestellt, um
eine beliebige Startsynchronisation der zwei Anwendungen zu handhaben.
-
Die
PlusTapi-Schnittstelle zur JavaPhone-Anwendung (105, 4400)
wird unabhängig
von der bestehenden DISP-CPG-Schnittstelle behandelt. Jeder mit
der Anrufverarbeitung verbundene Nachrichtenaustausch wird über die
JavaPhone API gesendet und empfangen. Wenn die PlusTapi DLL (110, 6600)
eine Anzeige eines ankommenden Anrufs vom JavaPhone erhält, veranlasst
es die DISP durch Aufruf des PosNewCall-Befehls, einen Anrufbeginn
zu simulieren. In ähnlicher
Weise veranlasst es die DISP durch das Aufrufen des PosCallRelease-Befehls,
eine Beendigung des Anrufs zu simulieren, wenn die PlusTapi DLL
(110, 6600) vom JavaPhone die Anzeige erhält, dass
der Anruf beendet wurde. Diese Befehle erlauben es der DISP, grobe
Bedienerstatistiken zu führen.
Anrufbeendigung wird angeboten, was durch die Ausführung einer "blinden Konferenz"-Operation durch
die JavaPhone API erreicht wird. Wenn die Anrufabschlussoperation
erfolgreich ist, wird der Anrufweiterleiter veranlasst, den Anruf
vom Platz des Bedieners zu entfernen. An diesem Punkt erhält das JavaPhone
und anschließend
PlusTapi eine CallRemoved-Nachricht. PlusTapi führt die passende Benachrichtigung
bei dem "Makro-Event" aus, was die Aktualisierung
des Anrufstatusfensters erlaubt.
-
Mit
jeder Nachricht, die PlusTapi an die JavaPhone-Anwendung sendet,
erhält
es eine entsprechende Antwort, die den Erfolg oder das Scheitern
der Anfrage anzeigt. Diese Antworten werden direkt von der Komponente
erzeugt, die die geforderte Operation tatsächlich ausführt. Falls zum Beispiel PlusTapi
die Nachricht AgentNotReady an die JavaPhone-Anwendung sendet, läuft die Anforderung
bis hin zum "Call
Director Custom Server" (Rufweiterleiter-Kundenserver)
und dann zum "Virtuellen
ACD", bevor sie
zur JavaPhone-Anwendung (105, 4400) und zur PlusTapi
zurückkehrt.
Wenn die Antwort eintrifft, löst
PlusTapi alle Ereignisse aus, die mit der Anforderung verbunden
sind. In dem Beispiel "Agent
nicht bereit" würde das
Makro-Benachrichtigungsereignis "TapiEvenNotReady" ausgelöst werden,
was höchstwahrscheinlich
zu einer Änderung
der Textanzeige in der InfoWin DLL für die visuelle Bestätigung der
Anfrage für
den Bediener führt.
Der Umstand, dass Antworten direkt von der übergeordneten Systemkomponente
erzeugt werden, garantiert, dass die visuelle Anzeige für den Bediener
genau den sich ergebenden Erfolg oder den Fehlschlag der Anforderung
widerspiegelt (im Gegensatz zu JavaPhone, das sofortige Erfolgsmeldungen
erzeugt, die anzeigen, dass die Anforderung nur an die passende
Systemkomponente weitergeleitet wurde).
-
PlusTapi
empfängt
bei jedem an der Arbeitsstation eingehenden Anruf eine Nachricht
CallCreate und eine Nachricht CallRemoved. Dies gilt unabhängig davon
wie der Anruf eingeleitet oder beendet wurde.
-
PlusTapi
DLL (110, 6600) spezifiziert alle Befehle, die
für die
Behandlung sowohl der Audio- als auch der Ruf-Steuerungsschnittstellen, wie sie durch
die JavaPhone-Anwendung definiert sind, verlangt werden. Zu diesen
gehören:
TapiMakeCall
(6621);
TapiHoldCall (6622);
TapiUnholdCall
(6623);
TapiBlindXferCall (6624);
TapiDisconnect
(6625);
TapiBlindConfCall (6626);
TapiRetrieveCall
(6627);
TapiLogon (6628);
TapiLogoff
(6629);
TapiNotReady (6631);
TapiReady
(6632);
TapiSetVolume (6633);
TapiMicGainSet
(6647);
TapiSetProperty (6635);
TapiGetProperty
(6636);
TapiShutDown (6637);
TapiPing
(6638);
-
Die
PlusTapi DLL (110, 6600) spezifiziert auch die
folgenden zusätzlichen
Befehle, die die Benutzung der JavaPhone APIs in einer DA-Bediener-Umgebung
erleichtern sollen:
TapiReadyToggle (6641);
TapiMuteToggle
(6642);
TapiVolumeUp (6643);
TapiVolumeDown
(6644);
TapiMicGainUp (6645);
TapiMicGainDown
(6646);
-
Siehe
den Abschnitt PlusTapi Enumerated Commands für zusätzliche Informationen.
-
Die
PlusTapi DLL (110, 6600) zeigt alle erkannten
Fehler an und nutzt dabei die Standardsteuerelemente von WindowsTM (Dialogfenster, Nachrichtenfenster usw.),
um nicht die Benutzung der PlusTapi DLL (110, 6600)
an die DISP DLL zu binden. Mit anderen Worten, DISP sollte nicht
die Voraussetzung für
die Benutzung von PlusTapi sein. Diese Ausgestaltung bringt es mit
sich, dass, obgleich die durch PlusTapi spezifizierten Befehle numerische
Rückkehrcodes
für die
anrufende DLL oder den anrufenden Makro erzeugen, PlusTapi automatisch
eine Windows Messagebox erstellt, die alle Fehlernachrichten für den Bediener
enthält.
In der Zukunft könnte
das geändert
werden, so dass sich PlusTapi auf die aufrufende DLL verlassen würde, um entweder
eine Fehlermeldung zu erzeugen oder aber den Fehler programmatisch
zu handhaben.
-
PlusTapi Startup
-
Während der
Startphase muss die PlusTapi DLL (110, 6600) die
verlangte Initialisierungsfolge mit der JavaPhone-Anwendung ausführen. Um
mit der JavaPhone-Anwendung zu kommunizieren, muss die PlusTapi DLL
(110, 6600) zuerst eine TCP/IP-Socket-Verbindung einrichten,
indem der PlusTcp DLL-Befehl TcpOpen mit den passenden Parametern
aufgerufen wird. Die TCP/IP-Adresse wird konfiguriert, indem der
Initialisierungsbefehl, der von der PlusTapi DLL (110, 6600)
spezifiziert wird, benutzt wird. Diese TCP/IP-Adresse ist entweder
der spezielle Wert, der dem PC, auf dem die JavaPhone Software installiert
ist, zugeordnet ist, oder die Kette "localhost", die anzeigt, dass JavaPhone auf demselben
PC läuft.
Die PlusTapi DLL (110, 6600) fordert die "Gesprächsnummer" in dem TcpOpen-Befehl
an, der mit der Einstellung des Modus des Hilfsprogramms (siehe
Abschnitt PlusTapi Utility Mode) spezifiziert wurde. Wiederholungslogik
ist zur Herstellung der ersten Socket-Verbindung mit eingeschlossen.
Falls PlusTapi bei der Herstellung einer Socket-Verbindung zur JavaPhone-Anwendung versagt,
würde keines
der PlusTapi-Makro-Ereignisse ausgelöst worden sein, was dazu führt, dass
im Anrufstatusfenster keine anrufbezogenen Symbole angezeigt würden.
-
Nachdem
die Initialisierungsfolge mit dem JavaPhone abgeschlossen ist, fordert
die PlusTapi DLL (110, 6600) eine "DUX-Benachrichtigung" bei der DISP-Anmeldungsoperation
an. Dies führt
dazu, dass PlusTapi immer dann informiert wird, wenn der Bediener
eine erfolgreiche Anmeldungsoperation ausführt. Siehe den nächsten Abschnitt
für zusätzliche
Informationen zur Anmeldung des Bedieners.
-
Beachte:
Der verbleibende Teil der JavaPhone-Initialisierungsfolge, einschließlich der Öffnung der Verbindungen
zum Anrufweiterleiter und zum VoD-Zugang, wird bis zum Zeitpunkt
der Bedieneranmeldungsfolge nicht eingeleitet.
-
Mit
der Beendigung ihrer Start-Logik muss die PlusTapi DLL (110, 6600)
vorbereitet sein, alle ankommenden Anrufe anzunehmen. Dies wird
durch die Nutzung einer "Rückruf"-Routine erreicht.
Diese Rückrufroutine
ist in der spezifizierten flüchtigen
Variablen festgelegt, (TapiReadAvail) ist im Befehl TcpOpen bestimmt. Siehe
den Abschnitt Inbound Call Processing für zusätzliche Informationen.
-
Operator Sign On (7)
-
PlusTapi
verlässt
sich auf das Aufrufen der bestehenden DISP-Anmeldeoperation durch den Bediener als
Mittel, um die ID (d. h. Benutzer-ID) des Bedieners zur Nutzung
bei der Anmeldung beim Anrufweiterleiter zu erhalten. Die Arbeitsstation
ist konfiguriert, um die Eigenschaft der Passwortprüfung der
MAP zu ermöglichen.
Ein Bediener ruft den DISP-Anmeldebildschirm auf und gibt eine gültige Benutzer-ID
und ein Passwort ein. Ist die Anmelde-Prüfung abgeschlossen, führt DISP
eine "DUX-Benachrichtigung" aus, die ihrerseits
PlusTapi informiert, dass die Anmeldung erfolgt ist.
-
Sobald
die Information zur Bedieneranmeldung empfangen wurde, ruft die
PlusTapi DLL (110, 6600) den InitPhone-Befehl
auf, um die Telefonumgebung mit der JavaPhone-Anwendung zu initialisieren
(105, 4400) und die Adresse des "Virtuellen ACD" bereitzustellen.
Die Antwort auf diese Nachricht liefert einen "Telefonhörer", der in allen folgenden Operationen
mit der JavaPhone Anwendung (105, 4400) benutzt
werden muss, so dass das Telefon-Toolkit zwischen unterschiedlichen
Kunden unterscheiden kann.
-
Falls
die InitPhone-Anfrage scheitert, tritt PlusTapi in eine Wiederholungsfolge
ein, die durch die entsprechende Parametereinstellung des Diensteprogramm-Modus
gesteuert wird (siehe PlusTapi Utility Mode). PlusTapi erneuert
die InitPhone-Meldung
für die
bestimmte Dauer, wobei zwischen jedem Versuch eine Sekunde Pause
ist. Falls alle erneuten Versuche scheitern, schließt PlusTapi
auch die vorher geöffnete
TCP/IP Socket-Verbindung
mit der JavaPhone-Anwendung und zeigt dann dem Bediener eine Fehler-Messagebox.
Die Wiederholungsfolge wird erneut gestartet, wenn eine Anmeldefolge
versucht wird.
-
Wenn
die Antwort auf die InitPhone-Meldung an die JavaPhone-Anwendung empfangen
wird, führt PlusTapi
eine der beiden möglichen
Makro-Benachrichtigungen aus:
- 1. TapiEventActive – die Telefonumgebung
ist hergestellt und bereit, Anrufe zu bearbeiten;
- 2. TapiEventInactive – die
Telefonumgebung ist inaktiv (aufgrund des Auftretens eines Fehlers).
-
Diese
Makrorückrufereignisse
erlauben dem Kunden, das Anrufstatusfenster mit Textdaten, die den Status
der Bedienerposition anzeigen, zu aktualisieren.
-
Sollte
eine der beiden Verbindungen zwischen dem JavaPhone und dem Call
Director Custom Server oder dem VoD-Zugang zu irgend einem Zeitpunkt
nach der Startfolge verloren gehen, wird die Nachricht ConnectionStatusChanged
von der JavaPhone-Anwendung (105, 4400) an die
PlusTapi geschickt. PlusTapi führt dann
alle geforderten Benachrichtigungen aus, entweder mit dem Ereignis
TapiEventActive oder mit TapiEventInactive. PlusTapi versucht als
Nächstes,
die Verbindungen wiederherzustellen, indem es seine Wiederholungslogik
benutzt, wie im vorhergehenden Abschnitt beschrieben. Falls die
Verbindungen wiederhergestellt werden, versucht PlusTapi, den Bediener
erneut anzumelden (unter der Annahme, dass jemand während des Ausfalls
angemeldet war). Falls alle neuen Versuche, die Verbindungen herzustellen,
versagen, schließt
PlusTapi den vorher geöffnete
TCP/IP-Socket zur JavaPhone-Anwendung (105, 4400)
und zeigt dann dem Bediener eine Fehler-Messagebox an. Die Wiederholungsfolge
wird immer dann neu gestartet, wenn danach eine Anmeldefolge versucht
wird.
-
Ist
das JavaPhone einmal erfolgreich mit der Meldung InitPhone initialisiert,
fordert PlusTapi zwei der internen Eigenschaften von JavaPhone an:
die
aktuelle Kopfhörerlautstärkeeinstellung
(0–100)
die
aktuelle Mikrofonverstärkungseinstellung
(0–100)
-
Diese
beiden Werte werden in globalen (statischen) Variablen von PlusTapi
gespeichert, da sie in jeder nachfolgenden Verarbeitung der zugehörigen Befehle
benötigt
werden, die zum Erhöhen
oder Verringern dieser Einstellungen benutzt werden. Diese Werte
sind auch als spezifizierte Variable TapiVolumeLevel und TapiMicGainLevel
verfügbar.
-
PlusTapi
versucht als Nächstes,
den Befehl "CalActive" auszuführen, um
festzustellen, ob das Common Logon (das übliche Anmelden) wirksam ist
(die CAL DLL ist installiert). Falls ja, muss PlusTapi die Verwendung
des Befehls TapiLogon blockieren (Zugriff durch den IWSP-Zugangspunkt "DLLCommandExecute") und dadurch einen
Bediener zwingen, das CAL Common Logon zu benutzen, um DA-Anrufe
zu bearbeiten. Falls die CAL DLL nicht installiert ist (d. h. der
Befehl "CalActive" schlägt fehl),
muss PlusTapi eine interne Statusanzeige setzen, die anzeigt, dass
Common Logon nicht wirksam ist.
-
PlusTapi
ruft dann den Befehl AgentLogon der JavaPhone-Anwendung auf. Um
die Bediener-ID, die für
die Anmeldung verwendet wurde, zu erhalten, nutzt PlusTapi die bestehende
DISP API. Die JavaPhone-Anwendung (105, 4400)
führt die
notwendige Nachrichtenübermittlung
mit dem Anrufweiterleiter aus und antwortet schließlich mit
Antwortnachricht AgentLogon an die PlusTapi. Die Antwort AgentLogon
enthält
den Anmeldestatus und, sofern erfolgreich, die "Agent-ID". Diese Agent-ID muss von der PlusTapi
zur Benutzung in anderen Befehlen, die im Folgenden an die JavaPhone-Anwendung
ausgegeben werden, gespeichert werden.
-
Falls
der in der Antwort AgentLogon empfangene Status einen Fehler anzeigt,
erzeugt PlusTapi eine Standard WindowsTM Messagebox,
um dem Bediener die entsprechende Fehlermeldung anzuzeigen.
-
Nachdem
sich der Bediener erfolgreich angemeldet hat, wird der Platz zu
Beginn in den Zustand "nicht bereit" gesetzt. Der Bediener
muss in den Status "bereit" umschalten, bevor
der erste Anruf vom Anrufweiterleiter empfangen werden kann.
-
7 veranschaulicht
eine beispielhafte Nachrichtenfolge einer normalen Bedieneranmeldung.
-
Operator Sign Off (8)
-
Wenn
PlusTapi eine Mitteilung einer Abmeldung von der DISP erhält, erteilt
sie den Befehl AgentLogoff an die JavaPhone-Anwendung. Um eine Abmeldung beim Anrufweiterleiter
einzuleiten, treffen die folgenden Bedingen zu:
Der Bediener
(Agent) muss im Zustand "nicht
bereit" sein. Es
darf kein aktiver Anruf vorliegen.
-
Falls
eine der beiden Bedingungen nicht erfüllt ist, erhält PlusTapi
eine Antwort AgentLogoff mit einem Fehlerzustand. PlusTapi wird
dann anschließend
eine Standard-WindowsTM Messagebox erzeugen,
um dem Bediener die entsprechende Fehlernachricht anzuzeigen. Der
Abmeldevorgang wird dann blockiert, bis der Bediener eine Berichtigung
vornimmt. Beachte, dass, falls ein Anruf aktiv ist, die DISP den
Bediener davon abhalten muss, eine Abmeldung durchzuführen.
-
8 zeigt
eine Beispiel-Nachrichtenfolge eines Abmeldevorgangs, die auftritt,
wenn der Bediener erst die Taste "nicht bereit" drückt,
gefolgt von der Taste "Abmelden
(Sign Off)". Beachte:
Sobald die Bedienerabmeldefolge abgeschlossen ist, hat die JavaPhone-Anwendung
(105, 400) ihre Verbindungen mit dem VoD-Zugang
und dem Anrufweiterleiter beendet.
-
Bediener-Kopfhörer (9)
-
Die
JavaPhone-Anwendung (105, 4400) unterrichtet die
PlusTapi DLL (110, 6600) von jeder Veränderung
des Zustandes des Bediener-Kopfhörers
(angeschlossen oder nicht angeschlossen) durch das Senden der Nachricht
HeadSetStatusChanged. Immer wenn diese Nachricht von der JavaPhone-Anwendung
empfangen wird, aktualisiert PlusTapi ihre spezifizierte Variable
TapiHeadSetStatus.
-
Wenn
die PlusTapi DLL (110, 6600) von der JavaPhone-Anwendung
(105, 4400) informiert wird, dass der Kopfhörer herausgezogen
wurde, führt
sie zuerst eine Prüfung
durch, die sicherstellt, dass kein Anruf aktiv ist, und fordert
dann die DISP auf, eine Abmeldung auszuführen, indem der Befehl PosSignOff
aufgerufen wird. Falls ein Anruf aktiv ist, wenn der Kopfhörer herausgezogen
wird, zeigt PlusTapi dem Bediener eine Fehlermeldung in einer Standard-WindowsTM Messagebox an und startet dann einen Zeitgeber,
um dem Bediener ausreichend Zeit zu geben, den Kopfhörer wieder
einzustöpseln.
Die Länge
dieser Zeitspanne wird im PlusTapi Utility-Modus konfiguriert. Falls
die Zeitspanne ausläuft,
bevor der Kopfhörer
wieder angesteckt ist, beginnt PlusTapi den entsprechenden Nachrichtenaustausch
mit dem JavaPhone, um zu verlangen, dass der aktive Anruf an einen
anderen Bediener übertragen
wird.
-
Sollte
ein Bediener während
eines aktiven Anrufs den Kopfhörer
herausziehen und weggehen, während
ein Ruf aktiv ist, wird die in 9 abgebildete
Beispiel-Nachrichtenfolge erzeugt. Verarbeitung eines ankommenden
Rufes (10)
-
Nachdem
die PlusTapi DLL (110, 6600) die Socket-Verbindung
hergestellt und die JavaPhone-Fernsprechumgebung initialisiert hat,
muss sie vorbereitet sein, ankommende Anrufe anzunehmen. Dies wird
durch die Verwendung einer "Rückrufroutine" erreicht, so wie
in 10 dargestellt. Diese Routine ist in der spezifizierten
flüchtigen
Variablen "TapiReadAvail" festgelegt, die
im Befehl TcpOpen bestimmt ist. Immer wenn Daten an der Socket-Verbindung
mit der JavaPhone-Anwendung empfangen werden, schickt die Rückrufroutine, die
mit der in TapiReadAvail spezifizierten Variablen definiert ist,
eine WM_USER-Nachricht an sich selbst, so dass sie später (in
einem separaten Ausführungs-Thread)
eine TcpRecv-Operation ausführen
kann und die erhaltene(n) Nachricht(en) analysieren kann. Beachte,
dass eine einzelne TcpRecv-Operation mehr als eine Nachricht von
der JavaPhone-Anwendung enthalten kann.
-
Das
Grundformat der Nachricht ist:
Nachrichtenlänge
Nachrichtentyp
Nachrichten-ID
Nachrichtenstatus
Nachrichtendaten
-
Die
Rückrufroutine
muss jeden Puffer mit empfangenen Daten analysieren und die verlangten
Aktionen ausführen.
-
Die
Rückrufroutine
der PlusTapi DLL (110, 6600) handhabt alle ankommenden
Anrufe, die über
das Netzwerk empfangen werden. Jeder DA-Anruf besteht aus mehreren
Nachrichten, die zwischen der PlusTapi- und der JavaPhone-Anwendung
gesendet und empfangen werden. Wie in der Abbildung unten gesehen
werden kann, sendet die JavaPhone-Anwendung (105, 4400)
zwei Nachrichten bei Eintreffen eines jeden Anrufs:
CallCreated
CallStatusChanged
-
Ist
der Anruf einmal hergestellt, führt
PlusTapi alle geforderten Benachrichtigungen mit dem TapiEventCall-Makroereignis aus.
Dies stellt für
das Anrufstatusfenster ein Mittel bereit, um aktualisiert widerzuspiegeln, dass
jetzt ein Anruf aktiv ist. In ähnlicher
Weise führt,
wenn die Nachricht CallRemoved empfangen wird, PlusTapi alle geforderten
Benachrichtigungen mit dem Makroereignis TapiEventNotCall aus. Dies
würde die
Phase für
das Eintreffen eines jeden Anrufs beenden. Die PlusTapi DLL (110, 6600)
enthält
eine Ablaufsteuereinheit, die die erforderliche Nachrichtenübermittlung
verfolgt.
-
Eine
Aktualisierung der Anzeige des Anrufstatusfensters (durch die Makroereignis-Benachrichtigungen)
wird erst ausgeführt,
wenn die gesamte Nachrichtenübermittlung
der Folge des Eintreffens eines Anrufe beendet ist. Falls eine unerwartete
Nachricht empfangen wird (unbekannt oder außerhalb der Folge), wird der Fehler
vermerkt und eine Standard-Windows Messagebox erzeugt, die den Bediener
informiert, dass ein mit der Vermittlungsstellen-Nachrichtenübermittlung
zusammenhängender
Fehler aufgetreten ist.
-
Verarbeitung eines abgehenden Rufes (12)
-
Dieses
Merkmal mag in vielen Ausführungsformen
der Erfindung nicht enthalten sein. Die PlusTapi DLL (110, 6600)
erlaubt dem Bediener, einen abgehenden Anruf zu wählen. Ein
Befehl TapiMakeCall kann mit einer DISP-Makrotaste verbunden sein.
Dieser Befehl erzeugt ein kleines WindowsTM-Dialogfenster,
das es dem Bediener erlaubt, die Zieltelefonnummer einzugeben. Das
Dialogfenster sollte in der Mitte des Bildschirms angeordnet sein
und so wie in der Beispielausführung
in 11 gezeichnet erscheinen.
-
Der
Bediener ist in der Lage, eine Telefonnummer einzugeben, die eine
beliebige Anzahl von Ziffern und eventuell Schrägstriche oder Klammern enthält. Der
Bediener drückt
dann entweder die Standard-Enter-Taste von Windows oder die Alt-D-Tastenkombination,
um die Wählphase
einzuleiten. Die PlusTapi DLL (110, 6600) ruft
dann, um den Anruf einzuleiten, den entsprechenden JavaPhone-Befehl
(MakeCall) auf. Falls der Bediener die Standard-Escape-Taste von
Windows oder die Alt-C-Tastenkombination
drückt,
wird der Dialog beendet, ohne dass die Nummer gewählt wird.
-
Die
JavaPhone-Anwendung (105, 4400) erzeugt die Nachrichtenfolge
so wie in 12 gezeigt. Die PlusTapi DLL
(110, 6600) zeigt im Allgemeinen jeden Fehler,
der erkannt wird, in einer Standard-WindowsTM Messagebox
an.
-
Verarbeitung eines wartenden Rufes (13)
-
Die
PlusTapi DLL (110, 6600) unterstützt, einen
Anruf auf Warten zu setzen und einen Anruf aus der Warteschleife
zu holen. Drei Befehle sind definiert:
TapiHoldCall (6622);
TapiUnholdCall
(6623);
TapiHoldToggle (6620).
-
Der
Befehl TapiHoldCall enthält
einen Parameter, der die Anruf-ID
festlegt. Die normale Verwendung dieses Befehls besteht jedoch darin,
den Parameter frei zu lassen, was den aktiven Anruf auf Warten setzt. Immer
wenn dieser Befehl aufgerufen wird, speichert die PlusTapi DLL (110, 6600)
die Anruf-ID des aktiven Anrufs, so dass sie benutzt werden kann,
wenn der Anruf aus der Warteschleife genommen wird. Dieser Befehl ruft
den entsprechenden JavaPhone-Befehl HoldCall auf. Der Befehl TapiHoldCall
wartet nicht auf die Antwort vom HoldCall-Befehl. Wenn die Antwort
HoldCall asynchron empfangen wird, führt PlusTapi eine Benachrichtigung
mit dem Makroereignis TapiEventHold aus, was eine Aktualisierung
des Anrufstatusfensters erlaubt, das anzeigt, dass der Anruf nun
auf Warten ist. Falls ein Fehler mit der HoldCall-Antwort empfangen
wird, erzeugt PlusTapi eine Windows Messagebox mit der Fehlerinformation
für den
Bediener.
-
Der
Befehl TapiUnholdCall enthält
auch einen Parameter zur Festlegung der Anruf-ID. Die normale Verwendung
dieses Befehls besteht jedoch darin, den Parameter frei zu lassen,
was den zuletzt durch die Benutzung des Befehls TapiHoldCall auf
Warten gesetzten Anruf aus der Warteschleife zurückholt. Dieser Befehl ruft
den entsprechenden JavaPhone-Befehl (UnholdCall) auf, der verlangt,
dass eine Anruf-ID festgelegt ist. Der Befehl TapiUnholdCall wartet
nicht auf die Antwort vom JavaPhone-Befehl UnholdCall. Wird die
Antwort UnholdCall asynchron empfangen, führt PlusTapi DLL (110, 6600)
eine Benachrichtigung mit dem Makroereignis TapiEventUnhold aus,
was eine Aktualisierung des Anrufstatusfensters erlaubt, das anzeigt,
dass der Anruf nicht mehr auf Warten ist. Falls ein Fehler mit der
Antwort UnholdCall empfangen wird, erzeugt PlsuTapi DLL (110, 6600)
eine WindowsTM Messagebox mit einer Fehlerinformation
für den
Bediener.
-
Der
Befehl TapiHoldToggle führt
einen internen Ruf des Befehls TapiHoldCall oder des Befehls TapiUnholdCall
aus, abhängig
vom aktuellen Zustand des Anrufs. Es wird vorausgesetzt, dass der
Kunde eine DISP-Makrotaste oder einen IWSP-Dialogtaste definiert
hat, die diesen Befehl mit einschließen, was es dem Bediener erlaubt,
eine einzelne Taste zu drücken,
die den Anruf auf Warten setzt oder ihn aus der Warteschleife zurückholt.
Durch die Benutzung des Anrufstatusfensters wird der Bediener auch
mit einer visuellen Anzeige des aktuellen Wartestatus versorgt.
-
13 zeigt
eine Beispiel-Nachrichtenfolge, die mit einer Operation "Anruf wartend" und "nicht wartend" befasst ist.
-
Rufweiterleitungen (14)
-
Dieses
Merkmal ist für
ein Produktionssystem optional. PlusTapi (110, 6600)
erlaubt es dem Bediener, einen aktiven Anruf an einer anderen Nummer
zu übertragen.
Der Befehl TapiBlindXferCall akzeptiert einen einzigen Parameter,
der die Zieltelefonnummer bestimmt, zu der der aktive Anruf zu transferieren
ist. Falls der Parameter frei gelassen wird, wird das Dialogfenster
DialNumber, wie in 11 dargestellt, angezeigt. Der
Befehl TapiBlindXferCall ruft den entsprechenden Befehl BlindTransferCall
der JavaPhone-Anwendung auf, der die Anruf-ID des aktiven Anrufs
und die Zieltelefonnummer liefert (entweder aus dem Dialogfenster
oder dem Befehlsparameter).
-
PlusTapi
(110, 6600) führt
den erforderlichen Nachrichtenaustausch mit der JavaPhone-Anwendung (105, 4400)
aus, um den Vorgang des Anruftransfers abzuschließen. 11 zeigt
die Nachrichtenfolge, die mit einem Anruftransfer befasst ist, in
welchem der Bediener eine andere Telefonnummer unter Benutzung des Dialogfensters
Dial Number (11) eingibt.
-
Anrufkonferenz (15)
-
PlusTapi
(110, 6600) erlaubt dem Bediener eine Konferenzschaltung
eines aktiven Anrufs mit einer anderen Partei, einem anderen verfügbaren Bediener
oder einem anderen verfügbaren
Vorgesetzten. Der Befehl TapiBlindConfCall akzeptiert einen einzigen
Parameter, der die Zieltelefonnummer, die in die Konferenzschaltung
mit dem aktiven Anruf einbezogen werden soll, bestimmt. Falls der
Parameter frei gelassen wird, wird das Dialogfenster Dial Number
wie in 11 gezeigt angezeigt. Der Befehl
TapiBlindConfCall ruft den entsprechenden Befehl BlindConferenceCall
der JavaPhone-Anwendung auf, die die Anruf-ID des aktiven Anrufs
und die Zieltelefonnummer (entweder aus dem Dialogfenster oder dem
Befehlsparameter) liefert.
-
PlusTapi
DLL (110, 6600) führt den erforderlichen Nachrichtenaustausch
mit der JavaPhone-Anwendung (105, 4400) aus, um
den Vorgang der Telefonkonferenz abzuschließen. 16 enthält den Nachrichtenfluss
für eine
Telefonkonferenz zwischen dem Anrufer, dem Bediener und einem anderen
Supervisor. Im gezeigten Szenario drückt der Bediener schließlich die
Taste DisconnectCall, um den Anruf abzugeben und lässt den
Supervisor mit dem Anrufer verbunden.
-
Ruf trennen (16)
-
Wenn
sich der Bediener von einem aktiven Anruf trennen muss, wird der
JavaPhone-Befehl DisconnectCall durch eine DISP-Makrotaste oder eine Dialogtaste, die
den PlusTapi-Befehl TapiDisconnect aufrufen, erzeugt.
-
16 zeigt
eine beispielhafte Nachrichtenfolge, die auftreten kann, wenn der
Bediener die Taste "DisconnectCall" drückt.
-
Steuerungen "Bereit/Nicht bereit"
-
Drei
Befehle werden von PlusTapi zur Steuerung des Bereit/Nicht Bereit-Status
der Arbeitsstation spezifiziert:
TapiReady (6632);
TapiNotReady
(6631); und
TapiReadyToggle (6641).
-
Die
ersten beiden Befehle können
separaten DISP-Makrotasten zugeordnet werden. Es wird jedoch angenommen,
dass es der Kunde vorzieht, die Umschaltfunktion zu benutzen, die
mit dem dritten Befehl TapiReadyToggle bereitgestellt wird. Der
Befehl TapiReadyToggle verfolgt den aktuellen Zustand der Position und
ruft intern, in Abhängigkeit
vom aktuellen Zustand der Position, entweder den Befehl TapiReady
oder TapiNotReady auf.
-
Es
gibt drei mögliche
Makroereignisse, die durch die Verwendung der obigen Befehle ausgelöst werden
können:
TapiEventReady
TapiEventNotReady
TapiEventNotReadyPend
-
Falls
ein Anruf aktiv ist, wenn der Bediener verlangt, in den Zustand "Nicht bereit" versetzt zu werden, wird
er erst in den Zustand "Nicht
bereit wartend" versetzt.
Dies verhindert, dass nachfolgende Anrufe an die Position geschickt
werden, jedoch tritt der Bediener erst in den "Nicht bereit"-Zustand ein, wenn der aktive Anruf
beendet ist. Die PlusTapi DLL verfolgt den "Warte" zustand, da das JavaPhone und der Anrufweiterleiter den
Bediener als im Zustand "Nicht
bereit" betrachten,
selbst wenn ein Anruf aktiv ist. Das bedeutet, dass PlusTapi das
Makroereignis TapiEventNotReady immer dann auslösen können muss, wenn ein aktiver
Anruf während
eines "Nicht bereit
wartend"-Zustandes beendet
wird.
-
Die
Befehle TapiReady und TapiNotReady warten auf die Antwort der entsprechenden
JavaPhone-Befehle. Wenn die Antworten nicht gleichzeitig empfangen
werden, führt
PlusTapi eine Benachrichtigung mit dem Makroereignis TapiEventReady
oder mit TapiEventNotReady aus. Dies stellt ein Mittel zur Aktualisierung des Anrufstatusfensters
mit einer Anzeige des Agentenstatus bereit. Falls ein Fehler mit
der JavaPhone-Antwort empfangen wird, erzeugt PlusTapi eine Windows
Messagebox, die die Fehlerinformationen für den Bediener enthält.
-
Lautstärkesteuerung
-
Drei
Befehle werden von PlusTapi (110, 6600) zur Steuerung
der Lautstärke
des Kopfhörers
spezifiziert:
TapiVolumeUp (6643);
TapiVolumeDown
(6644);
TapiVolumeSet (6633).
-
Jeder
dieser Befehle verlangt einen Parameter mit einem Wert von 1 bis
100, der den Wert der Erhöhung
oder Verringerung der Lautstärke
des Kopfhörers
anzeigt. Da die JavaPhone-Anwendung (105, 4400) den
absoluten Wert der Lautstärke
(keine Erhöhung
oder Verringerung) durch eine Eigenschafts-Einstellung festlegt,
verfolgt die PlusTapi DLL (110, 6600) den aktuellen
Wert, der zuletzt mit dem Befehl SetProperty benutzt wurde. Wenn
der Befehl TapiVolumeUp aufgerufen wird, wird der von diesem Befehl
als Parameter gelieferte Wert als Erhöhung des aktuellen Wertes genutzt
(der zuletzt durch den Befehl SetProperty bestimmte Wert). Der erhöhte Wert
wird als aktuelle Lautstärke
des Kopfhörers
gespeichert und als Parameter für
den Befehl SetProperty genutzt. In ähnlicher Weise verringert der
Befehl TapiVolumeDown den aktuellen Wert und übergibt ihn dann als Parameter
an den JavaPhone-Befehl SetProperty.
-
Der
Befehl TapiVolumeSet wird benutzt, um die Lautstärke auf einen absoluten Wert
zu setzen, indem ihm ein Parameter übergeben wird, der den Prozentsatz
der vollen Lautstärke
(0– 100)
anzeigt. Dieser Befehl könnte
benutzt werden, um die Lautstärke
auf eine vorher bestimmte, akzeptable Einstellung zurückzusetzen, was
es dem Bediener erlaubt, eine einzelne Taste zu drücken, nachdem
die Lautstärke
zeitweise manuell angepasst wurde. Er könnte auch in einem Startmakro
als ein Mittel benutzt werden, um die Lautstärke auf einen vordefinierten
Wert zu setzen.
-
PlusTapi
liefert ein Rückrufmakroereignis,
das es dem Nutzer erlaubt, das Anrufstatusfenster zu konfigurieren,
so dass es ein einzelnes InfoWin-Feld enthält, das den numerischen Wert
der Lautstärkeeinstellung (0–100) anzeigt.
-
Mikrofon-Verstärkungssteuerung
-
Vier
Befehle werden von PlusTapi DLL (110, 6600) zur
Steuerung der Mikrofonverstärkung
spezifiziert:
TapiMicGainUp (6645);
TapiMicGainDown
(6646);
TapiMicGainSet (6647);
TapiMuteToggle
(6642);
-
Jeder
dieser Befehle verlangt einen Parameter mit einem Wert von 1 bis
100, der den Wert der Erhöhung
oder Verringerung der Mikrofonverstärkung (der Lautstärke, die
der Kunde hört)
anzeigt. Da die JavaPhone-Anwendung den absoluten Wert (nicht eine
Erhöhung
oder Verringerung) der Mikrofonverstärkung mit dem Befehl SetProperty
einstellt, verfolgt die PlusTapi DLL (110, 6600)
die aktuelle Einstellung, die zuletzt mit dem Befehl SetProperty
genutzt wurde. Wenn der Befehl TapiMicGainUp aufgerufen wird, wird
der als Parameter gelieferte Wert dieses Befehls als Erhöhung des
aktuellen Wertes (der Wert, der zuletzt mit dem Befehl SetProperty
bestimmt wurde) genutzt. Der erhöhte
Wert wird als aktueller Mikrofonverstärkungswert gespeichert und
als Parameter für
den Befehl SetProperty benutzt. In ähnlicher Weise verringert der
Befehl TapiMicGainDown den aktuellen Wert und übergibt ihn dann als Parameter
an den JavaPhone-Befehl SetProperty.
-
Der
Befehl TapiMicGainSet wird benutzt, um die Mikrofonverstärkung auf
einen absoluten Wert zu setzen, indem ihm ein Parameter, der den
Prozentsatz der vollen Verstärkung
(0–100)
anzeigt, übergeben
wird. Dieser Befehl könnte
benutzt werden, um die Mikrofonverstärkung auf ein vorbestimmtes,
akzeptables Intervall zurückzusetzen,
was es dem Bediener erlaubt, eine einzelne Taste zu drücken, nachdem
er die Verstärkung zeitweise
manuell angepasst hat.
-
Der
Befehl TapiMuteToggle fungiert als eine Mikrofon-Stumm-Umschaltfunktion.
Falls die aktuelle Mikrofonverstärkungs-Einstellung nicht
null ist, setzt dieser Befehl die Mikrofonverstärkung auf null (d. h. das Mikrofon
stummschalten) und speichert die vorherige Einstellung. Falls die
aktuelle Mikrofoneinstellung null ist, stellt dieser Befehl die
vorherige Einstellung wieder her (d. h. schaltet das Mikrofon zu).
-
PlusTapi
liefert auch ein Rückrufmakroereignis,
das es dem Nutzer erlaubt, das Anrufstatusfenster so zu konfigurieren,
dass es ein einziges InfoWin-Feld enthält, das den numerischen Wert
der Verstärkungseinstellung
(0–100)
anzeigt.
-
Einstellungen von Eigenschaften
-
Die
JavaPhone-Anwendung (
105,
4400) enthält eine
Menge von "Eigenschaften", auf die zugegriffen werden
kann oder die verändert
werden können.
Die Werte der Eigenschaften sind in der folgenden Tabelle dargestellt: Tabelle
1: Einstellungen von Eigenschaften
Eigenschaftsname | Eigenschaftswerte |
HoldPlayFile | Ein
Wave-File-Name (z. B. – |
| "c;\iws\holdmusic.wav" |
AudioDevice | ShelCad
SoundCard |
AudioMode | Kopfhörer |
| Vollduplex |
| HalbduplexAuto |
| HalbduplexMan |
ComPort | 1 |
| 2 |
| 3 |
| 4 |
Gateway
Adress | Die
Standard-PSTN-Zugangsadresse |
AudioCoder | G711AL |
| G711ML |
| G723 |
| GSM |
| AUTO |
ConncetionType | DialUp
LAN |
Volume | 1–100 |
MicGain | 1–100 |
-
PlusTapi
spezifiziert zwei Befehle:
TapiSetProperty (6635);
TapiGetProperty
(6636).
-
Der
Befehl TapiGetProperty (6635) kann benutzt werden, um eine
oder zwei verfügbare
Eigenschaften auszuwählen
und deren Wert zu ändern.
Der Befehl TapiGetProperty (6636) ruft die genannte Eigenschaft
ab und zeigt sie in einer Standard WindowsTM Messagebox
an. Diese Befehle rufen die entsprechenden Befehle SetProperty und
GetProperty der JavaPhone-Anwendung auf. Es wird nicht angenommen,
dass einer der beiden Befehle für
die Verwendung durch den Bediener benötigt wird, sie werden aber
für potenzielle
administrative oder diagnostische Zwecke bereitgestellt.
-
Ausschalten
-
Die
PlusTapi DLL (110, 6600) Umsetzung der IWSP "DLLTerminate" API-Routine ruft
den Befehl ShutDown für
die JavaPhone-Anwendung (105, 4400) auf, so dass
sie ihre verlangte Beendigung über
die TAPI-Schnittstelle ausführen
kann.
-
Die
PlusTapi DLL (110, 6600) kann die Nachricht ShutDown
auch unaufgefordert auf Grund eines externen Ereignisses (vom Anrufweiterleiter,
VoD-Zugang usw.) von JavaPhone empfangen. In diesem Fall löscht die
PlusTapi DLL (110, 6600) den internen Zustand
(nimmt an, alle Anrufe wurden beendet und der Bediener ist schon
abgemeldet) und leitet eine DISP-Abmeldung ein.
-
In PlusTapi Spezifizierte Befehle (6602)
-
Die
folgenden Abschnitte liefern die Formate für jeden der vorgeschlagenen
Befehle, die von der PlusTapi DLL (110, 6600)
spezifiziert werden. Zusätzliche
Informationen über
die entsprechenden JavaPhone-Befehle können in der JTAPI-Standardspezifikation
gefunden werden.
-
TapiMakeCall (6621)
-
Dieses
Merkmal ist in dem Produktionsystem optional. Dieser Befehl wird
benutzt, um einen Telefonanruf zu der verlangten Adresse herzustellen.
Wenn nur eine Telefonnummer angegeben ist, wird die Standard-Zugangsadresse
benutzt. Dieser Befehl erzeugt ein Windows Dialogfenster, wie in
dem Abschnitt Verarbeitung eines abgehenden Rufes beschrieben. Dieser
Befehl ruft den Befehl MakeCall von JavaPhone auf, sobald der Bediener
die Zieltelefonnummer eingibt.
Format: | TapiMakeCall
(sPhoneNumber) |
Parameter: | sPhoneNumber | Die
zu wählende |
| | Telefonnummer.
Falls der |
| | Parameter
frei gelassen |
| | wird,
wird ein WindowsTM |
| | Dialogfenster
angezeigt |
| | (siehe
Abschnitt Dial |
| | the
Number Dialog). |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiHoldCall (6622)
-
Dieser
Befehl setzt einen Anruf auf Warten. Wenn keine Anruf-ID bestimmt
ist (normale Nutzung), wird der aktive Anruf auf Warten gesetzt.
Falls eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung
empfangen wird, führt
PlusTapi jede notwendige Benachrichtigung mit dem Makroereignis
TapiEventHold aus.
Format: | TapiHoldCall
(sCallID) |
Parameter: | sCallID | Die
festgelegte Anruf- |
| | ID,
die auf Warten |
| | gesetzt
werden soll. |
| | Dieser
Parameter wäre |
| | normalerweise
frei, um |
| | den
aktuellen Anruf auf |
| | Warten
zu legen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiUnholdCall (6623)
-
Dieser
Befehl holt den bestimmten Anruf aus der Warteposition zurück. Wenn
keine Anruf-ID (normale Nutzung) geliefert wird, wird der zuletzt
auf Warten gesetzte Anruf zurückgeholt.
Wenn eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt
PlusTapi alle notwendigen Benachrichtigungen mit dem Nutzerausgang
TapiEventUnhold aus.
Format: | TapiUnholdCall
(sCallID) |
Parameter: | sCallID | Die
Anruf-ID, die aus |
| | der
Warteposition geholt |
| | werden
soll. Dieser |
| | Parameter
wäre |
| | normalerweise
frei, um |
| | den
zuletzt mit dem |
| | Befehl
TapiHoldCall auf |
| | Warten
gesetzten Anruf |
| | zurückzuholen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiHoldToggle (6620)
-
Dieser
Befehl schaltet den Wartezustand des spezifizierten Anrufs um. Wenn
keine Anruf-ID geliefert ist (normale Nutzung), wird der zuletzt
auf Warten gesetzte Anruf aus der Warteposition zurückgeholt
oder der aktive Anruf auf Warten gesetzt. Wenn eine erfolgreiche
Antwort auf diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt
PlusTapi alle notwendigen Benachrichtigungen entweder mit dem Makroereignis
TapiEventHold oder mit TapiEventUnhold aus.
Format: | TapiHoldToggle
(sCallID) |
Parameter: | sCallID | Die
Anruf-ID, die auf |
| | Warten
gesetzt oder |
| | zurückgeholt
werden |
| | sollte.
Dieser Parameter |
| | wäre normalerweise
frei, |
| | um
den aktiven Anruf auf |
| | Warten
zu lassen oder |
| | den
zuletzt auf Warten |
| | gesetzten
Anruf |
| | zurückzuholen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiBlindXferCall (6624)
-
Beachte:
Dieses Merkmal wird in vielen Ausführungsformen der Erfindung
nicht enthalten sein. Dieser Befehl wird benutzt, um einen Anruf
zu einer anderen Partei (die noch nicht verbunden ist) zu transferieren
und ruft den nächsten
Anruf in der Warteschlange ab. Dieser Befehl kann auch zum Übergehen
des Anrufs an einen anderen verfügbaren
Bediener oder einen Supervisor verwendet werden, indem der Parameter
sPhoneNumber wie folgt eingestellt wird:
CODE=OPERATOR
CODE=SUPERVISOR
Format: | TapiBlindXferCall(sPhoneNumber) |
Parameter: | sPhoneNumber | Die
zu wählende |
| | Telefonnummer.
Falls |
| | dieser
Parameter frei |
| | ist,
wird ein WindowsTM |
| | Dialogfenster
angezeigt |
| | (siehe
den Abschnitt |
| | Dial
Number Dialog) |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiDisconnect (6625)
-
Dieser
Befehl trennt den gekennzeichneten Anruf oder den aktiven Anruf,
falls keiner festgelegt ist.
Format: | TapiDisconnect
(sCallID) |
Parameter: | sCallID | Die
zu trennende Anruf- |
| | ID.
Falls dieser |
| | Parameter
frei ist, wird |
| | der
aktuell aktive Anruf |
| | getrennt. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
| –3 | Kein
aktiver Anruf oder |
| | ungültige Anruf-ID. |
-
TapiBlindConfCall (6626)
-
Dieser
Befehl leitet eine Konferenzschaltung mit einer dritten Partei ein.
Dieser Befehl kann auch zum Übergeben
des Anrufs an einen anderen verfügbaren
Bediener oder an einen Supervisor benutzt werden, indem der Parameter
sPhoneNumber auf einen der folgenden Werte eingestellt wird:
CODE=OPERATOR
CODE=SUPERVISOR
Format: | TapiBlindConfCall
(sPhoneNumber) |
Parameter: | sPhoneNumber | Diese
Telefonnummer muss |
| | gewählt werden.
Falls |
| | dieser
Parameter frei |
| | ist,
wird eine WindowsTM |
| | Dialogbox
angezeigt |
| | (siehe
den Abschnitt |
| | Dial
Number Dialog) |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
| –3 | Kein
aktiver Anruf oder |
| | ungültige Anruf-ID. |
-
TapiDTMF (6640)
-
Dieser
Befehl erzeugt ein DTMF-(Dual Tone Multi-Frequency)Signal über die
JavaPhone-Anwendung. Dieser Befehl kann verwendet werden, um einzelne
oder mehrere Signale (für
mehrere Ziffern) zu senden. Um zum Beispiel einzelne Signale zu
senden, könnten
separate Befehle einer numerischen Tastatur zugeordnet werden (z.
B. würde
die numerische Tastenziffer 7 den Befehl TapiDTMF (7) aufrufen),
was zur Erzeugung einer einzelnen DTMF für Nummer 7 führen würde.
Format: | TapiDTMF
(sDigits) |
Parameter: | SDigits | Eine
oder mehr Ziffern, |
| | für die DTMF-Signale |
| | erzeugt
werden sollen. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR –3 | aufgetreten. |
| | Kein
aktiver Anruf. |
-
TapiLogon (6628)
-
PlusTapi
speichert die "Agenten-ID", die vom JavaPhone
mit einer erfolgreichen Anmeldung zurückkommt, zur Verwendung mit
den folgenden Befehlen, die diesen Parameter verlangen.
Format: | TapiLogon
(sUserID, sPassword) |
Parameter: | sUserID | Die
Nutzer-ID des |
| | Bedieners |
| sPassword | Das
Passwort des |
| | Bedieners. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiLogoff (6629)
-
Beachte,
dass die "Agenten-ID", die beim Aufrufen
der entsprechenden Parameter dieses Befehls benutzt wird, entweder
bereitgestellt werden kann (höchstwahrscheinlich
von einer anderen DLL oder einer einzelnen Anwendung) oder dass,
falls sie frei gelassen wird, PlusTapi die Agenten-ID, die mit der
letzten erfolgreichen Anmeldung zurückgegeben wurde, bereitstellt.
Format: | TapiLogoff
(sAgentID) |
Parameter: | sAgentID | Die
Agenten-ID des |
| | Bedieners,
zurückgegeben |
| | mit
einer vorherigen |
| | Anmeldung.
Falls dieser |
| | Parameter
frei gelassen |
| | wird,
nutzt PlusTapi die |
| | Agenten-ID,
die intern |
| | von
der letzten |
| | erfolgreichen
Anmeldung |
| | gespeichert
ist. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten. |
-
TapiReadyToggle (6641)
-
PlusTapi
DLL (
110,
6600) verfolgt den aktuellen Status
des Agenten (entweder "bereit" oder "nicht bereit"). Das Aufrufen dieses
Befehls schaltet die Position von ihrem aktuellen Zustand aus um.
Wenn eine erfolgreiche Antwort von der JavaPhone-Anwendung (
105,
4400)
für diese
Nachricht empfangen wird, führt
die PlusTapi DLL (
110,
6600) alle nötigen Benachrichtigungen
entweder mit dem Makroereignis TapiEventReady, mit TapiEventNotReady
oder mit TapiEventNotReadyPend durch.
Format: | TapiReadyToggle
(sAgentID) |
Parameter: | sAgentID | Die
Agenten-ID des |
| | Bedieners, |
| | zurückgekommen
mit einer |
| | vorherigen
Anmeldung. |
| | Falls
dieser Parameter |
| | frei
gelassen ist, |
| | verwendet
die PlusTapi |
| | DLL
(110, 6600) die |
| | intern
von der letzten |
| | erfolgreichen
Anmeldung |
| | gespeicherte
Agenten-ID. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiNotReady (6631)
-
Das
Aufrufen dieses Befehls ändert
den aktuellen Zustand des Agenten auf "nicht bereit". Wenn eine erfolgreiche Antwort auf
diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt PlusTapi
DLL (
110,
6600) alle erforderlichen Benachrichtigungen
mit dem Makroereignis TapiEventNotReady (falls kein Anruf aktiv
ist) oder mit TapiEventNotReadyPend (falls ein Anruf aktiv ist)
aus.
Format: | TapiNotReady
(sAgentID) |
Parameter: | sAgentID | Die
Agenten-ID des |
| | Bedieners, |
| | zurückgekommen
mit einer |
| | vorherigen
Anmeldung. |
| | Falls
dieser Parameter |
| | frei
gelassen ist, |
| | verwendet
PlusTapi die |
| | intern
von der letzten |
| | erfolgreichen
Anmeldung |
| | Agenten-ID.
gespeicherte |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiReady (6632)
-
Das
Aufrufen dieses Befehls ändert
den aktuellen Zustand des Agenten zu "bereit". Wenn eine erfolgreiche Antwort auf
diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt
PlusTapi DLL (
110,
6600) alle erforderlichen Benachrichtigungen
mit dem Makroereignis TapiEventReady aus.
Format: | TapiReady
(sAgentID) |
Parameter: | sAgentID | Die
Agenten-ID des |
| | Bedieners, |
| | zurückgekommen
mit einer |
| | vorherigen
Anmeldung. |
| | Falls
dieser Parameter |
| | frei
gelassen ist, |
| | verwendet
PlusTapi die |
| | intern
von der letzten |
| | erfolgreichen
Anmeldung |
| | gespeicherte
Agenten-ID. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiVolumeUp (6643)
-
Dieser
Befehl erhöht
den Kopfhörerlautstärkepegel
um einen bestimmten Wert. Falls zum Beispiel die aktuelle Lautstärke auf
den Wert 60 (60% der Maximallautstärke) eingestellt ist, würde der
Befehl TapiVolumeUp (10) die aktuelle Lautstärkeeinstellung auf 70 (70%
der Maximallautstärke) ändern. Wenn
eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
erhalten wird, führt
die PlusTapi DLL (
110,
6600) alle erforderlichen
Benachrichtigung mit dem Makroereignis TapiEventVolChange aus. Ein Wert
für den
Parameter sPercentagePoints, der die aktuelle Einstellung auf einen
Wert größer als
100 erhöhen würde, setzt
die Lautstärke
auf 100%.
Format: | TapiVolumeUp
(sPercentagePoints) |
Parameter: | sPercentagePoints | Die
Anzahl der |
| | Prozentpunkte
(1–100), |
| | um
die die |
| | Kopfhörerlautstärke |
| | erhöht werden
sollte. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiVolumeDown (6644)
-
Dieser
Befehl verringert den Kopfhörerlautstärkepegel
um den spezifizierten Wert. Wenn beispielsweise die aktuelle Lautstärke auf
den Wert von 60 (60% der maximalen Lautstärke) gesetzt ist, würde der
Befehl TapiVolumeDown (10) die aktuelle Lautstärkeeinstellung auf 50 (50%
vom Maximum) ändern.
Wenn eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt
PlusTapi alle erforderlichen Benachrichtigungen mit dem Makroereignis
TapiEventVolCchange aus. Ein Wert für den Parameter sPercentagePoints,
der die aktuelle Einstellung auf einen Wert verringern würde, der
kleiner als 0 ist, setzt die Lautstärke auf 0%.
Format: | TapiVolumeDown
(sPercentagePoints) |
Parameter: | sPercentagePoints | Die
Zahl der |
| | Prozentpunkte
(1–100), |
| | um
die die |
| | Kopfhörerlautstärke |
| | verringert
werden |
| | sollte. |
Ergebnisse: | PLUS_COMMAND_NOT_AVAIL | PlusTapi
DLL nicht |
| | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiVolumeSet (6633)
-
Dieser
Befehl setzt den Kopfhörerlautstärkepegel
auf den spezifizierten Prozentsatz der vollen Lautstärke. Wenn
beispielsweise die aktuelle Lautstärke auf den Wert von 80 (80%
der maximalen Lautstärke)
gesetzt ist, würde
der Befehl TapiVolumeSet (50) die aktuelle Lautstärkeeinstellung
auf 50 (50% vom Maximum) ändern.
Wenn eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung
(
105,
4400) empfangen wird, führt PlusTapi alle erforderlichen
Benachrichtigungen mit dem Makroereignis TapiEventVolCchange aus.
Format: | TapiVolumeSet
(sPercentage) |
Parameter: | sPercentage | Der
Prozentsatz (0–100) |
| | der
maximalen |
| | Lautstärke, auf
den die |
| | Kopfhörerlautstärke |
| | gesetzt
werden sollte. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiMicGainUp (6645)
-
Dieser
Befehl erhöht
den Mikrofonverstärkungsfaktor
um den spezifizierten Wert. Wenn beispielsweise die aktuelle Mikrofonverstärkung auf
den Wert von 60 (60% der maximalen Verstärkung) gesetzt ist, würde der
Befehl TapiMicGainUp (10) die aktuelle Verstärkungseinstellung auf 70 (70%
vom Maximum) ändern. Wenn
eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung
(
105,
4400) empfangen wird, führt PlusTapi alle erforderlichen
Benachrichtigungen mit dem Makroereignis TapiEventGainCchange aus.
Ein Wert für
den Parameter sPercentagePoints, der die aktuelle Einstellung auf
einen Wert erhöhen
würde,
der größer als
100 ist, setzt die Mikrofonverstärkung
auf 100%.
Format: | TapiMicGainU(
sPercentagePoints) |
| sPercentagePoints | Die
Anzahl der |
| | Prozentpunkte
(1–100), |
| | um
die die |
| | Mikrofonverstärkung |
| | erhöht werden
sollte. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_NOT_AVAIL | PlusTapi
DLL nicht |
| | installiert. |
| PLUS_COMMAND_ERROR | Allgemeiner
Fehler |
| | aufgetreten. |
-
TapiMicGainDown (6646)
-
Dieser
Befehl verringert den Mikrofonverstärkungspegel um den spezifizierten
Wert. Falls zum Beispiel die aktuelle Mikrofonverstärkung auf
den Wert 60 (60% der maximalen Verstärkung) eingestellt ist, würde der
Befehl TapiMicGainDown (10) die aktuelle Verstärkungseinstellung auf 50 (50%
des Maximums) ändern. Wenn
eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung
(
105,
4400) empfangen wird, führt PlusTapi alle erforderlichen
Benachrichtigungen mit dem Makroereignis TapiEventGainChange aus. Ein
Wert für
den Parameter sPercentagePoints, der die aktuelle Einstellung auf
einen Wert kleiner als 0 verringern würde, stellt die Mikrofonverstärkung auf
0% ein.
Format: | TapiMicGainDown
(sPercentagePoints) |
Parameter: | sPercentagePoints | Der
Prozentsatz, um den |
| | die
Mikrofonverstärkung |
| | abgesenkt
werden soll. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiMicGainSet (6647)
-
Dieser
Befehl stellt den Mikrofonverstärkungsfaktor
auf einen bestimmten Prozentsatz der Maximalverstärkung ein.
Falls zum Beispiel die aktuelle Mikrofonverstärkung auf den Wert 80 (80%
Maximalverstärkung)
eingestellt ist, würde
der Befehl TapiMicGainSet (50) die aktuelle Verstärkungseinstellung
auf 50 (50% des Maximums) ändern.
Wenn eine erfolgreiche Antwort auf diese Nachricht von der JavaPhone-Anwendung (
105,
4400)
empfangen wird, führt
PlusTapi alle erforderlichen Benachrichtigungen mit dem Makroereignis
TapiEventGainChange aus.
Format: | TapiMicGainSet
(sPercentage) |
Parameter: | sPercentage | Der
Prozentsatz (0–100) |
| | des
Maximums, auf den |
| | die
Mikrofonverstärkung |
| | eingestellt
werden soll. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiMuteToggle (6642)
-
Dieser
Befehl ist eine Umschaltfunktion "Mikrofon stumm".
-
PlusTapi
DLL (
110,
6600) prüft die aktuelle Einstellung
der Mikrofonverstärkung
(intern gespeichert). Falls die Verstärkung aktuell auf einen Wert
ungleich null gesetzt ist, speichert PlusTapi die aktuelle Einstellung und
setzt dann die Mikrofonverstärkung
auf null (d. h., das Mikrofon ist stummgeschaltet). Falls die Verstärkung aktuell
null ist, stellt PlusTapi die vorher gespeicherte Einstellung wieder
her. Wenn eine erfolgreiche Antwort auf diese Nachricht von der
JavaPhone-Anwendung
(
105,
4400) empfangen wird, führt PlusTapi alle erforderlichen
Benachrichtigungen mit den Makroereignissen TapiEventMute oder TapiEventUnmute
aus.
Format: | TapiMute_Toggle
() | |
Parameter: | Keiner | |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiSetProperty (6635)
-
Dieser
Befehl wird für
das Ändern
von einer der verfügbaren
Eigenschaften in der JavaPhone-Anwendung benutzt. Für zusätzliche
Informationen über
verfügbare
Eigenschaften und deren mögliche
Werte siehe Tabelle mit den Einstellungen der Eigenschaften
17.
Beachte, dass alle Eigenschaftsnamen und -werte im Zeichenkettenformat
angegeben sind.
Format: | TapiSetProperty
(sPropertyName, sPropertyValue) |
Parameter: | sPropertyName | Der
Name der Eigenschaft |
| | der
JavaPhone-Anwendung, |
| | die
aktualisiert werden |
| | soll. |
| sPropertyValue | Der
neue Wert der |
| | Eigenschaft. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten |
-
TapiGetProperty (6636)
-
Dieser
Befehl ist vorrangig für
diagnostische Zwecke gedacht. Er fordert die bestimmte Eigenschaft der
JavaPhone-Anwendung (
105,
4400) an und zeigt sie
in einer Standard Windows Messagebox.
Format: | TapiGetProperty
(sPropertyName) |
Parameter: | sPropertyName | Der
Name der Eigenschaft |
| | der
JavaPhone-Anwendung, |
| | auf
die zugegriffen und |
| | die
in einer WindowsTM |
| | Messagebox
angezeigt |
| | werden
soll. |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiShutDown (6637)
-
Dieser
Befehl kann aufgerufen werden, um die JavaPhone-Anwendung (
105,
4400)
zum Beenden aufzufordern. Beachte, dass dieser Befehl bei einer
normalen Operation der Arbeitsstation nicht gebraucht wird, da die
PlusTapi DLL (
110,
6600) die JavaPhone-Anwendung beendet,
wenn DISP/IWSP schließt.
Format: | TapiShutDown
() | |
Parameter: | Keiner | |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiPing (6638)
-
Dieser
Diagnosebefehl kann benutzt werden, um den Nachrichtenpfad zwischen
der Client-Anwendung und dem Anrufweiterleiter durch das Senden
einer Testnachricht zu testen. PlusTapi sendet die entsprechende
Nachricht an die JavaPhone-Anwendung. Wenn die Antwort empfangen
wird, erzeugt PlusTApi eine Standard Windows Messagebox, die den
Nutzer informiert, dass die Ping-Antwort empfangen wurde.
Format: | TapiPing
() | |
Parameter: | Keiner | |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
TapiDisplayErrs (6648)
-
Dieser
Befehl wird benutzt, um den Operationsmodus der PlusTapi DLL (
110,
6600)
einzustellen. Wenn der Parameter sParm auf "YES" eingestellt
ist, erzeugt PlusTapi DLL (
110,
6600) eine Windows
TM Messagebox, die immer dann eine informative
Nachricht enthält,
wenn ein Fehler während
der Ausführung
einer der verfügbaren
PlusTapi-Befehle erkannt wird. Wenn der Parameter sParm auf "NO" eingestellt ist,
zeigt PlusTapi keine Messagebox an, meldet aber stattdessen jeden
Fehler über
die IWSP API zurück.
Die Standardeinstellung nach dem Start ist, dem Bediener Fehler
anzuzeigen.
Format: | TapiDisplayErrs
(sParm) | |
Parameter: | sParm | sParm
wird auf einen von |
| | zwei
möglichen
Werten |
| | eingestellt: |
| | YES
(JA) |
| | NO
(NEIN) |
Ergebnisse: | PLUS_COMMAND_OK | Befehl
erfolgreich |
| | ausgeführt. |
| PLUS_COMMAND_ | PlusTapi
DLL nicht |
| NOT_AVAIL | installiert. |
| PLUS_COMMAND_ | Allgemeiner
Fehler |
| ERROR | aufgetreten. |
-
In PlusTapi spezifizierte
Datenvariable
-
Die
PlusTapi DLL (110, 6600) spezifiziert Variable
für die
IWSP-Plattform auf,
die folgende Audio- und Anrufstatuswerte enthalten:
TapiPositionStatus
TapiLogonStatus
TapiAgentID
TapiCallID
TapiCallStatus
TapiPartyStatus
TapiVolumeLevel
TapiMicGainLevel
TapiHeadSetStatus
-
Jede
der oben spezifizierten Variablen unterstützt auch die Erzeugung der
DLL- und DDE-Benachrichtigungen, wenn immer ihr Wert geändert wird.
-
Die
PlusTapi DLL (110, 6600) gibt auch zwei Variable
an, die für
die Aufzeichnung von Fehlerbedingungen benutzt werden:
TapiLastErrCode
TapiLastCmdErr.
-
Die
Beschreibungen dieser Variablen werden in den folgenden Abschnitten
angegeben.
-
TapiPositionStatus
-
Dieses
Datenelement enthält
den Status des Platzes wie folgt:
0 – außer Betrieb (nicht angemeldet)
1 – Platz
bereit, Anrufe anzunehmen
2 – Platz nicht bereit, Anrufe
anzunehmen
3 – Platz
hat einen aktiven Anruf
-
Ein
Wert von 0 zeigt an, dass kein Bediener angemeldet ist. Alle anderen
Zustände
bedeuten, dass ein Bediener erfolgreich angemeldet ist.
Format:
eine mit NULL beendete ASCII-Zeichenkette (1 Zeichen plus beendende
NULL)
-
TapiLogonStatus
-
Dieses
Datenelement enthält
die Zeichenkette, die von der JavaPhone-Anwendung (105, 4400)
und dem Anrufweiterleiter in der Antwortnachricht AgentLogon zurückgeschickt
wurde.
Format: eine mit NULL beendete ASCII-Zeichenkette
-
TapiAgentID
-
Dieses
Datenelement enthält
die aktuelle Agenten-ID, die von der JavaPhone-Anwendung (105, 4400) nach
einer erfolgreichen Anmeldung beim Anrufweiterleiter zurückgesandt
wird. Falls der Platz zur Zeit nicht angemeldet ist, ist die Variable
NULL.
Format: eine mit NULL beendete ASCII-Zeichenkette
-
TapiCallID
-
Dieses
Datenelement enthält
die aktuelle Anruf-ID, die von der JavaPhone-Anwendung empfangen wurde.
Falls kein Anruf aktiv ist, ist die Variable NULL.
Format:
eine mit NULL beendete ASCII-Zeichenkette
-
TapiCallStatus
-
Dieses
Datenelement enthält
den Status des aktuellen Anrufs in der JavaPhone-Anwendung. Es enthält eine
der folgenden spezifizierten Zeichenketten oder NULL, falls kein
Anruf aktiv ist:
EINGELEITET
KLINGELND
SPRECHEND
WARTEND
WÄHLEND
Format:
eine mit NULL beendete ASCII-Zeichenkette
-
TapiPartyStatus
-
Dieses
Datenelement enthält
den Status der Gegenseite des aktuellen Anrufs in der JavaPhone-Anwendung.
Es enthält
eine der folgenden Zeichenketten oder NULL, falls kein Anruf aktiv
ist:
EINGELEITET
ALARMIERT
SPRECHEND
WARTEND
Format:
eine mit NULL beendete ASCII-Zeichenkette
-
TapiVolumeLevel
-
Dieses
Datenelement enthält
die aktuelle Lautstärkeeinstellung
des Kopfhörers.
Mögliche
Werte sind 0 bis 100.
Format: eine mit NULL beendete ASCII-Zeichenkette
(1 bis 3 Ziffern plus eine NULL)
-
TapiMicGainLevel
-
Dieses
Datenelement enthält
die Verstärkungseinstellung
des Mikrofons. Mögliche
Werte sind 0 bis 100.
Format: eine mit NULL beendete ASCII-Zeichenkette
(1 bis 3 Ziffern plus eine NULL).
-
TapiHeadSetStatus
-
Diese
Variable enthält
den aktuellen Status des Kopfhörers
des Bedieners, wie er in der zuletzt von der JavaPhone-Anwendung
empfangenen Nachricht HeadSetStatusChanged angezeigt ist. Sie enthält einen der
folgenden Werte:
IN (EIN)
OUT (AUS)
Format:
eine mit NULL beendete ASCII-Zeichenkette
-
TapiConnectionStatus
-
Diese
Variable enthält
den aktuellen Status der JavaPhone-Verbindungen mit dem VoD-Zugang (Voice over
Data Gateway) und dem Anrufweiterleiter.
-
Sie
enthält
einen der zwei folgenden Werte:
Verbunden
Getrennt
Format:
eine mit NULL beendete ASCII-Zeichenkette
-
TapiLastErrCode
-
Dieses
Datenelement enthält
den Wert des Rückkehrcodes,
der während
der Ausführung
des letzten Befehls empfangen wurde, der fehlschlug oder durch einen
internen Fehler der PlusTapi erzeugt wurde. Diese Variable wird
automatisch gelöscht,
wenn ihr Wert angefordert wurde. Andere IWSP DLLs oder selbständige Anwendungen
können
jeweils immer dann eine DUX- oder DDE-Benachrichtigung anfordern, wenn diese
Variable geändert
wird. Dies erlaubt der anfordernden Anwendung, immer dann informiert
zu werden, wenn ein Fehler außer
der Reihe von der JavaPhone-Anwendung
empfangen wird.
Format: kurz
-
TapiLastCmdErr
-
Dieses
Datenelement enthält
den Namen des letzten Befehls, der während seiner Ausführung fehlgeschlagen
ist. Diese Variable wird automatisch gelöscht, wenn ihr Wert angefordert
wurde. Beachte, dass diese Variable NULL sein kann (sogar wenn TapiLastErrCode
einen Wert enthält),
falls der Fehler auf einer Bedingung beruht, die kein direktes Resultat
der Ausführung
einer der verfügbaren
PlusTapi-Befehle war.
Format: eine mit NULL beendete ASCII-Zeichenkette
(bis zu 24 Zeichen plus beendende NULL)
-
PlusTapi Error Handling
-
PlusTapi
hat zwei Betriebsarten, die mit Fehlerbehandlung verbunden sind:
- 1. Modus "Fehleranzeige" – alle erkannten Fehler werden
dem Bediener in einer Windows Messagebox gemeldet.
- 2. Modus "Keine
Anzeige" – alle erkannten
Fehler werden durch die IWSP API zurückgemeldet, ohne dem Bediener
in einer Messagebox angezeigt zu werden.
-
Der
Modus "Fehleranzeige" ist die Standardeinstellung
für den
Platz nach einem erfolgreichen Start. Der Modus "Keine Anzeige" kann nur durch das Aufrufen des bereitgestellten
Befehls TapiDisplayErrs ausgewählt
werden. Mit diesem Modus werden Fehler über die IWSP-Plattform zurückgemeldet,
so dass die aufrufende IWSP DLL oder selbständige Anwendungen (die DDE
nutzen) den Fehler programmatisch bearbeiten können.
-
Immer
wenn irgendeiner der von der PlusTapi DLL (110, 6600)
spezifizierten Befehle fehlschlägt
(ungeachtet des Betriebsmodus), speichert PlusTapi den bestimmten
Ergebniscode (z. B. wie von der JavaPhone-Anwendung geliefert) in
der spezifizierten Variablen TapiLastErrCode. Der Befehl, der den
Fehler (falls einer vorhanden ist) hervorgebracht hat, wird auch
in der spezifizierten Variablen TapiLastCmdErr gespeichert. Falls
PlusTapi im Modus "Fehleranzeige" ist, bringt der
Befehl immer den Status PLUS_COMMAND_OK an die Plattform zurück, nachdem
die Messagebox angezeigt wurde. Falls PlusTapi im Modus "Keine Anzeige" ist, wird der Befehl
immer dann den allgemeinen Fehlerstatus PLUS_COMMAND_ERROR an die
aufrufende IWSP DLL oder die selbständige Anwendung zurückgeben,
wenn der Fehler in dem gleichen Ausführungs-Thread erkannt wird.
Falls der Fehler mit einer asynchronen Antwort von der JavaPhone-Anwendung empfangen
wird, führt
PlusTapi jede DUX- oder DDE-Benachrichtigung aus, die vorher mit
der Variablen TapiLastErrCode angefordert wurde. Die aufrufende
Anwendung muss dann sofort die Werte TapiLastErrCode und TapiLastCmdErr
anfordern, wenn der Fehlerzustand zurückgegeben wird.
-
Alle
Antworten von JavaPhone, die einen Fehler melden, enthalten einen
Rückkehrcode.
PlusTapi (110, 6600) spezifiziert eine Nachrichten-Zeichenkette
für jede
der möglichen
Fehlerbedingungen, was dem Kunden erlaubt, den Textinhalt durch die
Verwendung des IWSP-Hilfsprogramms Define Language zu ändern. Fehler
werden normalerweise an den Bediener durch das Anzeigen einer Standard
WindowsTM Messagebox gemeldet. PlusTapi
erzeugt auch eine WindowsTM Messagebox für jeden
der möglichen
Fehler, der durch die PlusTcp DLL zurückgegeben werden kann. Beachte,
dass die Zeichenketten für
jeden entsprechenden Fehler, den die PlusTcp DLL erkennen kann,
von der PlusTcp DLL (109, 5500) bestimmt werden
(selbst wenn sie immer einen numerischen Rückkehrcode zurückgibt und
niemals einen Text anzeigt).
-
PlusTapi
(110, 6600) versucht eine Wiederherstellung bei
Bedingungen, die zu verlorenen Verbindungen zwischen der JavaPhone-Anwendung
(105, 4400) und dem Zugang Voice over Data (VoD)
oder dem Anrufweiterleiter führen.
Die Wiederherstellung beinhaltet eine Versuchsphase, die im Abschnitt
PlusTapi Startup beschrieben wird. PlusTapi versucht keine Wiederherstellung
von ernsthaften Fehlern, die von PlusTcp oder von JavaPhone empfangen
werden. Alle Fehler werden auch aufgezeichnet.
-
PlusTapi Makro Advisment Events
-
PlusTapi
(110, 6600) unterstützt auch "DUX"-Makro
Rückruf-Benachrichtigungen
für ausgewählte "Ereignisse", was das Aufrufen
nutzerdefinierter Makros erlaubt. Diese Makro-Benachrichtigungs-Unterstützung wird
zum Anzeigen von informellen Texten in der Anrufstatusfenster-(CSW)Anzeige
benutzt.
-
Die
folgenden PlusTapi-Ereignisse, die DUX-Makro-Aufrufe unterstützen, werden
unterstützt:
TapiEventActive – JavaPhone-Umgebung
wurde erfolgreich eingerichtet
TapiEvenInactive – JavaPhone-Umgebung
wurde nicht erfolgreich eingerichtet
TapiEventMute – Mikrofon
war stummgeschaltet
TapiEvenUnMute – Mikrofon wurde wieder zugeschaltet
TapiEventHold – Anruf
wurde auf Warten gesetzt
TapiEventUnhold – Anruf wurde aus Warteschleife
zurückgeholt
TapiEventReady – Agent
wurde bereitgemacht, um neue Anrufe anzunehmen
TapiEventNotReady – Agent
wurde nicht bereitgemacht, um neue Anrufe anzunehmen
TapiEventNotReadyPend – Agent
wurde bereitgemacht, um neue Anrufe anzunehmen, nachdem der aktive Anruf
beendet wurde.
TapiEventVolChange – die Kopfhörerlautstärke wurde geändert
TapiEventGainChange – die Mikrofonverstärkung wurde
geändert
TapiEventCall – ein Anruf
ist auf dem Platz aktiv
TapiEventNoCall – auf dem Platz ist kein Anruf
aktiv
-
Die
obigen Ereignisse führen
den internen Befehl DuxExeMakroAdvise aus, der jeden vorher mit
dem Befehl Dux&tMakroAdvise
gekennzeichneten Makro ausführt.
-
Durch
Verwendung des vorhandenen Befehls DuxSetMakroAdvise kann der Platz
so konfiguriert werden, dass das Anrufstatusfenster entweder mit
Text oder einem Symbol aktualisiert wird. Falls zum Beispiel der
IWSP-Startmakro (konfiguriert im Plattformeinstellung-Hilfsprogramm)
so definiert war, dass er die folgenden Befehle enthält:
DuxSetMacroAdvise
(TapiEventHold, HoldMacro);
DuxSetMacroAdvise (TapiEventUnhold,
UnholdMacro); und der "HoldMacro" wie folgt definiert
wurde:
InfoWinSetText (1, 0, "Anruf auf Warten");
und der UnholdMacro wie folgt
definiert wurde:
InfoWinSetText (1, 0, ""),
würde der
Bediener immer dann eine visuelle Bestätigung haben, wenn der Anruf
auf Warten gesetzt wurde.
-
In ähnlicher
Weise würden
die anderen DUX-Nutzerausgänge
in PlusTapi konfiguriert sein, um Text in vordefinierten InfoWin-Feldern anzuzeigen.
Siehe den Abschnitt ,Anrufstatusfenster' für
zusätzliche
Informationen.
-
Die
Benachrichtigung TapiEventActive wird ausgeführt, wenn PlusTapi Kommunikation
mit der JavaPhone-Anwendung herstellt. In ähnlicher Weise wird die Benachrichtigung
TapiEventInactive immer dann ausgeführt, wenn Kommunikation mit
der JavaPhone Anwendung (105, 4400) verloren geht.
-
PlusTapi Utility Mode (13)
-
Die
PlusTapi DLL (110, 6600) unterstützt den
IWSP-Nutzungsmodus, um ein Mittel für die Einstellung der notwendigen
Konfigurationsparameter bereitzustellen. 13 zeigt
den Bildschirm des Dienstprogramm-Modus der PlusTapi (PlusTapi Utility
Mode Panel).
-
Die
Parameter sind in der folgenden Tabelle definiert: Tabelle2:
PlusTapi Utility Mode Parameter
Utility-Parameter | Definition |
PlusTcp-Gesprächsnummer
zur | Dieser
Parameter wird von PlusTapi |
Fernsprechunterstützung (1–8): | im "TcpOpen"-Befehl der PlusTcp
DLL |
| benutzt.
Gültige
Werte sind 1–8. |
TCP/IP-Adresse
der | Dies
ist die TCP/IP-Adresse der |
Fernsprechunterstützung: | JavaPhone-Anmeldung.
Dieser |
| Parameter
kann auf die Zeichenkette |
| "LocalHost" gesetzt werden,
als |
| eine
Möglichkeit
anzuzeigen, dass |
| sich
die JavaPhone-Anwendung auf |
| dem
gleichen PC befindet. |
TCP/IP-Portnummer
der | Dieser
Parameter spezifiziert die |
Fernsprechunterstützung: | numerische
Anschlussnummer der |
| TCP/IP-Socket-Verbindung
zur |
| JavaPhone-Anwendung.
Dieser Wert |
| muss
mit dem Wert übereinstimmen, |
| für den die
JavaPhone-Anwendung |
| konfiguriert
ist. |
Zeitüberschreitungswert
für die | Dieser
Parameter steuert die Dauer |
Initialisierung
der | der
PlusTapi-Wiederholungslogik, |
Fernsprechunterstützung (Sekunden): | die
während
des Starts angewendet |
| wird,
wenn versucht wird, eine |
| TCP/IP-Socket-Verbindung
mit der |
| JavaPhone-Anwendung
herzustellen |
| (und
sie zu initialisieren). |
Zeitüberschreitung
für die | Dieser
Parameter steuert die Dauer |
Herstellung
der | der
PlusTapi-Wiederholungslogik, um |
Fernsprechverbindung
(Sekunden): | die
Verbindungen zwischen der |
| JavaPhone-Anwendung
und dem Zugang |
| Voice
Over Data und dem |
| Anrufweiterleiter
herzustellen. |
Zeitüberschreitung
für die | Dieser
Parameter gibt die Anzahl |
Möglichkeit,
dass der Operator den | von
Sekunden an, die das System dem |
Kopfhörer wieder
anschließt | Operator
einräumt,
einen Kopfhörer |
(Sekunden): | wieder
anzuschließen,
der während |
| eines
aktiven Anrufes entfernt |
| wurde.
Wenn der Kopfhörer
während |
| der
spezifizierten Zeit nicht |
| wieder
angeschlossen wird, versucht |
| die
PlusTapi-DLL, den Ruf zu einem |
| anderen
verfügbaren
Operator zu |
| übertragen
und dann den Operator |
| abzumelden. |
TCP/IP-Adresse
des Call Director | Das
ist die TCP/IP-Adresse des |
Custom
Server | Systems,
auf dem die Call Director |
| Custom
Server-Anwendung läuft. |
TCP/IP-Adresse
des Voice Over Data | Das
ist die TCP/IP-Adresse des |
Custom
Server | Systems,
auf dem die Voice Over |
| Data
Custom Server-Anwendung läuft. |
-
PlusTapi Diagnostic Support
-
PlusTapi
enthält
eingebettete Rufe an die vorhandene Diagnoseunterstützung, die
die folgenden möglichen
aufgezeichneten Eintragungen enthält:
Nachweise der ursprünglichen
Daten, die zu dem PlusTcp-Modul gesendet wurden
Nachweise der
ursprünglichen
Daten, die von dem PlusTcp-Modul
empfangen wurden
Alle festgestellten Fehlerbedingungen
ASCII-Eintragungen
für jeden
Befehl, der zu der JavaPhone-Anwendung
gesendet wurde und die Antwort, die von ihr erhalten wurde
ASCII-Eintragungen
für alle
ausgelösten
Ereignisse (Schwellwertniveau 5)
-
Anrufstatusfenster (CSW)
-
InfoWin
wird benutzt, um ein Anzeigefenster zu definieren, das die verschiedenen
Anrufstatus-Anzeigen enthält.
Dieses Fenster wird als "Anrufstatusfenster" (CSW) bezeichnet.
-
18 veranschaulicht eine beispielhafte Definition
eines InfoWin (wie es in der Hilfsprogramm DLL InfoWin erscheinen
könnte)
für die
Verwendung als ein CSW. Mit diesem Beispiel könnte InfoWin-Feld 1 benutzt
werden, um anzuzeigen, ob das Mikrofon stummgeschaltet ist, während InfoWin-Feld
2 anzeigen könnte, ob
der Anruf wartet. 19 veranschaulicht, wie das
CSW aussehen könnte,
wenn die InfoWin-DLL im IWSP Normal Mode läuft.
-
In
diesem Beispiel zeigt InfoWin-Feld 1 eine "Warte"-Anzeige an, InfoWin-Feld 2 zeigt eine "Stumm"-Anzeige an. InfoWin-Feld
3 zeigt an, ob es einen "aktiven
Anruf" gibt, während die
InfoWin-Felder 4–7 die gerufenen
und die rufenden Nummern anzeigen.
-
Alle
dargestellten Anzeigen werden ausschließlich für Demonstrationszwecke bereitgestellt,
da es dem Kunden freigestellt ist, den Inhalt und das Format des
Anrufstatusfensters unter Benutzung einer Kombination der folgenden
verfügbaren
Eigenschaften selbst zu gestalten: DISP Makro-Benachrichtigungsereignisse
PlusTapi Benachrichtigungsereignisse InfoWin DLL-Hilfsprogramm InfoWin
Befehl SetText (Befehl "Setze Text") InfoWin Befehl
ShowEData (Befehl "Zeige
Daten")
-
Verfahren
-
Die
in 1–6 veranschaulichten
Blockdiagramme können
durch einen Fachmann zusammen mit den Datenfluss-Diagrammen von 7–19 benutzt
werden, um geeignete Flussbilder zu erzeugen, die ein entsprechendes
Verfahren zur Realisierung der programmierbaren Agenten-Arbeitsstation
beschreiben. Ein Fachmann wird erkennen, dass diese Schritte ohne
Verlust der Allgemeinheit der Lehren der vorliegenden Erfindung
neu angeordnet und/oder erweitert werden können.
-
Die
Lehren der vorliegenden Erfindung sind hinreichend breit, um die
Art und Weise, in der die oben erwähnten Schritte auszuführen sind,
nicht zu begrenzen sowie auch das Verfahren nicht auf eine spezielle Hardware,
ein Betriebssystem, eine API oder eine grafische Nutzerschnittstelle
zu begrenzen. Demzufolge sind die speziellen Informationen, die
im Kontext von 1–20 zusammengestellt
sind, und die speziellen Funktionsaufrufe, die in den beispielhaften
Flussdiagrammen aufgeführt
sind, in keiner Weise beschränkend für die Lehren
der vorliegenden Erfindung oder deren Bereich, obwohl sie für einige
Ausführungsformen
bevorzugt werden.
-
COMPUTERSOFTWARE
-
Wie
ein Fachmann wissen würde
und wie in den obigen beispielhaften Ausführungsformen angegeben, können das
hier beschriebene und in 1–20 allgemein
veranschaulichte System und das Verfahren auf Computer-Befehlscodes
reduziert und auf einem computerlesbaren Speichermittel ausgeführt werden. Dies
kann die Form einer großen
Vielfalt von Speichermedien annehmen, die im Fachgebiet wohlbekannt
sind und/oder für
zukünftige
Verwendung erwartet werden. Somit sieht die vorliegende Erfindung
insbesondere die Einbeziehung des Systems und der Verfahren, die
hier erörtert
werden, in realisierte Computer-Softwareprodukte
vor.
-
Weiterhin
sieht die vorliegende Erfindung, ohne Begrenzung des Bereiches der
vorliegenden Erfindung, insbesondere vor, dass eine oder mehrere
Komponenten der vorliegenden Erfindung unter Benutzung der Betriebssystemumgebung
Microsoft® WindowsTM und/oder der Betriebssystemumgebung IBM® AIXTM in allen ihren Variationen oder ihren äquivalenten
kommerziellen Ausführungsformen,
einschließlich
irgendeines Systems, das eine grafische Nutzerschnittstelle enthält, aber
nicht darauf beschränkt.
-
SCHLUSSFOLGERUNG
-
Es
wird ein System und ein Verfahren mit einer programmierbaren Arbeitsstation
für netzwerkbasierte Call-Center
mit Fernsprechfunktionen, die über
das IP-Netzwerk bereitgestellt werden und einen Personalcomputer
benutzen, dargestellt. Für
solche automatisierten Call-Center besteht ein Bedürfnis, die
Fernsprechfunktionen mit den Verfügbarkeitsfunktionen des Agenten
zu koordinieren. Bestehende Lösungen
benutzen eine Vermittlungsstelle und das PSTN-Telefon, um Informationen
zu einem automatischen Rufweiterleiter (ACD) zu übertragen. Die vorliegende
Erfindung löst
das Problem der Ausführung
einer ähnlichen
Berichterstattung und unter gleichzeitigen Vorhandenseins der Fernsprechfunktionen
und der Agenten-Datenfunktionen.
-
Zu
den Eigenschaften der Erfindung gehören (a) spezielle Protokolle,
um Agenteninformationen an einen Virtuellen ACD zu übergeben
und gemeinsam mit dem H.323-Signalsystem zu existieren und (b) die
Fähigkeit,
den Agentenzustand zu übertragen
und dem Agenten auch für
derartige Informationen zur Verfügbarkeit
und die Alarmierung des Agenten eine bildschirmbasierte Schnittstelle
bereitzustellen.
-
Das
dargestellte System umfasst allgemein JavaPhone-(105, 4400),
PlusTcp-(109, 5500) und Plus Tapi-(110, 6600)APIs
mit zugehörigen
Funktionen des Verfahrens zur Ausführung der wesentlichen Funktionen der
Erfindung.
-
Wie
in 20 veranschaulicht ist die vorliegende Erfindung,
obwohl die vorherigen Erörterungen
auf Ein-Ruf-Anwendungen beschränkt
wurden, zur breiten Anwendung in Umgebungen fähig, in denen die Agenten-Arbeitsstation
(2003) mit einer großen
Vielfalt von entfernten Kommunikationssystemen (2008, 2009, 2010),
unter Benutzung einer großen
Vielzahl von Protokollen und Datentypen kommuniziert.