kallcenter Client

Verbinden

Nach dem Programmstart erscheint ein Dialog, über den die Verbindung zwischen dem Softphone und dem SIP-Provider („Registrierung“ des Softphones) hergestellt wird.


Anmerkung: Diese Eingabemaske stammt noch vom ursprünglichen kphone und kann in späteren Versionen unterdrückt werden. Die Felder Benutzername und Passwort sind Read-Only.

Login

Bereits mit dem Programmstart erscheint ein Fenster mit einer scrollbaren Liste der aktiven Agenten. Inaktive Agenten werden nicht angezeigt, siehe auch Server.


Ist ein Agent ausgewählt, so erscheinen in der Liste darunter die ihm zugeordneten Aufträge.

Unterhalb der beiden Listen sind zwei Anzeigen, die den Verbindungsstatus (Registrierung) angeben (links unten; Stecker in Steckdose/Verlängerungskabel bedeutet „Verbindung steht“, Stecker alleine bedeutet „Verbindung getrennt“) sowie auf Fehler aufmerksam macht (rechts unten; Häkchen bedeutet „alles in Ordnung“).

Ein Anklicken eines Auftrags in der unteren Liste entspricht einem Login mit dem ausgewählen Agenten und Auftrag. Ein Passwort muss nicht angegeben werden.

Das Softphone reserviert mit dem Login automatisch bis zu 1000 Nummern-Datensätze aus der Datenbank für den Agenten (sofern nämlich soviele noch vorhanden sind). Mit dem Logout (schließen der Hauptmaske) werden die noch nicht bearbeiteten Datensätze wieder freigegeben.

„Freie“ und „unfreie“ Verträge

Ein Vertrag mit der Kennzeichnung „Frei = 0“ liefert dem Agenten eine Reihe anzurufender Telefonnummern. Ein Vertrag mit der Kennzeichnung „Frei = 1“ präsentiert hingegen immer wieder eine leere Eingabemaske, bei der die Telefonnummer frei gewählt werden kann.

Hauptmaske – Frei = 0

Nach dem Login erscheint entweder die Meldung, daß keine Datensätze mehr zu bearbeiten sind, worauf sich die Maske wieder schließt; oder es erscheint eine Eingabemaske mit dem nächsten zu bearbeitenden Datensatz:


Fenstertitel

Die Titelzeile ist ein Überbleibsel von kphone. Sie zeigt (vorausgesetzt, eine Verbindung zum SIP-Server konnte aufgebaut werden) die Sitzungsnummer, ein „@“-Zeichen und die IP-Adresse des SIP-Servers.

Statuszeile

Die Statuszeile enthält drei Felder:

Agent

Die angegebenen Informationen zum Agenten sind:

Vorname, Name, Id, wie sie auch in der Login-Maske gestanden haben. Dies sollte verhindern, daß ein Agent versehentlich die Anrufe eines anderen bearbeitet.

„Anz. Anrufe“ - Dieses Feld gibt an, wieviele Datensätze noch zu bearbeiten sind. Dies sollten zum Zeitpunkt des Logins 1000 Datensätze sein, eventuell mehr, falls von einem früheren Login beispielsweise noch Termine zu bearbeiten sind. Mit jedem abgespeicherten Datensatz verringert sich diese Zahl.

Anmerkung: Das Feld „Anz. Anrufe“ gibt nur die Anzahl der zum gegebenen Zeitpunkt anrufbaren Einträge an. Wenn bei einem Eintrag ein erneuter Anruf unternommen werden soll (Termin, Nicht erreicht) und im Feld „Nächster Versuch“ ein noch in der Zukunft liegender Zeitpunkt eingetragen wurde, wird dieser Datensatz solange nicht gezählt, bis dieser Zeitpunkt überschritten wurde.

SIP-Endpunkte

