Wie kann ich denn eine Variable als Uhrzeit in Flowkarten einsetzen?
Hintergrund: an einigen Locations arbeite ich noch mit Bridges und habe daher dort keine Erweiterungsapps verfügbar.
Nun habe ich mir div Flows geschrieben die irgendwas zeitgesteuert an- und ausschalten.
Wenn ich die Schaltzeiten aber von unterwegs ändern möchte, so habe ich per Smarthome keinen Zugriff auf die Flows (empfinde ich als einen echten Mangel von Homey). Um die (Start- und Ende-) Zeiten dennoch aus der Ferne ändern zukönnen will ich die als (Text) Variable zur Verfügung stellen und die Flows die Variablen überprüfen lassen.
klappt aber nicht. zB mit Startzeit1txt = 17:35
Um 17:35 passiert aber … nix
Wobei Dein Flow sowieso generell falsch aufgebaut nie funktionieren wird.
Dein Flow in Worten lautet ungefähr so:
Wenn die Büsum Lampe ausgeschaltet wird (diese Karte bedeutet nicht, dass die Lampe eingeschaltet ist!!!) muss es zu diesem Zeitpunkt EXAKT Uhrzeit 1 oder 2 sein, damit die Büsum Lampe wieder eingeschaltet werden soll.
Wie Du vielleicht merkst, macht der Flow auch absolut keinen Sinn.
Die ersten Karten eines Flows sind immer s.g. Trigger bzw. Auslöser. Ein Trigger ist eine Zustandsänderung im Millisekundenbereich.
Die Abfrage von Zuständen, z.B. ob eine Lampe ausgeschaltet ist, wird über die Karten im Und… Bereich gemacht.
Also müsste der Flow z.B. so aufgebaut sein: Wenn…
– Es ist Uhrzeit 17:35 Uhr Und…
– Die Lampe Büsum ist ausgeschaltet Dann…
– Schalte die Lampe Büsum ein
Wenn Du für diese Anwendung einen Standard Flow anstelle eines Advanced Flows benutzt, dann kannst Du jederzeit die Zeit 17:35 Uhr ändern.
Eine weiterer Ansatz könnte die Nutzung von Alarmen bzw. Weckern sein. Diese sind in der Smartphone App unter Mehr → Alarme zu finden.
Solltest Du nur die Zeit ändern wollen, dann braucht man das nur bei dem entsprechenden Wecker zu machen und der Flow startet dann zur geänderten Zeit. Mit dieser Variante sind auch Advanced Flows möglich:
Hätte gedacht das Alarme auch bei der Bridge verfügbar sind. Dann halt die Standard Flows nutzen.
Idealer wäre es meiner Meinung nach das Licht sowieso anhand der Helligkeit und nicht der Zeit zu schalten. Oder, falls für die Bridge vorhanden, anhand des Sonnenuntergangs.
Also müsste der Flow z.B. so aufgebaut sein: Wenn…
– Es ist Uhrzeit 17:35 Uhr
genau diese Zeit ist es ja, die ich als Variable ersetzen möchte. Aber die Logikkarte die das abfragt erlaubt keinen Ersatz des Ausdruckes Zeit als Variable
Und…
– Die Lampe Büsum ist ausgeschaltet
Das war die Bedingung die auf die schnelle im Testflow IMMER true sein sollte. Ja, da habe ich nicht bedacht, dass es (so wie ich es aufgebaut habe) eben KEINE Zustandsabfrage ist, sondern nur aus Trigger zu gebrauchen ist
Dann muss ich wohl doch wieder zurück umdenken und einen Standardflow basteln (bei dem ich ja die Zeiten auch per Smartphone ändern kann) , der dann einen Advanced Flow aktiviert, der wiederum die Schaltungen durchführt. Umständlich, aber bis zur Umrüstung von Bridge auf PRO (habe ich mich zu entschlossen, denn die Bridge ist nichts habes und nichts ganzes…) ist das glaube ich das kleinste Übel.Und dann klappts auch mit den Alarmen.
Undertaker:
Wenn du mit Flows gar nicht weiter kommst, frag einfach hier im Forum. Am einfachsten ist es, wenn du beschreibst, was du erreichen willst.
Thomas:
Da komme ich ganz sicher noch viele Male drauf zurück. Bin ja noch am Anfang meiner “Homey-Karriere”.
Ich vermute Du hast meinen geschriebenen Flow nicht verstanden. Für die Zeit wird keine Variable benötigt:
Standard Flows kann man ja auf einem Smartphone erstellen und bearbeiten. Wenn Du die Zeit also mal ändern willst, dann musst Du den Flow einfach nur bearbeiten, die Zeit anpassen und den Flow speichern. That’s it.
Wenn die Bridge Webhooks empfangen kann, könntets du die Logik auf deinen Homey Pro laufen lassen und Webhooks an die Bridge schicken.
Bei webhooks kannn ich aber nicht helfen, das verwende ich bisher nicht.