PhoneSuite CTI Client im Einsatz mit
ODBC-Datenquellen

Über die ODBC-Schnittstelle von Windows haben Sie Zugriff auf Datenbanken, wie z.B. Access, MySQL, Microsoft SQL-Server, DBase oder auch Excel-Tabellen. Somit lassen sich alle unterstützten Datenquellen als Telefonbuch-Ordner im CTI Client einbinden.


Allgemeine Informationen zu ODBC-Datenquellen


  • Der "Windows ODBC-Manager" verwaltet so genannte DSNs (Data Source Names), die stellvertretend für eine Datenquelle (z.B. eine Access-Datenbank) stehen. Eine DSN enthält alle Informationen, die zum Öffnen einer Datenquelle benötigt werden, wie z.B.: Dateipfad zur Datenbank, Nutzername, Passwort und weitere spezielle Datenquellen-Parameter. Ausführliche Informationen zum "ODBC-Manager" finden Sie hier...
  • Datenbanken verfügen typischer Weise über eine ID-Spalte zur Referenzierung der Datensätze. Verknüpfte Datenquellen sollten in der ersten Spalte möglichst den Datensatz-ID enthalten. Wenn kein Datensatz-ID verfügbar ist, referenziert der CTI Client die Datensätze über die Namensspalten. Bitte beachten Sie, dass bei einer Referenzierung über die Namensspalten und einer nachträglichen Änderung der entsprechenden Feldinhalte außerhalb des CTI Clients, die eindeutige Zuordnung der Datensätze verloren gehen kann. In diesem Fall wird beim Zugriff auf einen entsprechenden Datensatz eine Fehlermeldung angezeigt. Über die Funktion Telefonbuch-Ordner "Aktualisieren" wird die Zuordnung der Datensätze wieder hergestellt. Siehe auch: Cache, Aktualisierung...
  • Auf ODBC-Datenquellen kann in aller Regel lesend und schreibend zugegriffen werden. Eine Ausnahme bilden Excel-Tabellen, die nur einen lesenden Zugriff ermöglichen.
  • Auf Windows 64Bit Systemen gibt es zwei ODBC-Manager (x64 und x32).
    Da der CTI Client eine 32Bit Anwendung ist, wird der ODBC-Manager-x32 verwendet.
  • Hinweise zur Verwaltung gemeinsamer Adressdaten.

Aktuelle ODBC32 Treiber für Access und Excel installieren

  • Der CTI Client verwendet als 32Bit Anwendung den ODBC-Manager-x32.
  • Auf aktuellen Windows Systemen (z.B. Windows 11) sind nur ältere ODBC32-Treiber vorinstalliert.
  • Wenn Sie im CTI Client neuere Access-Datenbanken oder Excel-Dateien per ODBC einbinden wollen, können Sie die benötigten Treiber wie folgt installieren:
    • Hinweise:
      • Microsoft stellt aktuell zwei "Microsoft Access Database Engine 2016 Redistributable" Pakete bereit (x64 und x32).
      • Die x64 und x32 Pakete der gleichen Versionsnummer scheinen auf einem System nicht parallel zu funktionieren. Nur das zuletzt installierte Paket funktioniert.
      • Work-Around: Installation der "Database Engine 2010 (x32)".
    • Installieren Sie das "Microsoft Access Database Engine 2010 (x32) Redistributable" Paket.
    • Falls Sie auf dem System auch die 64Bit ODBC-Treiber für andere Anwendungen benötigen, können Sie das "Microsoft Access Database Engine 2016 Redistributable (x64)" installieren:

ODBC-Datenquelle als Telefonbuch-Ordner einbinden (am Beispiel von Access)

Die hier beschriebene Vorgehensweise zum Einbinden einer Access-Datenbank als Telefonbuch-Ordner gilt grundsätzlich auch für andere ODBC-Datenquellen wie MySQL, Microsoft SQL-Server, DBase oder Excel-Tabellen.

Falls Sie noch keine Access-Datenbank vorliegen haben, können Sie die Beispiel-Datenbank "contacts.mdb" verwenden und an Ihre Bedürfnisse anpassen. Diese Datenbank finden Sie im Arbeitsverzeichnis im Ordner "\test-db-access\contacts.mdb".

Die Verknüpfung einer Access-Tabelle erfolgt über:
  1. [Telefonbuch > Neu > Neue Ordner-Verknüpfung... > Outlook, ODBC, Textdateien...]
  2. Wählen Sie im Dialog "Typ der Datenquelle" den Eintrag [ODBC].
  3. Im Dialog "Name und Inhalt" können Sie ggf. den vorgeschlagenen Ordner-Name und den Inhalts-Typ ändern. 
  4. Mit [Weiter] erscheint ein Dialog "Datenquelle auswählen" vom Windows-ODBC-Manager. Hier können Sie entweder:
    • die vorhandene DSN-Datenquellen-Verknüpfung zu ihrer Access-Datenbank auswählen (falls Sie diese vorher erstellt haben),
    • oder Sie erstellen mit [Neu...] eine neue Verknüpfung zu ihrer Access-Datenbank und öffnen diese anschließend mit OK.
  5. Im Dialog "Tabelle aus ODBC-Datenquelle auswählen" werden jetzt alle Tabellen der Access-Datenbank aufgelistet. Markieren Sie die gewünschte Tabelle und gehen Sie dann auf [Weiter].
    • Alternativ kann auch manuell eine "SQL-Abfrage" eingegeben werden. In diesem Fall werden die Daten als "nur lesend" eingebunden. Positiver Nebeneffekt: Über eine SQL-Abfrage lassen sich auch Datenfelder größer 1024 Zeichen binden. Es werden aber maximal 1024 Zeichen gelesen.
  6. Im Dialog "Spaltenauswahl" können Sie nicht benötigte Spalten abwählen. Hinweis: Die erste Spalte sollte immer den Datensatz-ID enthalten (Auto-ID-Feld von Access).
    • Spalten mit unbekanntem Format oder mit einer Datengröße von mehr 1024 Zeichen sind nicht auswählbar (grau/gesperrt).
  7. Im Dialog "Eigenschaften der Eingabefelder" sind die Spalten nach ihrem Inhalt zu typisieren.
  8. Im Dialog "Cache" sollten Sie die Voreinstellungen beibehalten und mit [Fertigstellen] die Dialogführung abschließen.
  9. => Die Access-Tabelle ist jetzt in der Ordnerstruktur sichtbar.