Die SIP-Endpunkte sind die SIP-Nummer des Softphones selbst (dies ist die SIP-Nummer, über die das Softphone von außen angerufen werden kann – was z.Zt. nur über VoIP, nicht aus dem Festnetz heraus möglich ist), und die SIP-Nummer des Angerufenen. Letztere wird vom Provider auf eine Festnetznummer abgebildet. Der Aufbau der SIP-Nummer hat dabei die Form „Landesvorwahl+Vorwahl ohne führende Null+Telefonnummer@Realm des SIP-Providers“. Bei der Landesvorwahl sind die Formen 0049 (z.B. TelDaFax) oder 49 (z.B. GMX, 1&1, web.de) üblich.

Die Informationen zu den SIP-Endpunkten sind nur interessant, falls eine Fehlfunktion beim SIP-Provider vermutet wird. Sie können in zukünftigen Versionen ausgeblendet werden.

Auftrag

Die angegebenen Informationen zum Vertrag sind:

Vertragspartner (Auftraggeber / Firma), Name des Auftrags (z.B. Vertragsnummer).

Anmerkung: Weitergehende Informationen sollten in Papierform vorliegen bzw. in einer mündlichen Einführung vorgestellt werden.

Anmerkung: Alle bisher besprochenen Felder sind Read-Only.

AEC

Dieses Feature ist unfertig! AEC steht für „Acoustic Echo Cancellation“. Echo-Effekte können beispielsweise durch ein Übersprechen von Signalen zwischen Mikrofon- und Lautsprecher-Leitung entstehen. Dadurch hört der Angerufene das Echo seiner eigenen Stimme. AEC vermag dieses Echo zu unterdrücken, indem es das digitalisierte Mikrofonsignal mit dem Lautsprechersignal vergleicht und mit verringerter Lautstärke von diesem abzieht.

Leider benötigt dieses Feature eine bestimmte Mixer-Einstellung: das Mikrofonsignal wird als Stereosignal behandelt, und dabei wird auf den zweiten Kanal das ursprüngliche Lautsprechersignal geschaltet. Da aber die Mixer-Einstellungen von Soundkarte zu Soundkarte unterschiedlich sind, ist dieses Feature eigentlich nur in einer homogenen Systemlandschaft realisierbar.

Anmerkung: sollte der Callcenter-Agent selbst ein (verzögertes) Echo seiner eigenen Stimme hören, so kann dieses durch AEC nicht unterdrückt werden. Eine Unterdrückung ist immer nur an der Echo-Quelle möglich oder an einer Stelle, an der die Zeitverzögerung zwischen ein- und ausgehendem Signal gleich Null oder genau bekannt ist. ISDN-Telefone verfügen über eine eigene Echo-Unterdrückung, Analog-Telefone hingegen nicht. Ein in einem Analog-Telefon entstehendes Echo kann daher nur im SIP-Gateway beim Provider unterdrückt werden.

Sound-Kontrolle

Dieser Schalter ruft eine eigene Dialogbox auf, über die alle Sound-Einstellungen verändert werden können. Siehe dazu Kapitel Sound.

Anzurufender

Die angegebenen Informationen zum Anzurufenden sind:

Anrede, Vorname, Name

Geburtsdatum, Beruf, Straße

Postleitzahl, Ort

Telefon mit zwei Feldern für Vorwahl und Nummer (diese beiden Felder sind Read-Only)

Telefon 2 mit zwei Feldern für Vorwahl und Nummer (diese beiden Felder können ausgefüllt werden)

Es folgen vier Felder, deren Namen pro Vertrag festgelegt sind (im Screenshot: „Anz.Lose“ und dreimal „-“)

Bank, BLZ, Kontonummer, Kontoinhaber

Anmerkung: Die folgenden Felder sind Pflichtfelder für einen Auftrag:

Geburtsdatum, Straße, Postleitzahl, Ort; mindestens eines der vier vertragsabhängigen Felder; mindestens eines von Bank und BLZ; Kontonummer.

Siehe auch Speichern.

