Neuigkeiten:

Am Sonntag den 8.12.2024 kann es ab ca. 8:00 Uhr zu kurzzeitigen Einschränkungen / Ausfällen bei den Diensten des FHEM Vereines kommen.
Die Server müssen mal gewartet und dabei neu gestartet werden ;)

Hauptmenü

user Reading von Dummy wird nicht immer angezeigt und ist nicht immer abrufbar

Begonnen von FrauMeier, 10 Oktober 2024, 21:30:45

Vorheriges Thema - Nächstes Thema

FrauMeier

Ich habe ein Problem mit einem Dummy. Ich habe zwei zusätzliche Readings angelegt (Mean und Test). und füttere eines alle 30 sekunden per DOIF mit Helligkeitsdaten (hatte zuerst ein at, hat aber auch nicht funktioniert, und ich dachte es würde daran liegen, dass keine Null übertragen wird).

Internals:
   CFGFN     
   FUUID      6707e637-f33f-4d9f-0181-35533b86cc9513a2
   NAME       HellMean
   NR         599637
   STATE      1
   TYPE       dummy
   eventCount 938
   READINGS:
     2024-10-10 21:20:38   state           1
     Mean:
       TIME       2024-10-10 21:20:38
       VAL       
Attributes:
   event-aggregator Mean::linear:mean:2
   readingList Mean Test
   room       WS
   setList    Mean

Internals:
   CFGFN     
   DEF        ([E_WS1:brightness] >= 1 and [+30]) (set HellMean Mean [E_WS1:brightness])
DOELSEIF
([+30]) (set HellMean Mean 1; set HellMean 1)
   FUUID      67081f00-f33f-4d9f-f8a1-084353211099ed35
   MODEL      FHEM
   NAME       Helldoif
   NOTIFYDEV  E_WS1,global
   NR         601350
   NTFY_ORDER 50-Helldoif
   STATE      cmd_2
   TYPE       DOIF
   VERSION    27740 2023-07-10 09:31:11
   eventCount 83
   READINGS:
     2024-10-10 21:15:56   Device          E_WS1
     2024-10-10 21:19:08   cmd             2
     2024-10-10 21:19:08   cmd_event       timer_2
     2024-10-10 21:19:08   cmd_nr          2
     2024-10-10 21:15:56   e_E_WS1_brightness 0
     2024-10-10 20:56:08   mode            enabled
     2024-10-10 21:19:08   state           cmd_2
     2024-10-10 21:19:08   timer_01_c01    10.10.2024 21:19:38
     2024-10-10 21:19:08   timer_02_c02    10.10.2024 21:19:38
   Regex:
     accu:
     bar:
     barAvg:
     collect:
     cond:
       E_WS1:
         0:
           brightness ^E_WS1$:^brightness:
         1:
   attr:
     cmdState:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'E_WS1','brightness') >= 1 and ::DOIF_time_once($hash,0,$wday)
     1          ::DOIF_time_once($hash,1,$wday)
   days:
   do:
     0:
       0          set HellMean Mean [E_WS1:brightness]
     1:
       0          set HellMean Mean 1; set HellMean 1
     2:
   helper:
     NOTIFYDEV  E_WS1,global
     event      timer_2
     globalinit 1
     last_timer 2
     sleeptimer -1
     timerdev   
     timerevent timer_2
     triggerDev
     DOIF_eventa:
       cmd_nr: 2
       cmd: 2
       cmd_event: timer_2
       cmd_2
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: timer_2
       state: cmd_2
     timerevents:
       timer_2
     timereventsState:
       timer_2
     triggerEvents:
       timer_2
     triggerEventsState:
       timer_2
   internals:
   interval:
   intervalfunc:
   localtime:
     0          1728587978
     1          1728587978
   readings:
     all         E_WS1:brightness
   realtime:
     0          21:19:38
     1          21:19:38
   time:
     0          +30
     1          +30
   timeCond:
     0          0
     1          1
   timer:
     0          0
     1          0
   timers:
     0           0
     1           1
   trigger:
   triggertime:
     1728587978:
       localtime  1728587978
       hash:
   uiState:
   uiTable:
Attributes:
   do         always
   room       WS

Wie im ersten Bild zu sehen, tauchen beide Readings nicht auf, und sind dann auch nicht abrufbar. Im zweiten Bild habe ich drei mal einen Wert selber in das Reading geschrieben, und dann funktioniert alles eine Weile lang.

was mache ich falsch?Du darfst diesen Dateianhang nicht ansehen.Du darfst diesen Dateianhang nicht ansehen. 

DeeSPe

Das hat was mit "event-aggregator" zu tun.
Was und wie genau weiß ich nicht, da ich das (bisher) nicht benutze.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

Damian

Ich würde die Readings statt per set mit setreading setzen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

FrauMeier

Danke für die Antworten.
DeeSPe hat Recht, es liegt am Event aggregator. Wenn der für irgendein Reading gesetzt ist, werden die anderen readings nicht mehr angezeigt, und kein einziges Reading wird aggregiert. Ich habe es jetzt auf zwei Dummys aufgeteilt und alles funzt wie gewünscht.