Alarm Server Funktion

Sie können die Alarm Server Funktion nutzen, um eine HTTP-Anfrage an einen verbundenen Server zu schicken. Der Server benötigt eine kompatible Software um die Anfrage als Alarm entgegenzunehmen und weitere Aktionen folgen zu lassen. Diese Funktion wird oft von Heim-Alarm-Systemen unterstützt. Sie können der Anfrage eigene Befehle hinzufügen, um in der Server Software verschiedene Aktionen auszulösen.

Alarm Server hinzufügen


Öffnen Sie die Weboberfläche Ihrer (VGA!) Kamera und navigieren Sie zu Alarm / Alarm Server. Geben Sie Ihre Alarm Server Adresse ein und aktivieren Sie die Funktion. Bitte fügen Sie das http-Präfix vor die IP-Adresse. - z.B. http://192.168.1.66.

Programm

Die Alarm Server Funktion kann mit Alarm Systemen und Heimautomations-Systemen verwendet werden wie dem Open Source Projekt FHEM. Leider, aufgrund der verwendeten Leerzeichen in den URLs der Heimautomation, wird das Programmieren Ihrer Kamera ein wenig komplizierter. Während wir diesen Artikel schreiben, testen wir bereits an einer neuen Version der Weboberfläche für Ihre VGA Kameras , die den Work-Around überflüssig machen. Das Folgende zeigt Ihnen, wie Sie bestimmen können, ob die Kamera den Befehl korrekt versteht und wie Sie den Befehl bearbeiten können, um das Problem zu umgehen.

Heimautomations-Systeme wie FHEM verwenden Leerzeichen in deren URLs die als %20 codiert werden müssen.

Sie müssen einen sogenannten URL-Codierer verwenden um Leerzeichen Ihrer Webadresse zu nutzen. Ein Beispiel-Befehl für das Heimautomations-System FHEM ist das Setzen eines Alarms auf das Auslösen eines Alarm Events. Der Befehl wird für die Kamera zu set%20alarm%20on codiert. Der empfangende FHEM Server wird dann %20 wieder zu einem Leerzeichen decodieren. Falls Ihr FHEM Alarm Server zum Beispiel die lokale IP Adresse 192.168.1.66 hat, ist die Server Adresse, die Sie in die Weboberfläche der Kamera eintippen müssen, damit das Alarm Event aktiviert wird ist:

http://192.168.1.66/fhem?cmd=set%20alarm%20on
(Die maximale Länge der URL ist 128 Zeichen.)

Sie können prüfen ob der Befehl korrekt gespeichert wurde, indem Sie den CGI Befehl http://192.168.1.230/get_params.cgi (192.168.1.230 muss durch die IP-Adresse Ihrer Kamera ersetzt werden) zum Abrufen Ihrer Konfiguration eingeben. Falls Sie noch nicht eingeloggt sind, werden Sie nach den Administrator-Login Daten gefragt. Scrollen Sie nach unten zur Parameter-Liste und suchen Sie nach der Variablen alarm_http_url.

Sie können prüfen ob der FHEM Befehl und die Serveradresse korrekt ist, indem Sie sie die Kamera Konfigurationsseite mit dem CGI Befehl get_params.cgi aufrufen.

Die Serveradresse muss mit der %20 Codierung gespeichert werden.

Jedes Mal wenn ein Alarm ausgelöst wird, wird die HTTP Anfrage an ihr Heimautomations-System gesendet und Ihren eigenen Befehl auslösen.

Problembehebung

Was sollten Sie tun, wenn Ihre Kamera den codierten %20 Befehl nicht speichert?

Wie oben erwähnt, werden Sie wahrscheinlich bereits eine Weboberfläche nutzen die auf die Codierung achtet und den Befehl korrekt abspeichert. - bitte überspringen Sie diesen Paragraph wenn dies der Fall ist. Im Folgenden verwenden wir einen kleinen Trick um die Codierung für uns, statt gegen uns zu nutzen:

Was sollten Sie tun, wenn der CGI Befehl get_params.cgi Ihnen anzeigt, dass der Befehl mit Leerzeichen statt mit %20 gespeichert wurde?

Ihre Kamer sendet jetzt bei jedem Alarm die HTTP-Anfrage. Die Anfrage wird allerdings vor dem ersten Leerzeichen abgeschnitten - macht den Befehl damit unbrauchbar.

Wir können das Problem lösen, indem wir den automatischen URL Codierer die korrekte URL codieren lassen. Dies wird durch Codieren des % in ein %25 durchgeführt. Die Serveradresse wird zu:

http://192.168.1.66/fhem?cmd=set%2520alarm%2520on

Der automatische Codierer wird die korrekte Adresse generieren, sobald Sie diese Adresse bestätigen:

http://192.168.1.66/fhem?cmd=set%20alarm%20on

Um das zu verhindern, codieren Sie das Leerzeichen mit %2520 statt %20..

Bitte den Bestätigen-Button nicht ein zweites Mal drücken - da dies statt der %20 wieder ein Leerzeichen einsetzen würde. Sie können das Ergebnis durch den get_params.cgi Befehl prüfen.

Verwandte Themen:

Mehr