NEWS
2 Bewegungsmelder (Aqara) sollen einen Lampe schalten
-
@aphofis und
damit kann ich nichts anfangen. Aber lies Dir das in Ruhe durch und beachte alle Hinweise.
-
@mickym
Wenn ich auf Plattenstapel umschalte ist der leer!
-
so besser !?
-
@aphofis Na ja das parallel ist prinzipiell richtig und 2 Change Nodes und in der Mitte die Trigger node auch - aber das wars dann auch mit richtig. Warum hast Du nun die flow Variable bad_motion genannt und nicht wie ich empfohlen habe, ein Objekt gemacht, damit du es mal für mehrere Schalter verwenden kannst, warum hälst Du nicht exakt was ich schreibe?
Am Besten erstellst Du ein Objekt im Flow Kontext, so dass es Du später auch für andere Schalter nutzen kannst. Also zum Beispiel Schalter.Bad. Am Besten nimmst Du direkt eine ChangeNode und setzt diese Eigenschaft auf true.
Du hast die Flowvariable anders genannt und nicht auf true, sondern auf false gesetzt, warum?
Anschließend nimmst Du den Trigger, der erst mal nichts schickt und erst nach 15 Minuten ein false schickt.
Deine Trigger Node schickt zu Beginn einen String "1". Warum?
Anschließend setzt Du mit einer weiteren ChangeNode die Eigenschaft Schalter.Bad wieder auf false und die payload wird ja dann an das Licht weitergeleitet.
Tja und Du machst halt ein true. Keine Ahnung, wenn Du es immer besser weißt, dann spare ich mir meinen Text.
Wenn Du den Flow korrigiert hast, dann beschreibe mir bitte mit Worten im Text, was passiert wenn Du den Schalter betätigst, das Licht einschaltest und dann nach 5 Minuten das Licht beim Rausgehen ausschaltest.
Und dann beschreibe noch kurz was passiert, wenn Du den Lichtschalter einschaltest und dann nichts tust.
-
@mickym Oder war etwa Deine Idee - das Deine Flowvariable was mit dem Bewegungsmelder zu tun haben soll und Du ihm gleich über den Flowkontext von der Ferne winken wolltest, dass er gefälligst false und somit nichts tun soll?
-
@mickym
ich wusste nicht das du ein objekt als Datenpunkt meinst
Ganz einfach, weil ich von den einzenen nodes keine Ahnung habe ich habe das 1 jetzt geändert in true und bei dem Rest bin ich bei. -
@mickym hihi ich habe das so verstanden, das wenn man aus dem Kontextmenü flow auswählt das dann der Flow angesprochen wird.
-
beim Schalten des Schalter geht Licht an und geht nach x min aus. Wenn ich den Lichtschalter ausschalte schaltet das Licht aus aber was jetzt die Steuerung macht keine Ahnung. Ich weiß nicht was das bewirkt wenn man auf flow umstellt.
Objekt Schalten.Bad habe ich erstellt bzw Ordner ist Schalten Objekt ist Bad -
@aphofis Meinte ich auch nicht.
Ein Objekt erstellt man in dem man dem Objekt einen Namen und eine Eigenschaft gibt.
Das heißt, das Objekt heißt Schalter und die Eigenschaft Bad.
Ganz einfach, weil ich von den einzenen nodes keine Ahnung habe ich habe das 1 jetzt geändert in true und bei dem Rest bin ich bei.
Na aber Du willst doch eine Ahnung haben und Du solltest beim Trigger nicht die 1 auf true ändern, sondern der Trigger soll erst mal gar nichts senden.
Ich mach Dir den Flow fertig und dann kannst Du Fragen stellen und - Deine Kabel sind durcheinander.
Wie Du siehst hast Du damit im Kontext ein Objekt Schalter erstellt und eine Eigenschaft Bad, die den Wert true hat:
Nimm jetzt besser meinen Flow:
Das wäre ja noch schlimmer, damit hättesr Du im Trigger
ein Wort "true" als payload versendet. -
Oh gott ne das ne schlechte Schleife
woher hat denn jetzt Kontextdaten Bad_Motion hergeholt und steht auf true !?
Ist schalter.bad ein virtueller schalter !? -
@aphofis Das stammt doch von Deinem Flow. Von meinem habe ich Dir doch einen Screenshot von dem Flowkontext gepostet.
-
@mickym alles klar den muss man löschen!
So ist es dann wohl wie gewollt
-
@aphofis sagte in 2 Bewegungsmelder (Aqara) sollen einen Lampe schalten:
Ist schalter.bad ein virtueller schalter !?
Nein das ist ein Variable, die für den ganzen FLOW Gültigkeit hat.
Wie Du siehst gibt es auch einen NODE Kontext - der hat Gültigkeit innerhalb einer function Node.
Und es gibt einen GLOBAL Kontext, dessen Variablen haben über alle Flows Gültigkeit
-
@mickym ok
-
@aphofis sagte in 2 Bewegungsmelder (Aqara) sollen einen Lampe schalten:
@mickym alles klar den muss man löschen!
So ist es dann wohl wie gewollt
Nein wenn Du meinen Flow nimmst - NUR EINE Variable. Ich hatte doch in beiden Change Nodes Schalter.
Vor der trigger Node ist der Schalter true und signalisiert, dass der Schalter betätigt oder aktiv ist. Sobald der trigger abgelaufen ist, wird die Eigenschaft Schalter.Bad auf false gesetzt und signalisiert, dass der Schalter nun nicht mehr als aktiv gilt.
Soweit verstanden?Dann beschreibe mir bitte was passiert wie ich unten beschrieben habe.
-
@mickym ja habe deinen Flow genommen.
Habe die falschen objekte gelöscht ist nur noch Schalter.Bad -
@aphofis Gut - Können wir dann auf meinen Wunsch zurückkommen?
Wenn Du den Flow korrigiert hast, dann beschreibe mir bitte mit Worten im Text, was passiert wenn Du den Schalter betätigst, das Licht einschaltest und dann nach 5 Minuten das Licht beim Rausgehen ausschaltest.
Und dann beschreibe noch kurz was passiert, wenn Du den Lichtschalter einschaltest und dann nichts tust.
-
@aphofis
Wenn man den Lichtschalter betätigt, dann wird Schalter ~ Bad also dieser flow wird für 15 min. auf true gesetzt. Demnach halt der Lichtschalter. Nach diesen 15 min. wird schalter bad wieder auf false gesetzt und der Lichtschalter auf false
dh. die flow wird für 15 min aktiv auf true gehalten danach ausgeschaltet -
@aphofis Na ja ist halt nicht exakt und das ist immer das Problem.
Wenn der Datenpunkt Lichtschalter Bad, also durch den Schalter getriggert wird, dann wird die Nachricht sofort an den Datenpunkt Bad Decke weitergeleitet, also den Datenpunkt des Licht auf den Wert des Schalters gesetzt.
Gleichzeitig setzt das Nachrichtenobjekt die Flowvariable Schalter.Bad auf true und triggert die trigger Node. Diese setzt, aber nur falls zwischenzeitlich nicht erneut ein Nachrichtenobjekt ankommt, das durch Betätigen des Lichtschalters erzeugt wird, nach 15 Minuten die Flowvariable Schalter.Bad auf false und gleichzeitig schaltet es mit der payload, die die trigger Node ja auf false gesetzt hat, das Licht auf false.
wird schalter bad wieder auf false gesetzt und der Lichtschalter auf false
Der Lichtschalter wird gar nicht gesetzt - das darf man auch nicht, da dieser nur durch deine Hardware gesetzt wird (auch wenn Du diese im Moment nur simulierst) und immer den Zustand des Schalters widerspiegelt.
Merkst Du wie wichtig hier Genauigkeit ist?
So nun musst Du noch im Bewegungsmelder Flow - der sich HOFFENTLICH im gleichen Flow befindet??? - anhand der Variablen die Signale des Bewegungsmelders durchlassen oder blockieren.
-
Wie weit bist Du? Bist Du noch da?