Anmerkung: Wird ein Feld modifiziert, so wird der gesamte Datensatz zwischengespeichert, sobald der Cursor das Feld verlässt. Gleichzeitig wird für den Datensatz ein „dirty“-Flag gesetzt. Damit ist sichergestellt, daß der Datensatz auch im Falle eines Logouts oder eines Absturzes nicht freigegeben und von einem anderen Agenten aufgenommen werden kann. Statt dessen erscheint er automatisch wieder beim nächsten Login mit diesem Vertrag.

Wählen / Auflegen

Mit einem Klick auf „Wählen“ wird der Gesprächspartner automatisch angewählt. Der Fokus in der Eingabemaske liegt automatisch auf „Wählen“, so daß ein Druck auf die Return-Taste ebenfalls „Wählen“ betätigt.

Die Taste „Auflegen“ ist anwählbar, sobald „Wählen“ angeklickt wurde. Der Fokus wechselt nach dem Anklicken von „Wählen“ automatisch auf „Auflegen“, so daß ein zweiter Druck auf die Return-Taste ebenfalls „Auflegen“ betätigt.

In kphone ist ein Timeout vorkonfiguriert; kommt die Verbindung bis zum Ablaufen des Timeouts nicht zustande, wird automatisch aufgelegt.

Nach dem Auflegen wechselt der Fokus wieder auf „Wählen“.

Anmerkung: Es ist möglich, einen Gesprächspartner mehrfach anzuwählen, da die Maske erst nach Anklicken von „Speichern“ verlassen wird.

Anmerkung: Im Moment des Anwählens wird der gesamte Datensatz zwischengespeichert; zudem wird für den Datensatz das „dirty“-Flag gesetzt (siehe auch Anzurufender). Damit ist sichergestellt, daß der Datensatz auch im Falle eines Logouts oder eines Absturzes nicht freigegeben und von einem anderen Agenten aufgenommen werden kann. Statt dessen erscheint er automatisch wieder beim nächsten Login mit diesem Vertrag.

Pause

kallcenter ist auf „Dauertelefonieren“ eingestellt. Das heißt, im gleichen Moment, in dem ein Datensatz abgespeichert und der nächste Datensatz angezeigt wird, wird dieser auch schon angewählt.

Um diesen Zyklus zu unterbrechen, muss vor dem Speichern eine Pause angefordert werden. Dazu setzt man das Kreuz im Checkfeld „Pause“.

Jeder Druck auf eine Speichern-Taste oder auf „Wählen“ entfernt automatisch das Kreuz im Checkfeld „Pause“, der Telefonzyklus beginnt erneut.

Anmerkung: im Moment des Logins befindet sich das Softphone im Status „Pause“, es wird also mit dem Login nicht sofort der erste Anruf gestartet.

Nächster Versuch

Falls ein weiterer Anruf erforderlich ist, muss das Feld „Nächster Versuch“ bearbeitet werden.

In diesem Feld steht jeweils Datum und Zeitpunkt der Anzeige des Datensatzes (also die aktuelle Zeit). Ein Anklicken des Pfeils nach oben am Tages-Feld (links) erhöht das Datum jeweils um einen Tag. Ein Anklicken des Pfeils nach oben am Uhrzeit-Feld (rechts) erhöht den Zeitpunkt um jeweils eine Stunde. Ein direktes Eingeben von Datum/Uhrzeit ist ebenfalls möglich.

Dieses Feld hat nur eine Bedeutung beim Abspeichern des Datensatzes als „Termin“. Siehe auch Speichern.

Bekannter Fehler: Momentan darf dieses Feld nur unmittelbar vor dem Abspeichern geändert werden (wobei der Wert wie gesagt außer bei „Termin“ ignoriert wird). Wird er vorher auf einen in der Zukunft liegenden Wert gesetzt und ein Feld modifiziert oder „Wählen“ angeklickt, wird der Datensatz mit diesem veränderten Zeitstempel zwischengespeichert und ist damit bis zum angegebenen Zeitpunkt nicht mehr verwendbar.

Anmerkung: Die Zeit, die beim Anzeigen des Datensatzes gesetzt wird, ist die Zeit der Systemuhr auf dem Server. Diese kann von der Uhr des Clients natürlich abweichen. Praktisch ist die Verwendung eines Zeitservers, um Verwirrung zu vermeiden; aber auch dann können sekundenweise Abweichungen entstehen.