Wenn Sie mehrere Access-Tabellen im CTI Client verknüpfen wollen, dann wiederholen Sie die Prozedur entsprechend.

Die Verknüpfung einer SQL-Abfrage:

Die Einbindung einer SQL-Abfrage erfolgt über die gleichen Schritte wie bei einer ODBC-Tabelle (siehe oberhalb). Nur im Schritt 5 ist "SQL-Abfrage" auszuwählen.
Weitere Hinweise:

  • Zur Abfrage eines einzelnen Datensatzes wird eine WHERE-Klausel ergänzt. Zum Beispiel ".... WHERE ID=2345".
  • Wenn die SQL-Abfrage bereits eine oder mehrere WHERE-Klauseln enthält, wird die letzte WHERE-Klausel ergänzt. Beispiel: "WHERE TeamID=17" =>  "WHERE (ID=2345) AND TeamID=17"
  • Tipp: Sie können ggf. eine Dummy-WHERE-Klausel am Ende der SQL-Abfrage einfügen, damit diese angepasst wird und nicht vorhergehende WHERE-Klauseln einer komplexeren Abfrage.
    Beispiel: "WHERE ID>0" =>  "WHERE (ID=2345) AND ID>0"
    • Der Tipp gilt auch für SQL-Abfragen, die am Ende noch ein "GROUP BY" oder "ORDER BY" enthalten. Fügen Sie davor ggf. eine Dummy-WHERE-Klausel ein.
      Beispiel: "WHERE ID>0 ORDER BY ID" =>  "WHERE (ID=2345) AND ID>0 ORDER BY ID"
Spätere Änderung der Ordner-Einstellungen:
  • Klicken Sie dazu mit der rechten Maustaste auf den Ordner und wählen [Eigenschaften (Ordner)].
Datenmaske individuell anpassen:
  • Selektieren Sie dazu einen Datensatz im verknüpften ODBC-Ordner und öffnen die zugehörige Datenmaske per F2-Taste oder Kontextmenü.
  • Über den Tool-Button können Sie die Eingabemaske in den Editor-Modus schalten und die Felder nach den eigenen Erfordernissen anordnen. Weitere Hinweise...
Aktualisierung geänderter Datensätze (Synchronisation):

Wenn in ODBC Datensätze bearbeitet, neu hinzugefügt oder gelöscht werden, sind diese Änderungen aufgrund des Daten-Caches nicht sofort im PhoneSuite CTI Client sichtbar. Um die Änderungen sichtbar zu machen, werden folgende Synchronisations-Varianten unterstützt:

  • manuelle Synchronisation des gesamten Ordners: Markieren Sie dazu den Ordner und drücken Sie die Funktionstaste F5. Es werden dann alle geänderten Datensätze neu eingelesen. Wenn Sie innerhalb von 5 Sekunden nochmals F5 drücken, wird der Ordner komplett neu eingelesen.
     
  • manuelle Synchronisation eines Datensatzes: Wenn Sie in der Ordnerstruktur auf einem Datensatz stehen und die F5-Taste betätigen, wird dieser Datensatz neu eingelesen. Ein Datensatz wird ebenfalls immer neu eingelesen, wenn er in der Datenmaske geöffnet wird.
     
  • Automatische Synchronisation des gesamten Ordners: In der Grundeinstellung werden verknüpfte Ordner einmal pro Woche synchronisiert. Das Synchronisationsintervall kann über [Ordner > Eigenschaften > Cache] individuell angepasst werden.

Eingehende Anrufe anzeigen

Kommende Rufe werden über den PhoneDialog angezeigt.

  • Ein Klick auf den Button öffnet die Kontakt-Datenmaske des PhoneSuite CTI Client.

  • Über eine Ordner-Option lässt sich die Datenmaske auch automatisch bei einem eingehenden Anruf öffnen: [Kontextmenü des Ordners > Eigenschaften (Ordner) > Eigenschaften]

Wählen aus einer Datenbank-GUI heraus

Sofern die entsprechende Datenbank über eine eigene Programmoberfläche (Datenbank-Client) verfügt, können Sie Rufnummern auch direkt aus dieser heraus wählen:

Unterstützt der Datenbank-Client das Ausführen selbst definierter Aktionen, Makros oder Scripte, so ist es ggf. auch möglich eine Rufnummer per Kommandozeile "cti_client.exe /dial RUFNUMMER" oder per URL-Link zu wählen:


Rufsteuerung per ActiveX-Control

Die Professional Version des CTI Client installiert im Windows-System ein ActiveX-Control zur Rufsteuerung.
Datenbank-Clients und andere Anwendungen, die das Einbinden von ActiveX-Controls unterstützen (z.B. Access), können mit dessen Hilfe folgende Funktionen realisieren:

  • die Anzeige kommender und gehender Rufe mit Rufnummer, Name und weiteren Parametern,
  • die Wahl von Rufnummern
  • das Beenden eines Rufs/Verbindung.

Weiter Hinweise zur Verwendung des ActiveX-Control finden Sie hier...