From 65710059df1551223d0f5b87f0191f58a0a36acf Mon Sep 17 00:00:00 2001 From: rudolfkoenig <> Date: Sat, 10 Jul 2021 10:15:17 +0000 Subject: [PATCH] fhem.pl: observe module-specific ignoredReadings (Forum #120603) git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@24721 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem.pl | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/fhem.pl b/fhem.pl index 0a38634c6..6b537c1a9 100755 --- a/fhem.pl +++ b/fhem.pl @@ -2507,10 +2507,8 @@ CommandSetReading($$) if($b1 eq "IODev") { my $ret = fhem_setIoDev($hash, $b[2]); - if($ret) { - push @rets, $ret; - next; - } + push @rets, $ret if($ret); + next; } if($hash->{".updateTime"}) { # Called from userReadings, #110375 @@ -3219,8 +3217,7 @@ CommandSetstate($$) if(!defined($d->{READINGS}{$sname}) || !defined($d->{READINGS}{$sname}{TIME}) || $d->{READINGS}{$sname}{TIME} lt $tim) { - $d->{READINGS}{$sname}{VAL} = $sval; - $d->{READINGS}{$sname}{TIME} = $tim; + setReadingsVal($d, $sname, $sval, $tim); } @@ -4702,6 +4699,14 @@ setReadingsVal($$$$) { my ($hash,$rname,$val,$ts) = @_; + my $t = $hash->{TYPE}; + if($t) { + my $m = $modules{$t}; # Forum 120603 + if($m && $m->{ignoredReadings} && $m->{ignoredReadings}{$rname}) { + Log 4, "setReadingsVal: IGNORING $hash->{NAME} reading"; + return; + } + } if($hash->{".or"} && grep($rname =~ m/^$_$/, @{$hash->{".or"}}) ) { if(defined($hash->{READINGS}{$rname}) && defined($hash->{READINGS}{$rname}{VAL}) &&