Call Detail Records in eine Datenbank schreiben

Enreach Info
Enreach Info
  • Aktualisiert

SwyxWare kann Call Detail Records in eine Datenbank schreiben anstatt in Textdateien. Dieser Artikel beschreibt, wie man dies konfiguriert.

Der SwyxServer schreibt CDRs in eine Tabelle namens IpPbxCDR. Am Ende des Artikels sind SQL-Initialisierungsskripte zu finden, mit denen diese Tabelle erstellt werden kann. Alternativ kann ein anderes Datenbank-Tool genutzt werden, um die Tabelle mit den entsprechenden Spalten selbst anzulegen.

Microsoft SQLServer als Datenbank benutzen

Um CDRs in eine Microsoft SQLServer Datenbanktabelle zu schreiben muss der Connection-String so lauten:

Provider=SQLOLEDB[;Data Source=<ServerName>];Initial Catalog=<DatenbankName>[;Integrated Security=SSPI|User ID=<BenutzerID>;Password=<Passwort>]

wobei

  • <ServerName> der Name des SQLServer ist, zu dem verbunden wird. Lassen Sie diesen Parameter weg, wenn sich SQLServer auf demselben Rechner befindet wie SwyxServer.
  • <DatenbankName> der Name der zu verwendenden Datenbank im SQLServer ist. Wenn Sie diesen Parameter weglassen, wird die Standard-Datenbank des Benutzers verwendet, der auf den SQLServer zugreift (siehe unten).
  • Parameter in eckigen Klammern "[]" sind optional. "|" definiert eine entweder/oder Auswahl von Parametern.

Wenn Sie:

Integrated Security=SSPI

verwenden, wird zur Authentisierung die normale Windows-Autentisierung benutzt (empfohlen). Sie müssen der Gruppe "SwyxWare Administratoren oder dem SwyxServer Dienstkonto Lese- und Schreibzugriff in der SQLServer Datenbank erlauben.

Alternativ können sie SQLServer Authentisierung verwenden, indem Sie einen Benutzernamen und ein Password angeben:

User ID=<BenutzerID>;Password=<Passwort>

wobei <BenutzerID> der Name des SQLServer Benutzers und <Passwort> dessen Passwort ist.

SwyxServer schreibt die CDRs in eine Tabelle namens IpPbxCDR. Benutzen Sie das SQL-Initialisierungsskript, welches Sie am Ende dieses Artikels runterladen können, um diese Tabelle zu erzeugen. 

Beispiele

  • Um CDRs in eine Microsoft SQLServer Datenbank namens "SwyxCallDetails" auf dem Rechner "ALICE" unter Benutzung der Windows Authentisierung zu schreiben, definieren Sie den Connection-String wie folgt:

Provider=SQLOLEDB;Data Source=ALICE;Initial Catalog=SwyxCallDetails;Integrated Security=SSPI

SwyxWare benutzt in diesem Falle das SwyxServer Dienstkonto für die Verbindung zur Datenbank.

  • Um CDRs in eine Microsoft SQLServer Datenbank namens "SwyxCallDetails" auf dem Rechner "ALICE" unter Benutzung des SQLServer Logins "Bob" mit Passwort "1234" zu schreiben, definieren Sie den Connection-String wie folgt:

Provider=SQLOLEDB;Data Source=ALICE;Initial Catalog=SwyxCallDetails;User ID=Bob;Password=1234

Hinweis: Benutzen Sie immer eine eigene Datenbank und nicht die SwyxWare Datenbank ippbx.

Benutzung einer ODBC Datenquelle

Um CDRs mit Hilfe von ODBC in eine Datenbank zu schreiben, benutzen Sie den folgenden Connection-String:

DSN=<Datenquellenname>

Datenquellen müssen als System DSN im Windows ODBC Datenquellen-Administrator (32-bit) angelegt werden. Dazu müssen die ODBC-Treiber für Ihre Datenbank installiert sein.

SwyxWare unterstützt seit Version 2015 R40.2 die folgenden Datenbanken zum Speichern von CDRs:

  • Microsoft SQL Server
  • MySQL
  • PostgreSQL

 Wichtiger Hinweis:

Beim Schreiben in MySql Server kommt es anscheinend mit den aktuell mitgelieferten ODBC-Treibern zu Instabilitäten. Der ODBC-Treiber stürzt ab und der Swyxware-Dienst wird darüber ebenfalls instabil.
 

Ein Umbau auf den älteren "mysql connector odbc 5.3.13 win32" mitsamt dem erfoderlichen "Visual C++ Redistributable Packages für Visual Studio 2013" behebt das Problem.

Fehlersuche

SwyxServer schreibt eine Warnung mit der entsprechenden Fehlermeldung in das Windows Anwendungsprotokoll, wenn die Verbindung zur Datenbank nicht hergestellt werden konnte. In diesem Falle benutzt SwyxServer die CDR Einstellungen aus SwyxWare Administration.

Neues Schema verwenden (Update auf SwyxWare 2015 R40)

Seit SwyxWare 2015 R40 wurde eine neue Spalte zum Datenbank-Schema hinzugefügt. Um bestehende Tabellen zu erweitern, können Sie das weiter unten bereitgestellte ALTER-Skript benutzen oder die notwendigen Schritte manuell ausführen. Die neue Spalte verknüpft zusammengehörende Anrufe, die über den Mobile Extension Manager zugestellt wurden. Um die neue Spalte zu aktivieren, öffnen Sie bitte die Windows Registry durch Starten von regedit.exe und navigieren Sie zu dem folgenden Pfad:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Swyx\IpPbxSrv\CurrentVersion\Options

Erstellen Sie einen neuen DWORD (32 Bit) -Wert mit dem Namen "CDRVersion" und dem Wert 2. Danach starten Sie bitte die Dienste neu.

Referenzen:

Die folgende ZIP Datei enthält ein SQL CreateTable Skript zum Erzeugen einer entsprechenden Tabelle in einer MS SQL, einer MySQL und einer PostgreSQL Datenbank.

Die folgende ZIP Datei enthält ein SQL CreateTable Skript zum Erzeugen einer entsprechenden Tabelle auf einem MS SQL Server.

Die folgende ZIP Datei entält ein SQL Statement um eine vorhandene MS SQL CDR Datenbank an das neue Schema der SwyxWare 2015 R40 anzupassen.

  • Vorhandene MS SQL CDR Datenbank an neues Schema der SwyxWare 2015 R40 anpassen
    cdr_alter.zip

Informationen anderer Anbieter, die in diesem Artikel zur Verfügung gestellt werden, sollen bei der Suche nach technischen Informationen helfen. Die Inhalte können ohne weitere Ankündigung geändert werden. Swyx garantiert nicht für die Güte von Inhalten anderer Anbieter, noch ist Swyx für diese verantwortlich.

War dieser Beitrag hilfreich?

0 von 0 fanden dies hilfreich

Haben Sie Fragen? Anfrage einreichen

Kommentare

0 Kommentare

Zu diesem Beitrag können keine Kommentare hinterlassen werden.