Skip to content

Commit cac6a8e

Browse files
committed
More updates
1 parent e4958c5 commit cac6a8e

File tree

3 files changed

+21
-20
lines changed

3 files changed

+21
-20
lines changed

plugwise/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ async def _smile_detect(
195195
self.smile.hw_version = gateway.find("hardware_version").text
196196
self.smile.hostname = gateway.find("hostname").text
197197
self.smile.mac_address = gateway.find("mac_address").text
198-
self.smile._model_id = gateway.find("vendor_model").text
198+
self.smile.model_id = gateway.find("vendor_model").text
199199
else:
200200
model = await self._smile_detect_legacy(result, dsmrmain, model)
201201

plugwise/data.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def _all_entity_data(self) -> None:
3535
Collect data for each entity and add to self.gw_entities.
3636
"""
3737
self._update_gw_entities()
38-
if self.smile(ADAM):
38+
if self.check_name(ADAM):
3939
self._update_zones()
4040
self.gw_entities.update(self._zones)
4141

@@ -124,7 +124,7 @@ def _update_for_cooling(self, entity: GwEntityData) -> None:
124124
"""Helper-function for adding/updating various cooling-related values."""
125125
# For Anna and heating + cooling, replace setpoint with setpoint_high/_low
126126
if (
127-
self.smile(ANNA)
127+
self.check_name(ANNA)
128128
and self._cooling_present
129129
and entity["dev_class"] == "thermostat"
130130
):
@@ -194,11 +194,11 @@ def _get_entity_data(self, entity_id: str) -> GwEntityData:
194194
# Switching groups data
195195
self._entity_switching_group(entity, data)
196196
# Adam data
197-
if self.smile(ADAM):
197+
if self.check_name(ADAM):
198198
self._get_adam_data(entity, data)
199199

200200
# Thermostat data for Anna (presets, temperatures etc)
201-
if self.smile(ANNA) and entity["dev_class"] == "thermostat":
201+
if self.check_name(ANNA) and entity["dev_class"] == "thermostat":
202202
self._climate_data(entity_id, entity, data)
203203
self._get_anna_control_state(data)
204204

plugwise/helper.py

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,12 @@ def __init__(self) -> None:
8585
self._gateway_id: str = NONE
8686
self._zones: dict[str, GwEntityData]
8787
self.gw_entities: dict[str, GwEntityData]
88-
self.smile_hw_version: str | None
89-
self.smile_mac_address: str | None
90-
self.smile_model: str
91-
self.smile_model_id: str | None
92-
self.smile_version: version.Version
88+
self.smile: Munch = Munch()
89+
self.smile.hw_version: str | None
90+
self.smile.mac_address: str | None
91+
self.smile.model: str
92+
self.smile.model_id: str | None
93+
self.smile.version: version.Version
9394

9495
@property
9596
def gateway_id(self) -> str:
@@ -160,7 +161,7 @@ def _all_appliances(self) -> None:
160161

161162
self._create_gw_entities(appl)
162163

163-
if self.smile_type == "power":
164+
if self.smile.type == "power":
164165
self._get_p1_smartmeter_info()
165166

166167
# Sort the gw_entities
@@ -268,12 +269,12 @@ def _appliance_info_finder(self, appl: Munch, appliance: etree.Element) -> Munch
268269
def _appl_gateway_info(self, appl: Munch, appliance: etree.Element) -> Munch:
269270
"""Helper-function for _appliance_info_finder()."""
270271
self._gateway_id = appliance.attrib["id"]
271-
appl.firmware = str(self.smile_version)
272-
appl.hardware = self.smile_hw_version
273-
appl.mac = self.smile_mac_address
274-
appl.model = self.smile_model
275-
appl.model_id = self.smile_model_id
276-
appl.name = self.smile_name
272+
appl.firmware = str(self.smile.version)
273+
appl.hardware = self.smile.hw_version
274+
appl.mac = self.smile.mac_address
275+
appl.model = self.smile.model
276+
appl.model_id = self.smile.model_id
277+
appl.name = self.smile.name
277278
appl.vendor_name = "Plugwise"
278279

279280
# Adam: collect the ZigBee MAC address of the Smile
@@ -346,7 +347,7 @@ def _get_measurement_data(self, entity_id: str) -> GwEntityData:
346347
# Get P1 smartmeter data from LOCATIONS
347348
entity = self.gw_entities[entity_id]
348349
# !! DON'T CHANGE below two if-lines, will break stuff !!
349-
if self.smile_type == "power":
350+
if self.smile.type == "power":
350351
if entity["dev_class"] == "smartmeter":
351352
data.update(self._power_data_from_location())
352353

@@ -799,8 +800,8 @@ def _control_state(self, data: GwEntityData, loc_id: str) -> str | bool:
799800

800801
# Handle missing control_state in regulation_mode off for firmware >= 3.2.0 (issue #776)
801802
# In newer firmware versions, default to "off" when control_state is not present
802-
if self.smile_version != version.Version("0.0.0"):
803-
if self.smile_version >= version.parse("3.2.0"):
803+
if self.smile.version != version.Version("0.0.0"):
804+
if self.smile.version >= version.parse("3.2.0"):
804805
return "off"
805806

806807
# Older Adam firmware does not have the control_state xml-key

0 commit comments

Comments
 (0)