Hallo,
folgendes DOIF hat heute um 09:00 ausgelöst und ist auf cmd3 gegangen. Das verstehe ich nicht.
(([1_anwesend] eq "on" and [20:00-09:00|8]) or ([2_anwesend] eq "on" and [20:00-09:00|8]) or [22:00-09:00|8])
(set Lampen_Bett on)
DOELSEIF
(([1_anwesend] eq "on" and [20:00-10:30|7]) or ([2_anwesend] eq "on" and [20:00-10:30|7]) or [22:00-10:00|7])
(set Lampen_Bett on)
DOELSE
(set Lampen_Bett off)
Eigentlich müsste
or [22:00-10:00|7])
in cmd2 doch dafür sorgen, dass am Wochenende (und Samstag gehört doch zum Wochenende) bis 10:00 Uhr cmd2 aktiv bleibt.
Wo liegt mein Denkfehler?
Gruß,
Jogi
Ich würde im cmd2 die Zeitsteuerung mal zusammen fassen.
Wenn du das so lassen willst, dann mal ein paar klammern für die Verknüpfungen mehr setzen.
Ich habe damals in der Ausbildung gelernt :
Ein oder vor einem und wirds ohne klammern ungesund.
Gesendet von meinem E6653 mit Tapatalk
Zitat von: sash.sc am 02 Februar 2019, 13:09:51
Ein oder vor einem und wirds ohne klammern ungesund.
Bei mir sind es aber quasi 3 "oder" OHNE "und", denn die "und" sind ja in einer separaten Klammer und dürften das nicht beeinflussen.
Oder stehe ich jetzt total auf dem Schlauch?
Möglicherweise willst du so etwas:
([1_anwesend] eq "on" and ([20:00-09:00|8] or [20:00-10:30|7]) or [2_anwesend] eq "on" and ([20:00-09:00|8] or [20:00-10:30|7] or [22:00-09:00|8] or [22:00-10:00|7]))
(set Lampen_Bett on)
DOELSE
(set Lampen_Bett off)
Zitat von: Damian am 02 Februar 2019, 13:31:02
Möglicherweise willst du so etwas:
([1_anwesend] eq "on" and ([20:00-09:00|8] or [20:00-10:30|7]) or [2_anwesend] eq "on" and ([20:00-09:00|8] or [20:00-10:30|7] or [22:00-09:00|8] or [22:00-10:00|7]))
(set Lampen_Bett on)
DOELSE
(set Lampen_Bett off)
Ok, vielen Dank, das werde ich mal ausprobieren. Aber ich verstehe meinen Fehler immer noch nicht.
Warum funktioniert mein DOIF nicht?
Ich möchte ja gerne was lernen.
Gruß,
Jogi
Zitat von: Jogi am 02 Februar 2019, 13:45:59
Ok, vielen Dank, das werde ich mal ausprobieren. Aber ich verstehe meinen Fehler immer noch nicht.
Warum funktioniert mein DOIF nicht?
Ich möchte ja gerne was lernen.
Gruß,
Jogi
Um 09:00 Uhr triggerte das Intervall und die erste Bedingung war nicht wahr. Wenn ein Intervall nicht triggern soll, dann musst du ? davor setzen.
Zitat von: Damian am 02 Februar 2019, 13:58:29
Um 09:00 Uhr triggerte das Intervall und die erste Bedingung war nicht wahr. Wenn ein Intervall nicht triggern soll, dann musst du ? davor setzen.
Entschuldige, wenn ich noch mal nachfrage, aber das verstehe ich nicht.
in der ersten Bedingung steht:
(([1_anwesend] eq "on" and [20:00-09:00|8]) or ([2_anwesend] eq "on" and [20:00-09:00|8]) or [22:00-09:00|8])
Jede Zeit ist mit
[...|8]
verknüpft, was, wenn ich es richtig verstehe bedeutet, "nur an Werktagen". Wieso löst das dann am Samstag aus?
Zitat von: Jogi am 02 Februar 2019, 17:04:01
Entschuldige, wenn ich noch mal nachfrage, aber das verstehe ich nicht.
in der ersten Bedingung steht:
(([1_anwesend] eq "on" and [20:00-09:00|8]) or ([2_anwesend] eq "on" and [20:00-09:00|8]) or [22:00-09:00|8])
Jede Zeit ist mit
[...|8]
verknüpft, was, wenn ich es richtig verstehe bedeutet, "nur an Werktagen". Wieso löst das dann am Samstag aus?
Stimmt, es sind nur Werktage angegeben. Ich habe es bei mir gerade nachgestellt - es wird bei mir nicht getriggert.
Am besten list vom betroffenen Zustand vom DOIF posten, dann kann man mehr dazu sagen.
Edit: Ich sehe gerade, dass deine Angaben über Mitternacht gehen. Das wird nicht gut funktionieren, denn ein Intervall welches am Freitag einschaltet, kann normalerweise nicht am Samstag ausschalten. Die Wochentagangabe bezieht sich auf den Anfang und das Ende.