komisches DOIF Verhalten (cmd_1 / cmd_2

Begonnen von Docter, 24 November 2023, 05:51:30

Vorheriges Thema - Nächstes Thema

Docter

Hallo Leute, ich verzweifle...

define DOIF_TADO_Entlueftung_Testmode2 DOIF ([06:00])\
(set TADO_Target_Unten_SZ 25)
attr DOIF_TADO_Entlueftung_Testmode2 DbLogExclude .*
attr DOIF_TADO_Entlueftung_Testmode2 room 99.2 DOIF TADO
#   CFGFN     
#   DEF        ([06:00])
#(set TADO_Target_Unten_SZ 25)
#   FUUID      65602a94-f33f-0181-3523-b0964a9a58aad80d
#   MODEL      FHEM
#   NAME       DOIF_TADO_Entlueftung_Testmode2
#   NOTIFYDEV  global
#   NR         31236
#   NTFY_ORDER 50-DOIF_TADO_Entlueftung_Testmode2
#   STATE      cmd_2
#   TYPE       DOIF
#   VERSION    26938 2023-01-01 18:13:32
#   eventCount 3
#   Helper:
#     DBLOG:
#       cmd:
#         DBLogging:
#           TIME       1700801172.93507
#           VALUE      0
#       mode:
#         DBLogging:
#           TIME       1700801172.93507
#           VALUE      enabled
#       state:
#         DBLogging:
#           TIME       1700801172.93507
#           VALUE      initialized
#   READINGS:
#     2023-11-24 05:46:56   cmd             2
#     2023-11-24 05:46:56   cmd_event       DOIF_TADO_Entlueftung_Testmode2
#     2023-11-24 05:46:56   cmd_nr          2
#     2023-11-24 05:46:44   mode            enabled
#     2023-11-24 05:46:56   state           cmd_2
#     2023-11-24 05:46:44   timer_01_c01    24.11.2023 06:00:00
#   Regex:
#     accu:
#     collect:
#   attr:
#     cmdState:
#     wait:
#     waitdel:
#   condition:
#     0          ::DOIF_time_once($hash,0,$wday)
#   days:
#   do:
#     0:
#       0          set TADO_Target_Unten_SZ 25
#     1:
#   helper:
#     NOTIFYDEV  global
#     globalinit 1
#     last_timer 1
#     sleeptimer -1
#     timerdev   
#     timerevent
#     timerevents
#     timereventsState
#     triggerDev
#   intervalfunc:
#   localtime:
#     0          1700802000
#   realtime:
#     0          06:00:00
#   time:
#     0          06:00:00
#   timeCond:
#     0          0
#   timer:
#     0          0
#   timers:
#     0           0
#   triggertime:
#     1700802000:
#       localtime  1700802000
#       hash:
#   uiState:
#   uiTable:
#
setstate DOIF_TADO_Entlueftung_Testmode2 cmd_2
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:56 cmd 2
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:56 cmd_event DOIF_TADO_Entlueftung_Testmode2
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:56 cmd_nr 2
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:44 mode enabled
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:56 state cmd_2
setstate DOIF_TADO_Entlueftung_Testmode2 2023-11-24 05:46:44 timer_01_c01 24.11.2023 06:00:00


woher nimmt der bitte ein cmd_2?
Hab ich doch gar nicht definiert.

Ich sehe das Problem einfach nicht...


Danke schonmal..

MadMax-FHEM

Commandref gelesen? ;)

Zitat von: commandrefSoll bei Nicht-Erfüllung aller Bedingungen ein Zustandswechsel erfolgen, so muss man ein DOELSE am Ende der Definition anhängen. Ausnahme ist eine einzige Bedingung ohne do always, wie im obigen Beispiel, hierbei wird intern ein virtuelles DOELSE angenommen, um bei Nicht-Erfüllung der Bedingung einen Zustandswechsel in cmd_2 zu provozieren, da sonst nur ein einziges Mal geschaltet werden könnte, da das Modul aus dem cmd_1-Zustand nicht mehr herauskäme.

Nutze DOIF nicht, würde aber vermuten, dass das der Grund ist...

Nächstes Mal besser im richtigen Unterforum (zu DOIF) posten, dann kommt (schneller) eine profesionelle(re) Antwort 8)
Module: 98_DOIF.pm Maintainer: damian-s Forum: Automatisierung/DOIF

Siehe:
https://forum.fhem.de/index.php?topic=71806.0
https://forum.fhem.de/index.php?topic=13092.0

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

rabehd

Zitat von: Docter am 24 November 2023, 05:51:30Ich sehe das Problem einfach nicht...
Dein Problem hast Du nicht beschrieben.
Oder ist es das Unwissen über die commandref? 
Auch funktionierende Lösungen kann man hinterfragen.

Damian

Dein Device hat keine Trigger außer Zeitangabe definiert. Es sieht so aus als wenn jemand/etwas das Device von außen angetriggert hätte. Ich weiß nicht, ob es nicht irgendwelche Nebeneffekte mit dem fremden Attribut DBLogExclude gibt.

Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF