FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Jewe am 21 September 2020, 00:37:15

Titel: [gelöst] Weekdaytimer plötzlich mit Komastelle
Beitrag von: Jewe am 21 September 2020, 00:37:15
Hallo,
hatte meinen Weekdaytimer ein paar Wochen disabeld. Nun kommt "plötzlich" eine Kommastelle mit und ich habe keine Ahnung warum? Wenn ich "set kwl_Stufe 2" von Hand eingebe funktioniert es normal.

Internals:
   FUUID      5c4cce16-f33f-9f49-3653-819075f18a5e6cb4
   NAME       kwl_stufe
   NR         139
   STATE      2.0
   STILLDONETIME 0
   TYPE       dummy
   READINGS:
     2020-09-20 19:00:00   state           2.0
Attributes:
   alias      Lüftung - Stufe
   devStateIcon 0:vent_ventilation 1:vent_ventilation_level_1 2:vent_ventilation_level_2 3:vent_ventilation_level_3
   fp_KWL     334,511,5, ,kwl_stufe
   group      Lüftung
   icon       vent_ventilation
   room       Lüftung
   setList    state:0,1,2,3
   webCmd     state


Internals:
   COMMAND   
   CONDITION 
   DEF        kwl_stufe 05:00|1 06:00|2 19:00|2 21:30|2 22:30|1
   DEVICE     kwl_stufe
   FUUID      5c4cce17-f33f-9f49-d17f-5054a59d2f4390a0
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       kwl_timer
   NR         147
   Profil 0: Sonntag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 1: Montag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 2: Dienstag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 3: Mittwoch 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 4: Donnerstag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 5: Freitag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   Profil 6: Samstag 05:00:00 1, 06:00:00 2, 19:00:00 2, 21:30:00 2, 22:30:00 1,
   STATE      2
   STILLDONETIME 0
   TYPE       WeekdayTimer
   READINGS:
     2020-09-20 21:30:00   currValue       2
     2020-09-19 00:56:27   disabled        0
     2020-09-20 21:30:00   nextUpdate      2020-09-20 22:30:00
     2020-09-20 21:30:00   nextValue       1
     2020-09-20 21:30:00   state           2
   SWITCHINGTIMES:
     05:00|1
     06:00|2
     19:00|2
     21:30|2
     22:30|1
   TIMER:
     kwl_timer_1:
       HASH       kwl_timer
       MODIFIER   1
       NAME       kwl_timer_1
     kwl_timer_2:
       HASH       kwl_timer
       MODIFIER   2
       NAME       kwl_timer_2
     kwl_timer_3:
       HASH       kwl_timer
       MODIFIER   3
       NAME       kwl_timer_3
     kwl_timer_4:
       HASH       kwl_timer
       MODIFIER   4
       NAME       kwl_timer_4
     kwl_timer_5:
       HASH       kwl_timer
       MODIFIER   5
       NAME       kwl_timer_5
     kwl_timer_SetTimerOfDay:
       HASH       kwl_timer
       MODIFIER   SetTimerOfDay
       NAME       kwl_timer_SetTimerOfDay
       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:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       1:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       2:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       3:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       4:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       5:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
       6:
         05:00:00   1
         06:00:00   2
         19:00:00   2
         21:30:00   2
         22:30:00   1
     WEDAYS:
       0          1
       6          1
   profil:
     1:
       EPOCH      1600570800
       PARA       1
       TIME       05:00
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1600574400
       PARA       2
       TIME       06:00
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     3:
       EPOCH      1600621200
       PARA       2
       TIME       19:00
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     4:
       EPOCH      1600630200
       PARA       2
       TIME       21:30
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     5:
       EPOCH      1600633800
       PARA       1
       TIME       22:30
       WE_Override 0
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     1:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     2:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     3:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     4:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     5:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
     6:
       05:00:00   1
       06:00:00   2
       19:00:00   3
       21:30:00   4
       22:30:00   5
Attributes:
   alias      Lüftung - Timer
   commandTemplate set $NAME  $EVENT
   disable    0
   room       Lüftung   
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Beta-User am 21 September 2020, 08:20:54
Der WDT hat keine Kommastelle, und am Code wurde auch schon länger nichts mehr geändert, so dass "ein paar Wochen" eigentlich keine Rolle spielen dürften.

Gab es zwischen "ohne Komma" und "mit Komma" irgendwelche updates (WDT im Speziellen, FHEM im allgemeinen, OS oder Perl)? Und was waren ggf. die Versionsnummern?
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Beta-User am 21 September 2020, 10:41:32
Nachtrag: WDT verwendet seit längerem intern "AnalyzeCommandChain" satt früher "fhem()". Das ist aber m.E. unproblematisch da einfach nur eine (kleine) Abkürzung.

