Hallo,
auf meiner IN-9008 habe ich den MQTT broker aktiviert. In iobroker nutze ich den MQTT broker/client als client, um mich zur Kamera zu verbinden. Wenn ich in iobroker # als subscribe pattern angebe, dann sehe ich auch den ganzen Baum.
Allerdings fehlt nach dem Verbinden von iobroker zur Kamera das topic status/alarm/triggered.
Wenn man geduldig wartet, dann erscheint status/alarm/triggered irgendwann. Wird das Topic eventuell erst erzeugt, wenn ein Alarm ausgelöst wurde?
Topics zu permanenten Kamerazuständen - gespeicherte Positionen, Alarmzeitpläne, Firmware Version, usw. - tragen einen retained Flag. D.h. wenn der Broker einmal über den Zustand informiert wurde hält er an dieser Info fest bis ein Update reinkommt.
Es gibt dann noch Topics die überhaupt keinen Zustand haben und sofern nicht im ioBroker auftauchen - z.B. Pan&Tilt Befehle.
Und sowas wie den Alarmzustand, der zwar als Zustand exisitiert - aber nur für 5s nach der Alarmauslösung und danach wieder verschwindet. Entsprechend gibt dieses Topic keine Flagge mit, dass der Zustand permanent beim Broker hinterlegt werden soll.
Der MQTT Alarmserver ist also mehr als eine Pulse-Alarmierung gedacht, die man verwenden kann, um Aktionen auszulösen. D.h. wenn man immer wissen was so über den Tag verteilt ausgelöst wurde muss man ‚selber mitschreiben‘ (also den entsprechenden Auslöser mit Zeitstempel in eine Datenbank schreiben).
Ok. Aber eventuell wäre es eine gute Idee, den Zustand status/alarm/triggered einmal bei Verbindungsaufbau des clients zum broker zu schicken. Dann ist das Objekt in iobroker angelegt und man kann los programmieren. Ich war jedenfalls sehr verwirrt, weil status/alarm/triggered nicht angezeigt wurde.
Das Problem dabei ist, wenn man einen Alarmserver hat, der nicht zwischen den unterschiedlichen Payloads unterscheiden kann, wird dann jedes mal - wenn die Kamera sich neu verbindet oder das System neugestartet wird - ein Alarm ausgelöst.
Bei den Full HD Kameras konnte man sich da mit Tools wie dem MQTT Explorer helfen. Einfach kurz das Topic im Broker von Hand aktualisieren und schon taucht es auch im ioBroker auf:
Bei den aktuellen Kameras (WQHD 2k+) geht das dann auch schon direkt über die WebUI. Im MQTT Menü findet sich dort jetzt eine Test Button: