66
77
88@dataclass
9- class BaseClass :
10- """Plugwise Base Gateway data class."""
9+ class DeviceBase :
10+ """Plugwise Device Base class.
11+
12+ Every device will have most of these data points.
13+ """
14+
1115
1216 available : bool | None # not for gateway, should always be available
1317 dev_class : str
@@ -22,7 +26,7 @@ class BaseClass:
2226
2327
2428@dataclass
25- class AdamGateway (BaseClass ):
29+ class AdamGateway (DeviceBase ):
2630 """Plugwise Adam HA Gateway data class."""
2731
2832 binary_sensors : GatewayBinarySensors
@@ -35,34 +39,34 @@ class AdamGateway(BaseClass):
3539
3640
3741@dataclass
38- class SmileTGateway (BaseClass ):
42+ class SmileTGateway (DeviceBase ):
3943 """Plugwise Anna Smile-T Gateway data class."""
4044
4145 binary_sensors : GatewayBinarySensors
4246 sensors : Weather
4347
4448
4549@dataclass
46- class SmileTLegacyGateway (BaseClass ):
50+ class SmileTLegacyGateway (DeviceBase ):
4751 """Plugwise legacy Anna Smile-T Gateway data class."""
4852
4953 sensors : Weather
5054
5155
5256@dataclass
53- class SmileP1Gateway (BaseClass ):
57+ class SmileP1Gateway (DeviceBase ):
5458 """Plugwise Smile P1 Gateway data class."""
5559
5660 binary_sensors : GatewayBinarySensors
5761
5862
5963@dataclass
60- class SmileP1LegacyGateway (BaseClass ):
64+ class SmileP1LegacyGateway (DeviceBase ):
6165 """Plugwise legacy Smile P1 Gateway data class."""
6266
6367
6468@dataclass
65- class StretchGateway (BaseClass ):
69+ class StretchGateway (DeviceBase ):
6670 """Plugwise Stretch Gateway data class."""
6771
6872 zigbee_mac_address : str
@@ -83,7 +87,7 @@ class Weather:
8387
8488
8589@dataclass
86- class SmartEnergyMeter (BaseClass ):
90+ class SmartEnergyMeter (DeviceBase ):
8791 """DSMR Energy Meter data class."""
8892
8993 sensors : SmartEnergySensors
@@ -141,7 +145,7 @@ class SmartEnergyLegacySensors:
141145
142146
143147@dataclass
144- class Anna (BaseClass ):
148+ class Anna (DeviceBase ):
145149 """Plugwise Anna class, also for legacy Anna."""
146150
147151 climate_mode : str
@@ -163,7 +167,7 @@ class AnnaSensors:
163167
164168
165169@dataclass
166- class Zone (BaseClass ):
170+ class Zone (DeviceBase ):
167171 """Plugwise climate Zone data class."""
168172
169173 active_preset : str | None
@@ -187,14 +191,14 @@ class ZoneSensors:
187191
188192
189193@dataclass
190- class AnnaAdamData (BaseClass ):
194+ class AnnaAdamData (DeviceBase ):
191195 """Plugwise Anna-connected-to-Adam data class."""
192196
193197 sensors : AnnaSensors
194198
195199
196200@dataclass
197- class JipLisaTomData (BaseClass ):
201+ class JipLisaTomData (DeviceBase ):
198202 """JipLisaTomData data class.
199203
200204 Covering Plugwise Jip, Lisa and Tom/Floor devices.
@@ -263,7 +267,7 @@ class ThermostatsDict:
263267
264268
265269@dataclass
266- class OnOff (BaseClass ):
270+ class OnOff (DeviceBase ):
267271 """On-off climate device class."""
268272
269273 binary_sensors : OnOffBinarySensors
@@ -287,7 +291,7 @@ class OnOffSensors:
287291
288292
289293@dataclass
290- class OpenTherm (BaseClass ):
294+ class OpenTherm (DeviceBase ):
291295 """OpenTherm climate device class."""
292296
293297 binary_sensors : OpenThermBinarySensors
@@ -333,7 +337,7 @@ class OpenThermSwitches:
333337
334338
335339@dataclass
336- class PlugData (BaseClass ):
340+ class PlugData (DeviceBase ):
337341 """Plug data class covering Plugwise Adam/Stretch and Aqara Plugs, and generic ZigBee type Switches."""
338342
339343 sensors : PlugSensors | None
0 commit comments