© saicle/Shutterstock.com
Verknüpfung eines Anrufs mit der Limbas-Datenbank

Anrufmonitor in Limbas


Limbas ist ein Open-Source-PHP-Framework, das die Umsetzung von individuellen Datenbankanwendungen ermöglicht. Durch den modularen Aufbau, die SOAP-Schnittstelle und die Möglichkeit, es mit eigenen Skripten zu erweitern, lassen sich neue Features leicht in Limbas integrieren. Ein praktisches Beispiel ist die Anbindung der AVM FRITZ!Box an Limbas, um den Namen oder die Nummer eines Anrufers in Echtzeit im Browser anzuzeigen, Anrufe zu loggen oder automatisch mit einem bestehenden Datensatz zu verknüpfen. In diesem Artikel soll gezeigt werden, wie diese Funktionalität implementiert und an Limbas angebunden werden kann.

Um die gesamte Funktionalität umzusetzen, werden insgesamt fünf Dateien an unterschiedlichen Stellen hinzugefügt: Die Dateien callmonitor.php, callser­ver. php und CallList.class.php befinden sich auf einem Server, der sich sowohl mit der FRITZ!Box als auch mit dem Limbas-Server verbinden kann. Man kann die Dateien aber auch direkt auf dem Limbas-Server platzieren. Auf diesem werden des Weiteren die Dateien ext_multiframe. inc und ext_main.js im Limbas-Extension-Verzeichnis (<LimbasVerzeichnis>/dependent/EXTENSIONS/) oder einem beliebigen Unterordner erstellt. Der gesamte Beispielcode kann im Limbas-Wiki unter [1] eingesehen werden, Limbas selbst kann unter [2] kostenlos heruntergeladen oder auch online getestet werden.

Der FRITZ!Box Callmonitor

Der Callmonitor einer FRITZ!Box ist ein Dienst, der Informationen über ein- und ausgehende Anrufe zur Verfügung stellt. Damit er genutzt werden kann, muss einmalig auf einem verbundenen Telefon #96*5* gewählt werden, bzw. #96*4*, um ihn wieder zu deaktivieren. Wurde der Dienst aktiviert, werden auf TCP Port 1012 Informationen zu aktuellen Anrufen bereitgestellt, wobei jeder Anruf in mehrere Ereignisse aufgeteilt wird: Klingelt beispielsweise bei einem eingehenden Anruf das Telefon, wird das Ereignis RING ausgelöst, ein ausgehender Anruf wird CALL genannt. CONNECT wird nur ausgelöst, wenn der angerufene Teilnehmer abhebt und so die Verbindung zustande kommt. Wird das Telefonat im Anschluss beendet, wird ein DISCONNECT gesendet.

Für jedes dieser Ereignisse sendet die FRITZ!Box eine Zeichenkette (Abb. 1) mit zusätzlichen Informationen wie Datum und Uhrzeit, anrufende/angerufene Nummer bzw. Nebenstelle, Dauer des Gesprächs in Sekunden (nur bei DISCONNECT) oder Connection-ID. Letztere wird verwendet, um einen Anruf über mehrere Ereignisse hinweg identifizieren zu können.

greth_limbas_1.tif_fmt1.jpgAbb. 1: Output der FRITZ!Box, pass...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang