diff --git a/fhem/FHEM/10_FBDECT.pm b/fhem/FHEM/10_FBDECT.pm index 442693a4c..3bd293899 100644 --- a/fhem/FHEM/10_FBDECT.pm +++ b/fhem/FHEM/10_FBDECT.pm @@ -100,8 +100,11 @@ FBDECT_SetHttp($@) } my $cmd = $a[1]; + my $name = $hash->{NAME}; + Log3 $name, 3, "FBDECT set $name $cmd"; + if($cmd =~ m/^(on|off|toggle)$/) { - IOWrite($hash, ReadingsVal($hash->{NAME},"AIN",0), "setswitch$cmd"); + IOWrite($hash, ReadingsVal($name,"AIN",0), "setswitch$cmd"); my $state = ($cmd eq "toggle" ? ($hash->{state} eq "on" ? "off":"on"):$cmd); readingsSingleUpdate($hash, "state", $state, 1); return undef; @@ -109,12 +112,12 @@ FBDECT_SetHttp($@) if($cmd =~ m/^(open|closed|desired-temp)$/) { if($cmd eq "desired-temp") { - return "Usage: set $hash->{NAME} desired-temp value" if(int(@a) != 3); + return "Usage: set $name desired-temp value" if(int(@a) != 3); return "desired-temp must be between 8 and 28" if($a[2] !~ m/^[\d.]+$/ || $a[2] < 8 || $a[2] > 28) } my $val = ($cmd eq "open" ? 254 : ($cmd eq "closed" ? 253: int(2*$a[2]))); - IOWrite($hash, ReadingsVal($hash->{NAME},"AIN",0),"sethkrtsoll¶m=$val"); + IOWrite($hash, ReadingsVal($name,"AIN",0),"sethkrtsoll¶m=$val"); return undef; } } @@ -136,6 +139,9 @@ FBDECT_Set($@) return SetExtensions($hash, $usage, @a); } + my $name = $hash->{NAME}; + Log3 $name, 3, "FBDECT set $name $cmd"; + my $relay; if($cmd eq "on" || $cmd eq "off") { my $relay = sprintf("%08x%04x0000%08x", 15, 4, $cmd eq "on" ? 1 : 0); diff --git a/fhem/fhem.pl b/fhem/fhem.pl index 9e107f518..38ac8f16f 100755 --- a/fhem/fhem.pl +++ b/fhem/fhem.pl @@ -2367,7 +2367,13 @@ GlobalAttr($$$$) { my ($type, $me, $name, $val) = @_; - return if($type ne "set"); + if($type eq "del") { + my %noDel = ( verbose=>1, modpath=>1, logfile=>1, featurelevel=>1 ); + return "The global attribute $name cannot be deleted" if($noDel{$name}); + return undef; + } + + return undef if($type ne "set"); ################ if($name eq "logfile") { my @t = localtime;