Hall zusammen,
ich hatte die commandref so verstanden, dass man mit "set WT-Device WDT_Params all" den Status des betroffenen Gerates so setzen kann, wie es zum Schaltzeitpunkt passiert wäre. HIer mein WT-Device:
defmod Nachtlampe_WT WeekdayTimer FBDECT_FB_08761_0230141 de 1234560|22:15|on 12345|06:20|off 1234560|{sunrise_abs(0,"00:00","23:59")}|off
attr Nachtlampe_WT commandTemplate set $NAME $EVENT
attr Nachtlampe_WT devStateStyle style="text-align:right"
attr Nachtlampe_WT disable 0
attr Nachtlampe_WT event-on-change-reading .*
attr Nachtlampe_WT group Schaltzeitpunkte
attr Nachtlampe_WT room Schaltzentrale,Statuszentrale
attr Nachtlampe_WT stateFormat {my $val;;\
if (ReadingsVal($name, "disabled","") eq "1") {$val = "AUS"}\
else {$val = ReadingsVal($name, "currValue","")};;\
$val}
Wenn jetzt beispielsweise der Stecker auf on ist, hätte ich erwartet, dass mit "set Nachtlampe_WT WDT_Params all" der Stecker auf "off" geht. Es passiert aber nicht.
Viele Grüße
Jürgen
Doppeltes Missverständnis:
"set ... WDT_Params xy" bewirkt zwar eine Neuinitialisierung der angesprochenen WeekdayTimer, aber
- effektiv geschalten wird nur "in der Vergangenheit", wenn "switchInThePast" am betreffenden WDT aktiviert ist, und
- "xy" bestimmt, welche WDT abgesprochen werden. "all" bedeutet: alle Geräte des TYPE WeekdayTimer, also nicht nur der, von dem aus man das Kommando setzt. Wenn es nur den einen betreffen soll, ist "single" die passende Wahl...
Klarer?
Weitere Anmerkungen:
"de" braucht man nur, wenn language nicht in global auf DE steht, und 1234560 ist eigentlich auch unnötig, diese Angabe kann man weglassen, wenn alle Tage gemeint sind (es schadet aber auch nicht mehr), und "12345" soll wohl eher "8" bzw. "!$we" bedeuten.
Zitat von: Beta-User am 29 November 2020, 17:18:47
- effektiv geschalten wird nur "in der Vergangenheit", wenn "switchInThePast" am betreffenden WDT aktiviert ist, und
Klarer?
Leider nein. Was bedeutet nur "in der Vergangenheit"? Hast Du ein Beispiel für mich.
Die Einstellungen zum Datum kommen aus dem Widget 8)
Viele Grüße
Jürgen
das bedeutet, dass grundsätzlich bereits vergangene Schaltungen/Zeitpunkte nicht nachgeholt werden. Erst der nächste Schaltzeitpunkt führt dann zu einer Aktion durch den WDT.
Wenn man das Verhalten "schalte immer auf den letzten zurückliegenden Wert" (also das, was grade wäre, wäre der WDT zu diesem Zeitpunkt schon initialisiert gewesen) haben will, muss man dafür das genannte Attribut setzen.
Danke für die Info. Ich dachte, ich hätte das Attribut gesetzt. War aber nicht so. ::) Jetzt funktioniert es auch.
Danke für die Unterstützung.
Viele Grüße
Jürgen