Anmerkung: Die beim Abspeichern als „Nicht erreicht“ verwendete Zeit ist allerdings derzeit die der Systemuhr des Clients, erhöht um 5 Stunden. Die Abweichungen der Systemuhren darf daher keinesfalls in der Größenordnung von Stunden oder darüber liegen.

Bemerkungen

Unterhalb von Wählen/Auflegen befindet sich ein Freitextfeld für beliebige Anmerkungen. Die Eingabe von Zeilenumbrüchen ist möglich.

Speichern

Ganz unten befinden sich sechs Tasten zum Speichern des Datensatzes. Mit Betätigung einer dieser Tasten wird ein Status gesetzt und der Datensatz verlassen. Die Eingabemaske schaltet automatisch zum nächsten Datensatz weiter, sofern ein weiterer Datensatz existiert und zum gegebenen Zeitpunkt anwählbar ist. Andernfalls erscheint eine Meldung, das kein weiterer Datensatz anwählbar ist, und das Programm wird danach automatisch beendet.

Anmerkung: Das „dirty“-Flag (siehe Anzurufender und Wählen / Auflegen) wird durch das Abspeichern wieder zurückgesetzt.

Anmerkung: Die Reihenfolge, in der die Datensätze erscheinen, wird durch den Zeitpunkt des „nächsten Versuchs“ festgelegt. Sind mehrere Datensätze zum gleichen Zeitpunkt anrufbar, so wird zur Sortierung die interne Nummerierung herangezogen.

Die sechs Tasten sind:

Beim Speichern als „Auftrag“ werden die Pflichtfelder überprüft (Geburtsdatum, Straße, Postleitzahl, Ort; mindestens eines der vier vertragsabhängigen Felder; mindestens eines von Bank und BLZ; Kontonummer). Ist eines davon nicht ausgefüllt, kann der Datensatz nicht gespeichert werden.

Beim ersten Speichern als „Nicht erreicht“ wird ein erneuter Versuch fünf Stunden später vorbereitet. Wird auch bei diesem zweiten Versuch „Nicht erreicht“ angeklickt, so wird der Datensatz als „Löschen“ gespeichert.

Beim Speichern als „Termin“ wird das Feld „Nächster Versuch“ berücksichtigt. Zu dem dort angegebenen Zeitpunkt wird der Datensatz erneut dargestellt.

Beim Speichern als „Negativliste“ wird nicht nur der Status des Datensatzes gesetzt, sondern außerdem die Nummer in die Negativliste eingetragen, und zwar sowohl in der Form Vorwahl und Durchwahl getrennt als auch als zusammenhängende Zeichenkette. Damit werden auch falsche Schreibweisen dieser Telefonnummer zukünftig blockiert.

Speichern als „Gelb“ oder „Gelöscht“ setzt lediglich den entsprechenden Status des Datensatzes. Damit kann der Datensatz nicht mehr eingeladen werden. (Der Unterschied zwischen „Gelb“ und „Gelöscht“ ist der, daß aus den „gelben“ Datensätzen zusammen mit den Aufträgen gegen Jahresende eine Liste von Nummern erstellt werden soll, die im nächsten Jahr erneut angerufen werden können und dabei bevorzugt werden, weil die Chance eines Auftrages nach Einschätzung des Callcenter-Agents überdurchschnittlich hoch liegt.)

Hauptmaske – Frei = 1

Ein Vertrag mit der Markierung „Frei = 1“ präsentiert die gleiche Maske wie ein Vertrag mit „Frei = 0“. Jedoch verhält sich die Maske etwas anders.


Das Feld „Anz.Anrufe“ zeigt in der Regel eine Eins. Allenfalls wenn mehrere Datensätze im Status Termin, Nicht erreicht oder mit gesetztem „dirty“-Flag in der Warteschlange stehen, wird hier ein größerer Wert angezeigt.

Jedesmal, wenn die Warteschlange leer ist, erzeugt kallcenter einen neuen, leeren Datensatz – daher ist „Anz.Anrufe“ stets mindestens Eins.

Das Feld „Telefon“ ist bei diesen neu angelegten Datensätzen leer und veränderbar. Der Callcenter-Agent kann hier eine Telefonnummer eintragen. Das Feld bleibt bis zum ersten Anruf veränderbar, selbst bei einem zwischenzeitlichen Logout. Nach dem ersten Anruf ist es jedoch wieder Read-Only.

Die Speicher-Tasten und „Pause“ zeigen ebenfalls ein anderes Verhalten. Eine automatische Anwahl erfolgt in einem „Frei“-Vertrag nicht. Ohne Telefonnummer kann das ja auch nicht funktionieren.

Die eingegebene Telefonnummer wird bei der Anwahl geprüft: Nummern mit der Vorwahl (0)180, (0)190 oder (0)900 werden blockiert, ebenso alle Nummern, bei denen die führende Null der Vorwahl mit angegeben wird. Bei der Prüfung wird die gesamte Nummer (Vor- und Durchwahl) berücksichtigt, so daß auch fehlerhafte Eingaben wie Vorwahl 18, Durchwahl 0123 (statt Vorwahl 180, Durchwahl 123) erkannt werden.

Eine Telefonnummer aus der Negativliste kann ebenfalls nicht angerufen werden.

Wurde die Nummer bereits von einem anderen Datensatz angewählt, erscheint eine Warnung mit Angabe des Zeitpunkts der letzten Anwahl.

Falls die eingegebene Nummer in der Datenbank bereits in einem anderen Eintrag vorkommt, aber noch nicht angerufen wurde, wird dieser andere Eintrag als „gelöscht“ markiert.

Anmerkung: Der neu angelegte Datensatz wird bereits beim Anlegen als „dirty“ markiert. Auf diese Weise wird verhindert, daß durch Logouts oder Abstürze immer mehr Datensätze erzeugt und dann freigegeben werden.

Sound

Grundeinstellungen – Mixer

Nach der Installation von kallcenter auf einem Client muss als erstes das Sound-System konfiguriert werden. Die Einstellungen können jederzeit nachgeregelt werden, auch wenn dies normalerweise nicht notwendig sein sollte.

Ein Klick auf den Schalter „Sound-Kontrolle“ öffnet die gleichnamige Dialogbox. Ein Klick auf den Schalter „Öffnen“ unter „Systemweite Einstellungen“ öffnet dann den Mixer kmix.

Die auf ALSA aufbauenden Mixer zeigen keine einheitliche Oberfläche, sondern passen sich jeweils den Fähigkeiten der Soundkarte an. Daher ist eine detaillierte Beschreibung hier nicht möglich. Ein grober Überblick wird durch folgende Regler gegeben, die fast immer vorhanden sind, obwohl ihre Namen unterschiedlich lauten können und sie nicht immer in denselben Registerkarten stehen:


Die Einstellungen des Mixers können durch den Schalter „Speichern“ in der „Sound-Kontrolle“ permanent gemacht werden. Dazu werden sie in einer Konfigurationsdatei gespeichert und bei jedem neuen Anruf wiederhergestellt.

Anmerkung: Die Konfigurationsdatei ist „$HOME/.qt/kcenter.alsa“ und hat das gleiche Format wie „/etc/asound.state“.

Anmerkung: kallcenter beendet mit jedem Klick auf „Wählen“ sowie beim Starten alle anderen Prozesse, die die Soundkarte zu verwenden versuchen, darunter auch den Mixer kmix (der allerdings während eines Anrufs durchaus gestartet werden kann). Auch der aRts-Dienst der KDE (der für die Ausgabe von Systemklängen verantwortlich ist) wird beendet.

Lautstärke-Anzeige und -Regelung

