FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: cotecmania am 08 Mai 2023, 10:52:51

Titel: WeekDayTimer - state
Beitrag von: cotecmania am 08 Mai 2023, 10:52:51
Hallo,

wenn ich meine WeekDayTimer disable bleibt der State weiterhin auf active.
Das ist schlecht für manche Darstellungen.
Ist das gewollt so ?
Dann muesste ich mit stateFormat alle umbauen ...

Gruss
Joe
Titel: Aw: WeekDayTimer - state
Beitrag von: juemuc am 08 Mai 2023, 13:57:25
Das kann Dir nur der Entwickler sagen.

Für den WT gibt es einen eigenen Thread:
https://forum.fhem.de/index.php?topic=114168.0

Viele Grüße
Jürgen
Titel: Aw: WeekDayTimer - state
Beitrag von: Beta-User am 08 Mai 2023, 14:26:38
Zitat von: juemuc am 08 Mai 2023, 13:57:25Das kann Dir nur der Entwickler sagen.
Der aktuelle Entwickler kann dazu auch relativ wenig sagen....

An sich dürfte das Verhalten "schon immer so" gewesen sein - ich war meistens bemüht, Eingriffe in das Modulverhalten mit Auswirkungen auf viele User eher zu vermeiden, und grade "state" ist "effektverdächtig".

Aber an sich fände ich es auch sinnvoll, wenn man dem WDT-state ansehen würde, dass er grade nicht aktiv ist. Für die aktuelle (leider buggy!) Version wäre das vermutlich ab Zeile 1352 (je mit einer unveränderten Zeile) in etwa so:
    $attr{$name}{$attrName} = $attrVal;
    if ( $attrVal ) {
      readingsSingleUpdate ($hash, 'state', 'disabled', 1);
      return RemoveInternalTimer($hash,\&WDT_SetTimerOfDay);
    }
    return WDT_Start($hash);

Wobei ich noch unschlüssig bin, ob "disabled" oder "inactive" die bessere Wahl wäre...

Meinungen willkommen (gerne auch im support-Thread).
Titel: Aw: WeekDayTimer - state
Beitrag von: juemuc am 08 Mai 2023, 16:18:52
Hi Beta-User,

enabled und disabled würde mir zwar besser gefallen, aber aufgrund der Historie ist wohl active und inactive die bessere Wahl. Bei meinem Tests wird allerdings nicht "active" sondern der letzte Wert des betroffenen Gerätes angezeigt. Hier das dazugehörige "list"

Internals:
   CFGFN     
   COMMAND   
   CONDITION 
   DEF        TEST de 12|08:00|on 12|16:13|off
   DEVICE     TEST
   FUUID      645902df-f33f-4885-2e40-f2552d55f55ed5e2
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       TEST_WT
   NR         8181
   Profil 1: Montag 08:00:00 on, 16:13:00 off,
   Profil 2: Dienstag 08:00:00 on, 16:13:00 off,
   STATE      off
   STILLDONETIME 0
   TYPE       WeekdayTimer
   eventCount 31
   READINGS:
     2023-05-08 16:13:00   currValue       off
     2023-05-08 16:13:43   disabled        1
     2023-05-08 16:13:00   nextUpdate      2023-05-09 08:00:00
     2023-05-08 16:13:00   nextValue       on
     2023-05-08 16:13:00   state           off
   SWITCHINGTIMES:
     12|08:00|on
     12|16:13|off
   TIMER:
     TEST_WT_midnight:
       HASH       TEST_WT
       MODIFIER   midnight
       NAME       TEST_WT_midnight
       SETTIMERATMIDNIGHT 1
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
       1:
         08:00:00   on
         16:13:00   off
       2:
         08:00:00   on
         16:13:00   off
       3:
       4:
       5:
       6:
     WEDAYS:
       5          1
       6          1
   hmccu:
   profil:
     1:
       EPOCH      1683525600
       PARA       on
       TIME       08:00
       WE_Override
       DAYS:
         1
         2
     2:
       EPOCH      1683555180
       PARA       off
       TIME       16:13
       WE_Override
       DAYS:
         1
         2
   profile_IDX:
     1:
       08:00:00   1
       16:13:00   2
     2:
       08:00:00   1
       16:13:00   2
Attributes:
   commandTemplate set $NAME  $EVENT
   disable    1
   room       Test

Viele Grüße
Jürgen
Titel: Aw: WeekDayTimer - state
Beitrag von: Beta-User am 08 Mai 2023, 21:14:14
Hattest du FHEM neu gestartet nach der Änderung bzw. ein reload durchgeführt?

Habe grade versucht, das nachzuvollziehen, aber bei mir klappt das mit "disabled" (bzw. "inactive").
Titel: Aw: WeekDayTimer - state
Beitrag von: juemuc am 08 Mai 2023, 23:16:44
Wieso sollte ich einen Neustart bzw. einen reload durchführen? Ich habe das Modul ja nicht verändert.

Ich wollte damit nur zeigen, dass ich das Verhalten von cotecmania nicht nachvollziehen kann und bei mir der Wert von "state" in der aktuellen Version ein anderer ist.

Viele Grüße
Jürgen

Titel: Aw: WeekDayTimer - state
Beitrag von: cotecmania am 16 Mai 2023, 13:22:57
Bei mir wird auch die aktuelle Gradzahl angezeigt.
Das "active" kommt nur wenn man den WDT neu startet oder parametriert.
Trotzdem ist die Anzeige einer Temperatur falsch wenn das Teil disabled ist.
Somit wäre die Anzeige "disabled" perfekt und es wäre toll wenn das eingebaut werden könnte

Gruss
Joe
Titel: Aw: WeekDayTimer - state
Beitrag von: Beta-User am 16 Mai 2023, 13:33:53
Den Code-Schnippsel hast du aber auch nicht ausprobiert, oder?

Werde wohl demnächst mal ein update einchecken, das dann aber "inactive" für diese Fälle als "state" anzeigt und sehr vielleicht auch das andere Problem fixt...
Titel: Aw: WeekDayTimer - state
Beitrag von: juemuc am 16 Mai 2023, 14:48:06
Hi Beta-User,

der Code-Schnipsel hatte bei mir keine Auswirkung (FHEM auch neu gestartet).

Ich kann gerne vorab die neue Version testen.

Viele Grüße
Jürgen

Korrektur:
Nach einem enable und erneutem disabled ist nun das Reading "state" auf "disabled".