INSTAR Deutschland GmbHINSTAR Deutschland GmbH

Netzwerk Menu // INSTAR MQTT Broker



Diskutieren Sie diesen Artikel im INSTAR Forum

Alle Kamerafunktionen Ihrer INSTAR Full HD-Kamera können über die HTTP/S CGI-Schnittstelle gesteuert werden. Dies ist die Schnittstelle, die von der Web-Benutzeroberfläche und allen INSTAR Smartphone-Anwendungen verwendet wird. Im Smarthome und Internet of Things (IoT) Bereich gibt es ein weiteres Protokoll, das weit verbreitet ist und einige Vorteile gegenüber dem klassischen HTTP bietet - das Protokoll heißt MQTT. Das Hinzufügen einer MQTT-Schnittstelle * zu unseren Full HD-Kameras macht das Hinzufügen dieser Kameras zu einem bestehenden Smarthome - fast - zu einfach :)

Konfigurieren Sie Ihren INSTAR MQTT Broker

Konfigurieren Sie Ihren INSTAR MQTT Broker

MQTT aktivieren Der MQTT-Dienst ist standardmäßig deaktiviert. Verwenden Sie diesen Schalter, um den Broker zu starten.
Externen MQTT Broker verwenden Standardmäßig wird der interne 127.0.0.1 Broker verwendet. Wenn Sie Ihre Kamera an einen anderen Broker anbinden möchten, aktivieren Sie hier die Option und geben Sie die Adresse unten ein.
MQTT Server Adresse Standardmäßig wird der interne 127.0.0.1 Broker verwendet. Wenn Sie Ihre Kamera an einen anderen Broker anbinden möchten, aktivieren Sie oben die Option und geben Sie hier die Adresse ein.
MQTT Server Port Dies ist der Port, über den der MQTT-Broker eine Verbindung zu Clients ohne TLS-Verschlüsselung herstellt. Der Standardwert ist 1883.
MQTT Server Port (SSL) Dies ist der Port, den der MQTT-Broker verwendet, um eine Verbindung zu Clients mit TLS-Verschlüsselung herzustellen. Der Standardwert ist 8883.
Authentifizierung Die Authentifizierung muss aktiviert sein, wenn Sie die Kamera als Broker verwenden. Wenn Sie bereits einen anderen Broker in ihrem Netzwerk haben und die Kamera als Klient einbinden, kann sie, wenn gewünscht, deaktiviert werden.
Benutzername Geben Sie den Benutzernamen ein, den Sie für den Zugriff auf den MQTT Broker verwenden möchten.
Kennwort Fügen Sie hier das entsprechende Passwort hinzu.
Zertifikat herunterladen Wenn Sie die TLS-Verschlüsselung für Ihr MQTT-Netzwerk verwenden, muss jeder Client über den richtigen Schlüssel verfügen, damit er sich mit Ihrem Broker verbinden kann. Dieser Schlüssel kann hier heruntergeladen werden.
Serverzertifikat hochladen Der MQTT Broker verwendet für die TLS-Verschlüsselung ein offizielles CA-Zertifikat - das gleiche, das auch für die Verbindung mit Ihrer Kamera über HTTPS verwendet wird. Wenn Sie ein benutzerdefiniertes Zertifikat für Ihr MQTT-Netzwerk benötigen, können Sie es hier hochladen.

Achtung

Der Benutzername und das Kennwort darf maximal 30 Zeichen lang sein, es muss alphanumerisch sein, wobei folgende Sonderzeichen unterstützt werden: ! # ( ) * - . / ? @ [ ] ^ _ { | } < . Folgende Sonderzeichen werden derzeit nicht unterstützt: ä ö ü ´ " ' , \> ; ~ $ § % +

Wie spricht man MQTT

Wenn Sie daran interessiert sind, Ihre Kamera über die MQTT-Schnittstelle zu einem Smarthome-System hinzuzufügen, sind Sie wahrscheinlich bereits mit unserer HTTP/S CGI-Schnittstelle vertraut, mit der Sie Befehle über Ihren Webbrowser an Ihre Kamera senden können.

