MQTT Alarmzeitplan

Servus an die Community,
im Forum selbst bin ich neu, weil meine bisherigen Probleme immer anhand bereits bestehender Fragen dann gelöst werden konnten. Ich habe lange nach Fehlern gesucht, aber keine gefunden. Eventuell sehe ich den Wald vor lauter Bäumen nicht.

Zu meiner Ausgangsstellung:
Ich betreibe auf meinem Hof vier Instarkameras. Das Modell 9008 im Hof, eine 9020 im Garten und eine 8003 hinter der Garage, sowie eine 8003 vor der Garage. Alle Kameras, Homeassistant OS und die Synology laufen mit der aktuellsten Software (Stand: 30.06.2022).

Für alle Kameras habe ich je vier Zeitpläne:

  •    „24/7“ für durchgehende Alarmmeldungen
    
  •    „daheim“ für Alarmmeldungen ab 23:30 bis 05:30 Uhr
    
  •    „Arbeit“  für Alarmmeldungen ab 23:30 bis 04:30 Uhr und 08:30 bis 12:00 Uhr
    
  •    „Aus“ für keinerlei Alarmmeldungen
    

Die Kameras und die jeweiligen Alarmzeitpläne habe ich bisher in FHEM geführt und kann den Alarmzeitplan für alle Kameras gleichzeitig mit einem ShellyButton per CGI-Befehl ändern lassen (Knopfdruck). Alle Kameras sind ebenso in meiner Surveillance Station auf meiner DS918+ eingebunden. Somit erhalte ich bei Alarm eine Push-Up-Nachricht auf meinem Handy durch die „DS cam“ App (auch Push-Up-Nachricht durch Instar-App, aber abgestellt – einmal reicht ja).

Seit einiger Zeit spiele ich nun mit Homeassistant herum und möchte irgendwann FHEM abschalten. Ebenso ist der Wunschgedanke, dass meine Kameras automatisch den Alarm-Status „24/7“ und „daheim“ erhalten, wenn das Handy meiner Frau und auch meines in Homeassistant als abwesend erkannt wurden.
Ich habe auf Homeassistant den Mosquitto Broker installiert und auf allen Kameras den MQTT Client aktiviert. Die Status-Meldungen jeder Kamera erhalte ich und kann dementsprechend die Topics und die Payloads auslesen/empfangen. Somit schließe ich Konfigurationsfehler im MQTT Broker und auch auf den Kameras aus. Auch Topics wie z. B. instar/garten/features/ptz/movestep mit dem Payload {„val“:„left“} funktionieren einwandfrei.

In Homeassistant habe ich eine Automatisierung angelegt – bisher noch ohne Auslöser – sondern nur mit auszuführenden Ereignissen. Die Automatisierung kann ich derzeit manuell in Homeassistant auslösen. Bei der Automatisierung „Garten 24/7“ sende ich 14 Topics an die Kamera Garten. Jeder Wochentag (Mo-So) und die Webui (Mo-So) erhalten somit den Payload {„val“:„PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP“}. Der MQTT Broker und die Kamera erhalten diesen und führen ihn auch aus (Alarmzeitplan zeigt Änderung in Webui auch an) jedoch erhalte ich weder von der Instar-App, noch von der „DS cam“ App eine Push-Up-Benachrichtigung, obwohl diese aktiv ist.

Nun habe ich viel getan und gemacht, komme aber nicht auf die Lösung. Ich hoffe, ihr könnt mir helfen.

Hallo,

und willkommen!

Kann es sein, dass da da falsche Topic aktualisiert wird (die Anzeige in der WebUI anstelle des aktiven Zeitplans):

Das Topic lautet bei mir

instar/garten/alarm/schedule/monday
mit dem Payload {„val“:„PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP“}
und instar/garten/alarm/schedule/monday/webui.
Dementsprechend für alle Tage von Mo bis So.

Hallo,
ich werfe nur kurz in die Runde, beim Setzen des Zeitplans auch gleich den Backup-Zeitplan zu setzen.

Ok, ich habe es gerade auch ausprobiert - da kommt einem die Alarm-Pausierung in die Quere (das Glocken Symbol in der WebUI) - diese wird automatisch ausgelöst wenn man den Zeitplan per MQTT schaltet. Es gibt da zwei CGI Befehle mit denen man diesen Pausierung aktivieren/deaktivieren kann. Leider sind diese noch nicht in der MQTT API mit drinnen:

Der erste pausiert den Alarm und der zweite hebt diese Pausierung wieder auf. Wenn man jetzt zum Beispiel den Alarm aktivert hat:

{„val“:„PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP“}

Kann man per Homeassistant noch den zweiten CGI von den beiden hinterher schicken - dann ist der Alarm wieder aktiv.

die CGI-Befehle, die in in meinem FHEM hinterlegt sind, setzen den Zeitplan und den Backup-Zeitplan.
Das ist dann bei MQTT …/alarm/schedule/monday und dazu noch …/alarm/schedule/monday/webui oder verwechsel ich da etwas? Zumindest habe ich die Automatisierung so angelegt, dass erst /monday und dann im nächsten Topic das /monday/webui gesetzt wird.

Nein, das passt. Siehe letzten Absatz:

Es ist leider etwas verwirrend - die Kamera führt da etwas „Blackbox Magic“ im Hintergrund durch. D.h. auf der Kamera sind Skripte hinterlegt die ausgelöst werden, wenn man bestimmte CGI Befehle sendet (oder per MQTT updated).

Man kann diese Skripte auch direkt über den insu Befehl und eine ID auslösen.

Also was bei dir schief läuft ist:

  1. Du updatest das monday Topic des Alarmzeitplans, um den Zeitplan für Montag zu deaktivieren (man muß jetzt auch nicht mehr parallel das monday/webui Topic updaten - das wird mit der aktuellen FW bei mir sofort mit nachgezogen)
  2. Die Kamera nutzt aber wieterhin den zuvor aktiven Zeitplan - also sprich: der Alarm läuft weiter.
  3. In dem oben verlinkten Thread hatte ich zwei „insu“ CGI Befehle gepostet. Wenn man davon jetzt den richtigen zur Kamera sendet - gerade auch wieder vergessen welcher es war - ich glaube cmd=insu&-arg=70467840 - dann veranlasst das die Kamera den Zeitplan neu zu laden und damit die Änderung zu übernehmen.

Der umgekehrte Fall - man aktiviert den Zeitplan. Auch hier muß man jetzt nur noch das monday Topic aktualisieren (monday/webui zieht automatisch nach). Jetzt muß man noch den anderen der beiden oben verlinkten Befehle nachsenden - und schon ist der Alarm für Montag wieder aktiv.

@m.polinowski Findet man diese Insu-Befehle im Wiki?

Nein - die sind nicht mit in der Doku. Eigentlich nur für IN STAR S uper U ser gedacht.

Hat es denn jetzt funktioniert?

Ja es hat gestern abend/heute Nacht funktioniert. Ich lasse in der Home Assistant Automatisierung die MQTT-Topics …/monday und …/monday/webui setzen und am Schluss (mit etwas Bastelei) lasse ich die zwei Befehle per Commandline zum Aktualisieren noch laufen. So klappt es perfekt. Besten Dank!

1 Like

Ich glaube das ist gar nicht mehr notwendig - hatte bei meiner Kamera gesehen, dass es jetzt automatisch mitgeschaltet wurde. Alles Teil von diesem INSU Skript ~ aber es schadet natürlich nicht :slight_smile:

Danke für dein Feedback!

Dieses Thema wurde automatisch 2 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.