plugwise 1.7.7__tar.gz → 1.7.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plugwise-1.7.7 → plugwise-1.7.8}/PKG-INFO +1 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/constants.py +1 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/data.py +3 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/helper.py +10 -7
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/legacy/data.py +3 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise.egg-info/PKG-INFO +1 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/pyproject.toml +1 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_adam.py +123 -131
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_anna.py +110 -121
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_generic.py +2 -2
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_init.py +66 -68
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_legacy_anna.py +21 -23
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_legacy_generic.py +1 -1
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_legacy_p1.py +12 -12
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_legacy_stretch.py +22 -22
- {plugwise-1.7.7 → plugwise-1.7.8}/tests/test_p1.py +15 -15
- {plugwise-1.7.7 → plugwise-1.7.8}/LICENSE +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/README.md +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/__init__.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/common.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/exceptions.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/legacy/helper.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/legacy/smile.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/py.typed +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/smile.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/smilecomm.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise/util.py +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise.egg-info/SOURCES.txt +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise.egg-info/dependency_links.txt +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise.egg-info/requires.txt +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/plugwise.egg-info/top_level.txt +0 -0
- {plugwise-1.7.7 → plugwise-1.7.8}/setup.cfg +0 -0
@@ -553,7 +553,7 @@ class GwEntityData(TypedDict, total=False):
|
|
553
553
|
preset_modes: list[str] | None
|
554
554
|
# Schedules:
|
555
555
|
available_schedules: list[str]
|
556
|
-
select_schedule: str
|
556
|
+
select_schedule: str | None
|
557
557
|
|
558
558
|
climate_mode: str
|
559
559
|
# Extra for Adam Master Thermostats
|
@@ -268,11 +268,13 @@ class SmileData(SmileHelper):
|
|
268
268
|
data["active_preset"] = self._preset(loc_id)
|
269
269
|
|
270
270
|
# Schedule
|
271
|
+
data["available_schedules"] = []
|
272
|
+
data["select_schedule"] = None
|
273
|
+
self._count += 2
|
271
274
|
avail_schedules, sel_schedule = self._schedules(loc_id)
|
272
275
|
if avail_schedules != [NONE]:
|
273
276
|
data["available_schedules"] = avail_schedules
|
274
277
|
data["select_schedule"] = sel_schedule
|
275
|
-
self._count += 2
|
276
278
|
|
277
279
|
# Set HA climate HVACMode: auto, heat, heat_cool, cool and off
|
278
280
|
data["climate_mode"] = "auto"
|
@@ -411,7 +411,8 @@ class SmileHelper(SmileCommon):
|
|
411
411
|
case "elga_status_code":
|
412
412
|
data["elga_status_code"] = int(appl_p_loc.text)
|
413
413
|
case "select_dhw_mode":
|
414
|
-
|
414
|
+
if self._dhw_allowed_modes:
|
415
|
+
data["select_dhw_mode"] = appl_p_loc.text
|
415
416
|
|
416
417
|
common_match_cases(measurement, attrs, appl_p_loc, data)
|
417
418
|
|
@@ -522,7 +523,7 @@ class SmileHelper(SmileCommon):
|
|
522
523
|
|
523
524
|
Collect the requested gateway mode.
|
524
525
|
"""
|
525
|
-
if not (self.
|
526
|
+
if not (entity_id == self._gateway_id and self.check_name(ADAM)):
|
526
527
|
return None
|
527
528
|
|
528
529
|
if (search := search_actuator_functionalities(appliance, key)) is not None:
|
@@ -535,29 +536,31 @@ class SmileHelper(SmileCommon):
|
|
535
536
|
) -> None:
|
536
537
|
"""Helper-function for _get_measurement_data().
|
537
538
|
|
538
|
-
Adam: collect the gateway regulation_mode.
|
539
|
+
Adam gateway: collect the gateway regulation_mode.
|
539
540
|
"""
|
540
541
|
if (
|
541
542
|
mode := self._get_actuator_mode(
|
542
543
|
appliance, entity_id, "regulation_mode_control_functionality"
|
543
544
|
)
|
544
545
|
) is not None:
|
545
|
-
|
546
|
-
self._count += 1
|
546
|
+
# Below line needs to be here to set the boolean for both older and recent Adam firmware versions
|
547
547
|
self._cooling_enabled = mode == "cooling"
|
548
|
+
if self._reg_allowed_modes:
|
549
|
+
data["select_regulation_mode"] = mode
|
550
|
+
self._count += 1
|
548
551
|
|
549
552
|
def _get_gateway_mode(
|
550
553
|
self, appliance: etree.Element, entity_id: str, data: GwEntityData
|
551
554
|
) -> None:
|
552
555
|
"""Helper-function for _get_measurement_data().
|
553
556
|
|
554
|
-
Adam: collect the gateway mode.
|
557
|
+
Adam gateway: collect the gateway mode.
|
555
558
|
"""
|
556
559
|
if (
|
557
560
|
mode := self._get_actuator_mode(
|
558
561
|
appliance, entity_id, "gateway_mode_control_functionality"
|
559
562
|
)
|
560
|
-
) is not None:
|
563
|
+
) is not None and self._gw_allowed_modes:
|
561
564
|
data["select_gateway_mode"] = mode
|
562
565
|
self._count += 1
|
563
566
|
|
@@ -67,11 +67,13 @@ class SmileLegacyData(SmileLegacyHelper):
|
|
67
67
|
data["active_preset"] = self._preset()
|
68
68
|
|
69
69
|
# Schedule
|
70
|
+
data["available_schedules"] = []
|
71
|
+
data["select_schedule"] = None
|
72
|
+
self._count += 2
|
70
73
|
avail_schedules, sel_schedule = self._schedules()
|
71
74
|
if avail_schedules != [NONE]:
|
72
75
|
data["available_schedules"] = avail_schedules
|
73
76
|
data["select_schedule"] = sel_schedule
|
74
|
-
self._count += 2
|
75
77
|
|
76
78
|
# Set HA climate HVACMode: auto, heat
|
77
79
|
data["climate_mode"] = "auto"
|