Im Dialog „Sound-Kontrolle“ unter „Lokale Einstellungen“ befinden sich zwei Regler und zwei Anzeigebalken, die durch Tooltips als Mikrofon-Lautstärke/-Signal (oberer Regler/Anzeigebalken) bzw. Kopfhörer-Lautstärke/-Signal (unterer Regler/Anzeigebalken) gekennzeichnet werden.


Die Lautstärke-Anzeigen geben den Amplitudenwert in Prozent vom erlaubten Maximalwert wieder. Welcher Lautstärke dieser Maximalwert entspricht, entscheiden allerdings die Einstellungen des Mixers.

Die Lautstärkeregler wirken multiplikativ auf den Amplitudenwert. Der Mikrofon-Lautstärkeregler ist mit sieben Markierungen versehen. Die am weitesten links stehende entspricht der Null, die unmittelbar rechts davon stehende der Eins. Die am weitesten rechts stehende entspricht der Sechs: die Amplituden würden damit um das sechsfache verstärkt.

Nach Erfahrung wird die Mikrofonlautstärke vermutlich auf einen Wert zwischen 2 und 5 gestellt werden müssen, je nach Leistungsmerkmalen des Soundsystems.

Der Lautsprecher-Regler hat nur zwei Markierungen, die für die Werte Null und Eins stehen. Es ist also nicht möglich, den Lautsprecher-Output zu verstärken, man kann ihn hier lediglich dämpfen. Der Erfahrung nach werden erzeugen die angerufenen Telefone Signale, die bereits im maximalen Bereich liegen, wie das bei kallcenter mit der entsprechenden Einstellung der Mikrofonlautstärke auch der Fall ist. Wie laut diese maximalen Amplituden erscheinen, liegt alleine bei den Mixer-Einstellungen (PCM und Master).

kallcenter verfügt über eine automatische Lautstärkedämpfung sowohl für Mikrofon als auch für Lautsprecher. Wenn durch die oben beschriebene Verstärkung die Amplitudenwerte auf über 100% ansteigen, wird der entsprechende Lautstärkeregler automatisch zurückgestellt. Diese Rückstellung ist permanent, wenn der Dialog der Sound-Kontrolle offen ist. Sie ist nur temporär, wenn die Dialogbox geschlossen ist – Stör-Effekte werden so durch die Dämpfung vermieden, aber die einmal gewählten Lautstärken werden wiederhergestellt, sobald die Spitzenbelastung vorüber ist.

Alle Änderungen der Regler werden sofort abgespeichert. Der „Speichern“-Schalter bezieht sich nur auf die Einstellungen des Mixers, nicht auf die Lautstärkeregler.

Anmerkung: diese Lautstärken werden in der Konfigurationsdatei /etc/X11/kallcenterrc gespeichert.

Log-Dateien und Core Dumps

In der Default-Einstellung (siehe dazu auch Installation / Update Dienst / Installations-Skript) erzeugt kallcenter beim Start über das Desktop-Icon eine Log-Datei „kallcenter.log“ im Heimatverzeichnis des Benutzers. Außerdem wirft kallcenter im Falle eines Speicherzugriffsfehlers einen „Core Dump“, einen Hauptspeicherabzug. Sofern kallcenter mit der Option --enable-debug=yes übersetzt wurde, kann dieser Core Dump dazu benutzt werden, die Fehlerursache aufzuspüren. (Anmerkung: Seit Mitte Mai hat kallcenter keine Speicherzugriffsfehler mehr gehabt.)

Die Log-Datei enthält:

Die Log-Datei wird vom Installations-Skript während des Einspielens einer neuen Version umbenannt, und zwar in „kallcenter-<Jahr>-<Monat>-<Tag>-<Stunde>-<Minute>-<Sekunde>.log“. Eine bessere Methode des Aufräumens ist ein cron-Job, der den kallcenter-Client nachts stoppt, die Logs umbenennt und Logs löscht, die älter sind als eine Woche.

Der Update-Dienst hat eine eigene Log-Datei kcupdate.log, ebenfalls im Heimatverzeichnis. Da sie in Vergleich zu kallcenter.log nur sehr wenige Meldungen enthält, wird sie auch nicht umbenannt.