diff --git a/fhem/FHEM/33_readingsGroup.pm b/fhem/FHEM/33_readingsGroup.pm index eba124437..7b1bb076c 100644 --- a/fhem/FHEM/33_readingsGroup.pm +++ b/fhem/FHEM/33_readingsGroup.pm @@ -187,6 +187,8 @@ lookup($$$$$$$$) $default = $mapping; } + return $default if( !defined($default) ); + $default =~ s/\%ALIAS/$alias/g; $default =~ s/\%DEVICE/$name/g; $default =~ s/\%READING/$reading/g; @@ -453,10 +455,18 @@ readingsGroup_2html($) } if( $htmlTxt =~ m/(.*)<\/td>/s ) { - $txt = $1; + $txt = $1; + + my $a = AttrVal($name, "alias", $name); + my $room = AttrVal($name, "room", ""); + my $group = AttrVal($name, "group", ""); + my $mapped = lookup($mapping,$name,$a,$set,"",$room,$group,undef); + if( defined($mapped) ) { + $txt =~ s/$set /$mapped /; + } } elsif( $htmlTxt ) { - $txt = $htmlTxt; - } + $txt = $htmlTxt; + } } } @@ -568,12 +578,16 @@ readingsGroup_2html($) } if( $htmlTxt =~ m/(.*)<\/td>/s ) { - $v = $1; + $v = $1; + my $mapped = lookup($mapping,$name,$a,$set,"",$room,$group,undef); + if( defined($mapped) ) { + $v =~ s/$set /$mapped /; + } $webCmdFn = 1; } elsif( $htmlTxt ) { - $v = $htmlTxt; + $v = $htmlTxt; $webCmdFn = 1; - } + } } } ($v,$devStateIcon) = readingsGroup_makeLink($v,$devStateIcon,$cmd) if( !$webCmdFn );