Mit MQTT funktioniert es sehr ähnlich. Jeder CGI-Befehl entspricht einem MQTT-Topic und jedes Topic kann bestimmte Payloads tragen. Um beispielsweise den ersten Bewegungserkennungsbereich Ihrer Kamera zu aktivieren, können Sie den folgenden CGI-Befehl senden:

param.cgi?cmd=setmdattr&-name=1&-enable=${val}

Dabei kann der Wert (val) 0 oder 1 sein - je nachdem, ob Sie den Erkennungsbereich deaktivieren oder aktivieren möchten.

In MQTT sieht das Gleiche wie folgt aus:

alarm/area1/enable	{"val":"0"}, {"val":"1"}

Das Topic, um den Bereich ein- oder auszuschalten, ist alarm/area1/enable und Sie müssen entweder einen Wert von 1 oder 0 senden, um ihn zu schalten.

Eine Übersicht über alle verfügbaren MQTT Topics und deren Payloads finden Sie hier.

Syntax

Um einen solchen Befehl zur Kamera zu senden, muß zuerst ein instar/ vorangestellt werden. Um genau die richtige Kamera anzusprechen haben Sie jetzt 3 Möglichkeiten. Entweder Sie nutzen /local/ um die Kamera anzusprechen auf der der MQTT Broker läuft. Oder Sie bennen eine spezifischen Kamera anhand ihrer (LAN!) MAC Adresse. Wenn die LAN MAC Ihrer Kamera beispielsweise 10:D1:DC:21:8F:96 lautet, dann ist die MQTT ID dieser Kamera 10D1DC218F96 und das MQTT Topic muß entsprechend /10D1DC218F96/ beinhalten, um die Kamera anzusprechen. Und als letztes haben Sie auch die Möglichkeit über /all/ gleich alle Kameras im MQTT Netz aufeinmal anzusprechen:

  • instar/local/alarm/area1/enable
  • instar/10D1DC218F96/alarm/area1/enable
  • instar/all/alarm/area1/enable

Nachdem sie ein solches Befehl Topic aktualisiert haben, wird Ihre Kamera ein Status Topic zurückgeben, um Ihnen zu sagen, dass alles funktioniert hat:

  • instar/local/alarm/area1/enable Befehl Topic
  • instar/local/status/alarm/area1/enable Status Topic

Mehr Informationen hierzu finden in unseren MQTT Topics und Payloads Übersicht.

Welche Software kann ich verwenden?

Wir haben eine ständig wachsende Liste von Software, die mit dem MQTT-Protokoll kompatibel ist. Ein einfacher Einstieg sind Dashboard und Debugging Awendungen, die auf Ihrem Android-Telefon oder unter Windows oder macOS installiert werden können:

  1. Android Apps für MQTT
  2. Windows und macOS Apps für MQTT

Beide Android-Apps sind einfache Dashboards, mit denen Sie Ihre Kamera über die MQTT-Schnittstelle steuern können. Die Desktop-Apps können Sie verwenden, um die Verbindung zur Kamera zu testen, Interaktionen zwischen Ihrer Kamera und der Client-Anwendung aufzuzeichnen und Ihr MQTT-Netzwerk zu debuggen.

Sie können auch das MQTT Log der Kamera einsehen. Dort werden alle Fehlermeldungen aufgeführt:

http://Kamera-IP/tmpfs/mqtt-log

INSTAR MQTT Debug Log

Für kompatible Smarthome Systeme lesen Sie bitte unsere Anleitungen :

  1. Home Assistant
  2. Node-RED
  3. OpenHAB 2
  4. Athom Homey
  5. Homematic
  6. Loxone
  7. homee
  8. IOBroker
  9. FHEM

Lesen Sie unser FAQ, wenn Sie ein selbstsigniertes SSL-Zertifikat für den INSTAR MQTT-Broker verwenden möchten.


* Eclipse Mosquitto

Das INSTAR MQTT Interface basiert auf dem Eclipse Mosquitto Open Source MQTT Broker. Der Quellcode kann von Github heruntergeladen werden und ist unter Eclipse Public License 2.0 verfügbar.