Ggf. kannst du mal an dem WDT verbose auf 4 stellen, dann müßte eigentlich im Log auftauchen, wie der Befehl nach "EvalSpecials" dann aussah (Im aktuellen code zu finden ab Zeile 1191). Das wäre dann aber m.E. eine Sache, die diese zentrale Funktionalität beträfe.
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: SamNitro am 21 September 2020, 21:03:48
Hatte ich doch auch mal...
https://forum.fhem.de/index.php/topic,113838.msg1081108.html#msg1081108 (https://forum.fhem.de/index.php/topic,113838.msg1081108.html#msg1081108)

habe die letzte Version Vom SVN von Hand eingespielt und ein Reload Modul gemacht!
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Jewe am 21 September 2020, 22:19:18
Zitat von: Beta-User am 21 September 2020, 10:41:32
Ggf. kannst du mal an dem WDT verbose auf 4 stellen, dann müßte eigentlich im Log auftauchen, wie der Befehl nach "EvalSpecials" dann aussah (Im aktuellen code zu finden ab Zeile 1191). Das wäre dann aber m.E. eine Sache, die diese zentrale Funktionalität beträfe.

Hallo, Danke für die Antworten. Habe den Verbose auf 4 gestellt. Das ist im Log bei dem Event:

2020.09.21 21:40:00 4: [kwl_timer] time=21:40/1600717200 delay=0, nextDelay=60, nextRetry=1600717260
2020.09.21 21:40:00 4: [kwl_timer] delayedExecutionCond:0
2020.09.21 21:40:00 4: [kwl_timer] result of delayedExecutionCond: 0
2020.09.21 21:40:00 4: [kwl_timer] list of window sensors found: 'kwl_timer'
2020.09.21 21:40:00 4: [kwl_timer] condition: - Tage:0,1,2,3,4,5,6
2020.09.21 21:40:00 4: [kwl_timer] Update   - timer seems to be active today: 0123456|21:40|2
2020.09.21 21:40:00 4: [kwl_timer] aktParam: newParam:2.0 - is not disabled
2020.09.21 21:40:00 4: [kwl_timer] command: 'set $NAME  $EVENT' executed with %EVENT=>2.0,%NAME=>kwl_stufe


Es sieht aber schon so auf, als ob es vom dem WDT kommt.

Ich habe mein Fhem seit dem Disablen ein update gemacht. SamNirto hatte ja wohl das selbe Problem gelöst durch die neuinstallatoin. Das kann ich ja auch machen, vielleicht hilfts....

Kann ich sonst noch was probieren um die Fehlerquelle zu Identifizieren ?

Jens

Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Beta-User am 21 September 2020, 22:50:51
OK, das kommt in der Tat aus dem WDT, wunder...

Sieht so aus, als würden dummy als Heizungsgeräte erkannt...

Könnt ihr mal in der aktuellen Version in Zeile 1190 das defined rausnehmen:
  my $isHeating =  $setModifier ? 1 : 0;

Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Jewe am 22 September 2020, 00:05:55
Meine Version ist:
# $Id: 98_WeekdayTimer.pm 22535 2020-08-04 04:34:34Z Beta-User $
dort ist das in der Zeile 1174.

Super, es funktoiniert. :-)

2020.09.22 00:01:00 4: [kwl_timer] time=00:01/1600725660 delay=0, nextDelay=60, nextRetry=1600725720
2020.09.22 00:01:00 4: [kwl_timer] delayedExecutionCond:0
2020.09.22 00:01:00 4: [kwl_timer] result of delayedExecutionCond: 0
2020.09.22 00:01:00 4: [kwl_timer] list of window sensors found: 'kwl_timer'
2020.09.22 00:01:00 4: [kwl_timer] condition: - Tage:0,1,2,3,4,5,6
2020.09.22 00:01:00 4: [kwl_timer] Update   - timer seems to be active today: 0123456|00:01|1
2020.09.22 00:01:00 4: [kwl_timer] aktParam: newParam:1 - is not disabled
2020.09.22 00:01:00 4: [kwl_timer] command: 'set $NAME  $EVENT' executed with %EVENT=>1,%NAME=>kwl_stufe
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Beta-User am 22 September 2020, 00:20:42
OK, hab's direkt eingecheckt.

Es wäre nett, wenn ich morgen mittesten und das auch nochmal kritisch beäugen würdet, die neue Version bringt dann v.a. auch noch einige Checks der DEF mit.
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Jewe am 23 September 2020, 22:38:45
Hallo,

heute konnte ich endlich mein Fhem updaten und testen. Die korrigierte Version funktioniert.

Danke fürs korrigieren, Jens
Titel: Antw:Weekdaytimer plötzlich mit Komastelle
Beitrag von: Beta-User am 24 September 2020, 10:32:32
Danke für die Rückmeldung!

Falls es weiter keine Probleme mehr gibt: [gelöst]?

(Anmerkung für zukünftige Fälle: WDT-Fragen gehören eigentlich zu "Unterstützende Dienste", so steht's jedenfalls in der MAINTAINER.txt...)