NEWS
Kamera einschalten wenn alle außer Haus sind
-
Hallo,
ich möchte gerne eine Kamera einschalten wenn alle Bewohner außer Haus sind. Den Anwesenheitsstatus frage ich über die WLAN-Verbindung der Smartphones mit der Fritz!Box ab. Die Werte werden Oder-verknüpft zu einer Variablen "scrAnwesend". Da gleichzeitig eine Telegram-Meldung gesendet wird, soll nur dann die Kamera geschaltet werden wenn sich das Ergebnis der Verknüpfung ändert und nicht bei der Änderung jedes einzelnen Objekts (Bsp.: Ein Bewohner ist zuhause und ein zweiter kommt dazu, dann braucht die Kamera kein zweites mal abgeschaltet werden).Die Verknüpfung funktioniert auch, allerdings kann ich die Wertänderung nicht abfragen, da ja nur Wertänderungen von Objekten abgefragt werden können.
Also habe ich ein Objekt "Anwesend" erstellt und dieses abgefragt. Dabei habe ich festgestellt, dass Objekte scheinbar erst bei Ende des Scripts aktualisiert werden, d.h. dessen Änderung kann ich im selben Skript nicht abfragen.
Hier der Anfang meines Skripts:
Mit diesem Skript erhalte ich folgende Ausgaben (Objekt "Anwesend" und Variable "scrAnwesend" ändern ihren Wert quasi "antizyklisch":
20:28:45.896 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: WLAN Status eines Smartphone wurde geändert 20:28:45.897 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: true 20:28:45.897 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: false 20:28:56.489 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: WLAN Status eines Smartphone wurde geändert 20:28:56.490 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: false 20:28:56.490 info javascript.0 (9532) script.js.Alarmanlage.Kameras_aktivieren: true
Gibt es einen Weg, zuerst eine Variable/Objekt/Sonstwas mit logischen Verknüpfungen zu generieren und dann auf die Wertänderung der Verknüpfung im weiteren Verlauf des Skript zu reagieren?
Viele Grüße,
Stefan -
@Erbse Ich realisiere das mit dem Adapter "Fritzbox CheckPresence", da kannst du die Anwesenheit einzelner abfragen oder auch ob irgend wer zu Hause ist.
-
@Jan-S100 Vielen Dank, damit wird keine Verknüpfung mehr benötigt.
Abgesehen davon, nur aus Interesse: Gäbe es eine Möglichkeit, das Ergebnis einer Verknüpfung im späteren Verlauf eines Skripts abzufragen?
-
@Erbse
Du kannst eine Variable im selben Script auch abfragen. Und fast immer dran denken, der Variable bei Scriptstart einen Zustand zuzuweisen, sonst kann es bei Abfragen zu Fehlermeldungen kommen!Enrico
-
@RappiRN Ja, abfragen einer Variablen geht natürlich, aber ich kann nicht auf die Wertänderung einer Variablen triggern. Ich habe jetzt zwei Skripte: Eines wertet die Anwesenheit aus und generiert ein Objekt "Anwesend". In einem zweiten Skript wird auf die Änderung von "Anwesend" reagiert und die Kamera geschaltet.
Da ich den TR-064 Adapter eh laufen habe, habe ich mich für diese Lösung entschieden. Mit dem Fritzbox CheckPresence wäre es natürlich auch gegangen.
Vielen Dank an alle! -
Keine Ahnung ob es ein Apple/Hardware oder IOS Problem ist .
Mit verschiedenen Adaptern wollte ich Ab-oder Anwesenheit darstellen , ist mir nicht gelungen weil das IPhone trotz der Einstellung ,nie in dem Wlan Standby zu gehen , permanent sich aus dem Wlan verabschiedet hat,wenn der Bildschirm ausging. -
Ich habe mir das gerade noch einmal in Blockly (das benutze ich nur) angesehen. Da kann man eine Variable auch triggern, damit wäre dann deine Anforderung erfüllt.
Hier mal ein Beispiel:
Enrico