Nochmal das DOIF von gestern.
mit set DI_TemperaturLog cmd_1 setze ich myTemp auf 100.
Bei e_DI_TemperaturLog_myTemp sieht man die 100 auch, aber bei myTemp nicht.
Hier nochmal die Def:
define DI_TemperaturLog DOIF ([23:59]) \
({open (my $DATEI, ">>/opt/fhem/TempLogAussen.txt") or die $!;;\
print $DATEI ReadingsVal("DI_TemperaturLog","myTime","0")." ". ReadingsVal("DI_TemperaturLog","myTemp","0")."\n";;\
close ($DATEI);;}\
)\
(set DU_TempLow [$SELF:myTemp])\
(setreading $SELF myTemp 100)\
DOELSEIF ([TMP_Aussen:temperature] < [$SELF:myTemp])\
({fhem("setreading $SELF myTemp ". ReadingsVal("TMP_Aussen","temperature","0"))})\
({fhem("setreading $SELF myTime ". ReadingsTimestamp("TMP_Aussen","temperature","0"))})\
\
DOELSE
attr DI_TemperaturLog do always
attr DI_TemperaturLog room 1_TEST,System
# DEF ([23:59])
# ({open (my $DATEI, ">>/opt/fhem/TempLogAussen.txt") or die $!;
# print $DATEI ReadingsVal("DI_TemperaturLog","myTime","0")." ". ReadingsVal("DI_TemperaturLog","myTemp","0")."\n";
# close ($DATEI);}
# )
# (set DU_TempLow [$SELF:myTemp])
# (setreading $SELF myTemp 100)
#DOELSEIF ([TMP_Aussen:temperature] < [$SELF:myTemp])
# ({fhem("setreading $SELF myTemp ". ReadingsVal("TMP_Aussen","temperature","0"))})
# ({fhem("setreading $SELF myTime ". ReadingsTimestamp("TMP_Aussen","temperature","0"))})
#
#DOELSE
# FUUID 65bba71d-f33f-8098-1b76-d668663d5090733b
# MODEL FHEM
# NAME DI_TemperaturLog
# NOTIFYDEV TMP_Aussen,global,DI_TemperaturLog
# NR 606
# NTFY_ORDER 50-DI_TemperaturLog
# STATE cmd_3
# TYPE DOIF
# VERSION 27740 2023-07-10 09:31:11
# eventCount 451
# OLDREADINGS:
# READINGS:
# 2024-02-02 15:46:30 Device TMP_Aussen
# 2024-02-02 15:46:30 cmd 3
# 2024-02-02 15:46:30 cmd_event TMP_Aussen
# 2024-02-02 15:46:30 cmd_nr 3
# 2024-02-02 15:42:49 e_DI_TemperaturLog_myTemp 100
# 2024-02-02 15:46:30 e_TMP_Aussen_temperature 6.7
# 2024-02-02 15:41:43 mode enabled
# 2024-02-02 15:42:49 myTemp 6.7
# 2024-02-02 15:42:49 myTime 2024-02-02 15:41:02
# 2024-02-02 15:46:30 state cmd_3
# 2024-02-02 15:41:43 timer_01_c01 02.02.2024 23:59:00
# Regex:
# accu:
# bar:
# barAvg:
# collect:
# cond:
# DI_TemperaturLog:
# 0:
# 1:
# myTemp ^DI_TemperaturLog$:^myTemp:
# TMP_Aussen:
# 0:
# 1:
# temperature ^TMP_Aussen$:^temperature:
# attr:
# cmdState:
# wait:
# waitdel:
# condition:
# 0 ::DOIF_time_once($hash,0,$wday)
# 1 ::ReadingValDoIf($hash,'TMP_Aussen','temperature') < ::ReadingValDoIf($hash,'DI_TemperaturLog','myTemp')
# days:
# do:
# 0:
# 0 {open (my $DATEI, ">>/opt/fhem/TempLogAussen.txt") or die $!; print $DATEI ReadingsVal("DI_TemperaturLog","myTime","0")." ". ReadingsVal("DI_TemperaturLog","myTemp","0")."\n"; close ($DATEI);}
# 1 set DU_TempLow [DI_TemperaturLog:myTemp]
# 2 setreading DI_TemperaturLog myTemp 100
# 1:
# 0 {fhem("setreading DI_TemperaturLog myTemp ". ReadingsVal("TMP_Aussen","temperature","0"))}
# 1 {fhem("setreading DI_TemperaturLog myTime ". ReadingsTimestamp("TMP_Aussen","temperature","0"))}
# 2:
# 0
# helper:
# NOTIFYDEV TMP_Aussen,global,DI_TemperaturLog
# event battery: ok,humidity: 71,T: 6.7 H: 71,temperature: 6.7
# globalinit 1
# last_timer 1
# sleeptimer -1
# timerdev TMP_Aussen
# timerevent battery: ok,humidity: 71,T: 6.7 H: 71,temperature: 6.7
# triggerDev TMP_Aussen
# timerevents:
# battery: ok
# humidity: 71
# T: 6.7 H: 71
# temperature: 6.7
# timereventsState:
# battery: ok
# humidity: 71
# state: T: 6.7 H: 71
# temperature: 6.7
# triggerEvents:
# battery: ok
# humidity: 71
# T: 6.7 H: 71
# temperature: 6.7
# triggerEventsState:
# battery: ok
# humidity: 71
# state: T: 6.7 H: 71
# temperature: 6.7
# internals:
# intervalfunc:
# localtime:
# 0 1706914740
# readings:
# all TMP_Aussen:temperature DI_TemperaturLog:myTemp
# realtime:
# 0 23:59:00
# time:
# 0 23:59:00
# timeCond:
# 0 0
# timer:
# 0 0
# timers:
# 0 0
# trigger:
# triggertime:
# 1706914740:
# localtime 1706914740
# hash:
# uiState:
# uiTable:
#
setstate DI_TemperaturLog cmd_3
setstate DI_TemperaturLog 2024-02-02 15:46:30 Device TMP_Aussen
setstate DI_TemperaturLog 2024-02-02 15:46:30 cmd 3
setstate DI_TemperaturLog 2024-02-02 15:46:30 cmd_event TMP_Aussen
setstate DI_TemperaturLog 2024-02-02 15:46:30 cmd_nr 3
setstate DI_TemperaturLog 2024-02-02 15:42:49 e_DI_TemperaturLog_myTemp 100
setstate DI_TemperaturLog 2024-02-02 15:46:30 e_TMP_Aussen_temperature 6.7
setstate DI_TemperaturLog 2024-02-02 15:41:43 mode enabled
setstate DI_TemperaturLog 2024-02-02 15:42:49 myTemp 6.7
setstate DI_TemperaturLog 2024-02-02 15:42:49 myTime 2024-02-02 15:41:02
setstate DI_TemperaturLog 2024-02-02 15:46:30 state cmd_3
setstate DI_TemperaturLog 2024-02-02 15:41:43 timer_01_c01 02.02.2024 23:59:00