mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-10 09:16:53 +00:00
10_MQTT2_DEVICE.pm: enhance zigbee2mqtt_devStateIcon255 (Forum #95581)
git-svn-id: https://svn.fhem.de/fhem/trunk@19260 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
24e2108176
commit
fef8f6a079
@ -709,13 +709,33 @@ zigbee2mqtt_RGB2JSON($)
|
|||||||
}
|
}
|
||||||
|
|
||||||
sub
|
sub
|
||||||
zigbee2mqtt_devStateIcon255($)
|
zigbee2mqtt_devStateIcon255($;$$)
|
||||||
{
|
{
|
||||||
my ($name) = @_;
|
my ($name, $rgbReadingName, $useSetExtension) = @_;
|
||||||
return ".*:off:toggle" if(lc(ReadingsVal($name,"state","ON")) eq "off" );
|
|
||||||
my $pct = ReadingsNum($name,"brightness","255");
|
my $too = $defs{$name}->{TIMED_OnOff};
|
||||||
my $s = $pct > 253 ? "on" : sprintf("dim%02d%%",int((1+int($pct/18))*6.25));
|
$useSetExtension = 0 if(!$too);
|
||||||
return ".*:$s:off";
|
my $state = lc(ReadingsVal($name,"state","on"));
|
||||||
|
if(!$useSetExtension && $state =~ m/off$/) { # set_off or off
|
||||||
|
return ".*:off:toggle";
|
||||||
|
}
|
||||||
|
|
||||||
|
my $pct = ReadingsNum($name, "brightness", 255);
|
||||||
|
|
||||||
|
my $s = "on";
|
||||||
|
if($useSetExtension && $too->{CMD} =~ m/on-|off-|blink/s) {
|
||||||
|
$s = $too->{CMD} =~ m/on-/s ? "on-for-timer" :
|
||||||
|
$too->{CMD} =~ m/off-/s ? "off-for-timer" :
|
||||||
|
$state =~ m/off-/s ? "off-for-timer" : "light_toggle";
|
||||||
|
} elsif ($pct < 254) {
|
||||||
|
$s = sprintf("dim%02d%%", int((1+int($pct/18))*6.25));
|
||||||
|
}
|
||||||
|
|
||||||
|
my $rgb = ReadingsVal($name, $rgbReadingName, "FFFFFF");
|
||||||
|
$s .= "@#$rgb" if($rgb ne "FFFFFF");
|
||||||
|
|
||||||
|
Log 1, $s;
|
||||||
|
return ".*:$s:toggle";
|
||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user