diff --git a/fhem/FHEM/37_SHCdev.pm b/fhem/FHEM/37_SHCdev.pm
index b0b549284..c9515c4d9 100644
--- a/fhem/FHEM/37_SHCdev.pm
+++ b/fhem/FHEM/37_SHCdev.pm
@@ -2,7 +2,7 @@
# This file is part of the smarthomatic module for FHEM.
#
# Copyright (c) 2014 Stefan Baumann
-# 2014, 2015, 2019, 2022, 2023 Uwe Freese
+# 2014, 2015, 2019, 2022, 2023, 2024 Uwe Freese
#
# You can find smarthomatic at www.smarthomatic.org.
# You can find FHEM at www.fhem.de.
@@ -34,11 +34,22 @@ use SHC_parser;
my $parser = new SHC_parser();
+my %icons = (
+ "PowerSwitch" => "message_socket",
+ "Dimmer" => "light_ceiling",
+ "EnvSensor" => "temperature_humidity",
+ "Controller" => "display_dot",
+ "Proxy" => "it_router",
+ "RGBDimmer" => "control_arrow_turn_right",
+ "SoilMoistureMeter" => "sani_irrigation"
+);
+
my %dev_state_icons = (
"PowerSwitch" => ".*1\\d{7}:on:off .*0\\d{7}:off:on set.*:light_question:off",
"Dimmer" => "on:on off:off set.*:light_question:off",
"EnvSensor" => undef,
"Controller" => undef,
+ "Proxy" => undef,
"RGBDimmer" => undef,
"SoilMoistureMeter" => ".*H:\\s\\d\\..*:ampel_rot"
);
@@ -48,6 +59,7 @@ my %web_cmds = (
"Dimmer" => "on:off:statusRequest",
"EnvSensor" => undef,
"Controller" => undef,
+ "Proxy" => undef,
"RGBDimmer" => undef,
"SoilMoistureMeter" => undef
);
@@ -140,7 +152,7 @@ sub SHCdev_Initialize($)
." readonly:1"
." forceOn:1"
." $readingFnAttributes"
- ." devtype:EnvSensor,Dimmer,PowerSwitch,Controller,RGBDimmer,SoilMoistureMeter";
+ ." devtype:EnvSensor,Dimmer,PowerSwitch,Controller,Proxy,RGBDimmer,SoilMoistureMeter";
}
#####################################
@@ -437,6 +449,9 @@ sub SHCdev_Parse($$)
# If the devtype is defined add, if not already done, the according webCmds and devStateIcons
my $devtype2 = AttrVal( $rname, "devtype", undef );
if (defined($devtype2)) {
+ if (!defined($attr{$rname}{icon}) && defined($icons{$devtype2})) {
+ $attr{$rname}{icon} = $icons{$devtype2};
+ }
if (!defined($attr{$rname}{devStateIcon}) && defined($dev_state_icons{$devtype2})) {
$attr{$rname}{devStateIcon} = $dev_state_icons{$devtype2};
}
diff --git a/fhem/FHEM/lib/SHC_packet_layout.xml b/fhem/FHEM/lib/SHC_packet_layout.xml
index 8ba5b2de0..0f10a7504 100644
--- a/fhem/FHEM/lib/SHC_packet_layout.xml
+++ b/fhem/FHEM/lib/SHC_packet_layout.xml
@@ -204,6 +204,10 @@
0
BaseStation
+
+ 10
+ Proxy
+
20
EnvSensor