Zeit (in Dummy gepflegt) regelmäßig in DOIF aktualisieren

Begonnen von Gunther, 23 Oktober 2017, 15:56:18

Vorheriges Thema - Nächstes Thema

Gunther

Nachdem ich mit anderen Versuchen gescheitert bin (https://forum.fhem.de/index.php?topic=78314.new;topicseen#new) und ich einen Tipp bekommen habe mit dem DOIF zu arbeiten, stelle ich meine Frage mal hier:

Ich habe einen Dummy, in dem ich die Zeit der Nachtabsenkung speichere: uhrzeit_nachtabsenkung_aufheben

Mein DOIF setzt lediglich in Abhängigkeit von uhrzeit_nachtabsenkung_aufheben meinen Hausstatus (Dummy haus_Status) auf 1 (anwesend).

Was ich nun möchte ist, dass wenn ich eine Änderung an der Nachtabsenkungszeit vornehme, diese Zeit auch im DOIF berücksichtigt wird. Leider klappt das nicht.
Ich habe in der commandref gelesen, aber leider keinen Ansatz für mein Problem gefunden (hier im Forum suche ich seit 2 Tagen leider erfolglos).

Mein DEF sieht so aus:
([{Value("uhrzeit_nachtabsenkung_aufheben")}|Mo] and [haus_Status:state] <3) (set haus_Status 1)

Habt Ihr einen Ansatz oder eine Idee für mich?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

amenomade

([[uhrzeit_nachtabsenkung_aufheben]|Mo] and [haus_Status:state] <3) (set haus_Status 1) sollte gehen
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Gunther

Ich habe mich anscheinend nicht richtig ausgedrückt.
Mein oben stehendes DOIF funktioniert korrekt.
Leider bekommt es eine Änderung des Dummys nicht mit sondern nimmt die letzte ausgeführte Zeit.

Ist das verständlich?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Per

Zitat von: Gunther am 23 Oktober 2017, 16:22:10Leider bekommt es eine Änderung des Dummys nicht mit sondern nimmt die letzte ausgeführte Zeit.
Bei deiner Variante gibt es auch keinen Trigger auf den Dummy, nur eine Abfrage. Also nur dann, wenn sich haus_status ändert (Trigger) wird auch der Dummy geprüft.
Bei der Variante von amenomade hast du zwei Trigger. Den Dummy und haus_status. Schon mal getestet?

Gunther

#4
Klappt! Genial. Danke Euch beiden.

Jetzt eine Frage dazu:
Meine Variante stellt nur einen Wert da und die von amenomade ein Device, dass bei Änderung triggert. Ist das der Unterschied?

Edit: Und noch eine Zusatzfrage: Mache ich für die einzelnen Wochentage (jeweils ein anderer Dummy) je ein DOIF oder baue ich das besser mit DOIFELSE ein? Oder egal?
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

amenomade

ZitatMeine Variante stellt nur einen Wert da und die von amenomade ein Device, dass bei Änderung triggert. Ist das der Unterschied?
Richtig.

M.M.n. ist es einfacher sowas über weekprofile oder weekdaytimer zu entwickeln. Da hast Du sogar ein widget, um alles zu bearbeiten.
Aber über DOIF geht es auch. Ein "or" in der Zeitbedingung sollte reichen:

(([[uhrzeit_nachtabsenkung_aufheben]|Mo] or [[uhrzeit_nachtabsenkung_aufheben_Di]|Di] or ...) and [haus_Status:state] <3) (set haus_Status 1)
Do kannst sogar auf die dummys verzichten, und userReadings direkt auf dem DOIF setzen, und die Bedingung [[$SELF:readingFuerMontag]|Mo] z.B. nutzen.

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Gunther

Danke Dir!
Jetzt habe ich es vermutlich in der ungünstigsten Variante mit mehreren DOIFs und Variablen entwickelt.
Dafür ist es nun auch für meine Frau pflegbar.
So sieht es nun aus:
https://forum.fhem.de/index.php?topic=78398.msg703484#msg703484
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Per

Zitat von: Gunther am 23 Oktober 2017, 17:15:35Mache ich für die einzelnen Wochentage (jeweils ein anderer Dummy) je ein DOIF oder baue ich das besser mit DOIFELSE ein?
Meine Erfahrungen: entweder je Eingang oder je Ausgang (letzteres ist meine Preferenz) ein DOIF. Alles andere kann dir die Übersicht dermaßen kaputt machen, dass du den Spass an der Sache verlierst.
Das finde ich ja den Vorteil ggü. notify, du hast alle(!) Einflüsse in einem DOIF (bzw. du kannst alle drin haben). Erst recht jetzt mit den DOIF-Readings.

Gunther

Danke für den Tipp!

Ich denke über amenomades Hinweis mit weekdaytimer nach.
Ich weiß nur noch nicht, ob ich damit meine Features (vgl.) Link abgebildet bekomme und eine vernünftige Anwendung über die FHEM Oberfäche möglich ist, bis ich Tablet UI fertig habe.

Freue mich über einen Hinweis dazu.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden