Ich finde die Ursache nicht. Das Reading scheint doch zu stimmen. Warum klappt dann der Vergleich nicht.
define DI_TemperaturLog DOIF ([00:00]) \
({open (my $DATEI, ">>/opt/fhem/TempLogAussen.txt") or die $!;;\
print $DATEI ReadingsVal("DI_TemperaturLog","myTime","0")." ". ReadingsVal("DI_TemperaturLog","myTemp","0")."\n";;\
close ($DATEI);;}\
)\
(setreading $SELF myTemp 100)\
DOELSEIF ([TMP_Aussen:temterature] < [$SELF:myTemp])\
({fhem("setreading $SELF myTemp ". ReadingsVal("TMP_Aussen","temperature","0"))})\
({fhem("setreading $SELF myTime ". ReadingsTimestamp("TMP_Aussen","temperature","0"))})\
\
DOELSE
attr DI_TemperaturLog room 1_TEST
# DEF ([00:00])
# ({open (my $DATEI, ">>/opt/fhem/TempLogAussen.txt") or die $!;
# print $DATEI ReadingsVal("DI_TemperaturLog","myTime","0")." ". ReadingsVal("DI_TemperaturLog","myTemp","0")."\n";
# close ($DATEI);}
# )
# (setreading $SELF myTemp 100)
#DOELSEIF ([TMP_Aussen:temterature] < [$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_1
# TYPE DOIF
# VERSION 27740 2023-07-10 09:31:11
# eventCount 25
# READINGS:
# 2024-02-01 15:19:49 cmd 1.2
# 2024-02-01 15:19:49 cmd_event set_cmd_1
# 2024-02-01 15:19:49 cmd_nr 1
# 2024-02-01 15:19:49 cmd_seqnr 2
# 2024-02-01 15:19:48 e_DI_TemperaturLog_myTemp 100
# 2024-02-01 15:15:47 mode enabled
# 2024-02-01 15:19:48 myTemp 9.3
# 2024-02-01 15:19:48 myTime 2024-02-01 15:19:22
# 2024-02-01 15:19:49 state cmd_1
# 2024-02-01 15:15:48 timer_01_c01 02.02.2024 00:00:00
# 2024-02-01 15:19:48 warning condition c02: Argument "" isn't numeric in numeric lt (<)
#
# Regex:
# accu:
# bar:
# barAvg:
# collect:
# cond:
# DI_TemperaturLog:
# 0:
# 1:
# myTemp ^DI_TemperaturLog$:^myTemp:
# TMP_Aussen:
# 1:
# temterature ^TMP_Aussen$:^temterature:
# attr:
# cmdState:
# wait:
# waitdel:
# condition:
# 0 ::DOIF_time_once($hash,0,$wday)
# 1 ::ReadingValDoIf($hash,'TMP_Aussen','temterature') < ::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 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 myTemp: 100
# globalinit 1
# last_timer 1
# sleeptimer -1
# timerdev DI_TemperaturLog
# timerevent myTemp: 100
# triggerDev DI_TemperaturLog
# timerevents:
# myTemp: 100
# e_DI_TemperaturLog_myTemp: 100
# warning: condition c02: Argument "" isn't numeric in numeric lt (<)
#
# myTemp: 9.3
# cmd_nr: 2
# cmd_seqnr: 1
# cmd: 2.1
# cmd_event: DI_TemperaturLog
# cmd_2_1
# myTime: 2024-02-01 15:19:22
# cmd_nr: 2
# cmd_seqnr: 2
# cmd: 2.2
# cmd_event: DI_TemperaturLog
# cmd_2
# timereventsState:
# myTemp: 100
# e_DI_TemperaturLog_myTemp: 100
# warning: condition c02: Argument "" isn't numeric in numeric lt (<)
#
# myTemp: 9.3
# cmd_nr: 2
# cmd_seqnr: 1
# cmd: 2.1
# cmd_event: DI_TemperaturLog
# cmd_2_1
# myTime: 2024-02-01 15:19:22
# cmd_nr: 2
# cmd_seqnr: 2
# cmd: 2.2
# cmd_event: DI_TemperaturLog
# cmd_2
# triggerEvents:
# myTemp: 100
# e_DI_TemperaturLog_myTemp: 100
# warning: condition c02: Argument "" isn't numeric in numeric lt (<)
#
# myTemp: 9.3
# cmd_nr: 2
# cmd_seqnr: 1
# cmd: 2.1
# cmd_event: DI_TemperaturLog
# cmd_2_1
# myTime: 2024-02-01 15:19:22
# cmd_nr: 2
# cmd_seqnr: 2
# cmd: 2.2
# cmd_event: DI_TemperaturLog
# cmd_2
# triggerEventsState:
# myTemp: 100
# e_DI_TemperaturLog_myTemp: 100
# warning: condition c02: Argument "" isn't numeric in numeric lt (<)
#
# myTemp: 9.3
# cmd_nr: 2
# cmd_seqnr: 1
# cmd: 2.1
# cmd_event: DI_TemperaturLog
# cmd_2_1
# myTime: 2024-02-01 15:19:22
# cmd_nr: 2
# cmd_seqnr: 2
# cmd: 2.2
# cmd_event: DI_TemperaturLog
# cmd_2
# internals:
# intervalfunc:
# localtime:
# 0 1706828400
# readings:
# all TMP_Aussen:temterature DI_TemperaturLog:myTemp
# realtime:
# 0 00:00:00
# time:
# 0 00:00:00
# timeCond:
# 0 0
# timer:
# 0 0
# timers:
# 0 0
# trigger:
# triggertime:
# 1706828400:
# localtime 1706828400
# hash:
# uiState:
# uiTable:
#
setstate DI_TemperaturLog cmd_1
setstate DI_TemperaturLog 2024-02-01 15:19:49 cmd 1.2
setstate DI_TemperaturLog 2024-02-01 15:19:49 cmd_event set_cmd_1
setstate DI_TemperaturLog 2024-02-01 15:19:49 cmd_nr 1
setstate DI_TemperaturLog 2024-02-01 15:19:49 cmd_seqnr 2
setstate DI_TemperaturLog 2024-02-01 15:19:48 e_DI_TemperaturLog_myTemp 100
setstate DI_TemperaturLog 2024-02-01 15:15:47 mode enabled
setstate DI_TemperaturLog 2024-02-01 15:19:48 myTemp 9.3
setstate DI_TemperaturLog 2024-02-01 15:19:48 myTime 2024-02-01 15:19:22
setstate DI_TemperaturLog 2024-02-01 15:19:49 state cmd_1
setstate DI_TemperaturLog 2024-02-01 15:15:48 timer_01_c01 02.02.2024 00:00:00
setstate DI_TemperaturLog 2024-02-01 15:19:48 warning condition c02: Argument "" isn't numeric in numeric lt (<)\
Du bist sicher, dass der Name richtig ist?
[TMP_Aussen:temterature]
Mann! Jetzt, wo du es sagst, sehe ich meinen Tippfehler. Ich habe 4 Stunden nach dem Fehler gesucht und alles Geschriebene x-fach verglichen. Trotzdem nicht gesehen. Vielen Dank.