Skip to content

Commit 6fe72a8

Browse files
committed
Start adding set-function
1 parent 5dc9adc commit 6fe72a8

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

plugwise/smile.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,8 @@ async def set_select(
240240
case "select_schedule":
241241
# schedule name corresponds to select option
242242
await self.set_schedule_state(loc_id, state, option)
243+
case "select_zone_profile":
244+
await self.set_zone_profile(option)
243245

244246
async def set_dhw_mode(self, mode: str) -> None:
245247
"""Set the domestic hot water heating regulation mode."""
@@ -304,6 +306,19 @@ async def set_regulation_mode(self, mode: str) -> None:
304306
uri = f"{APPLIANCES};type=gateway/regulation_mode_control"
305307
await self.call_request(uri, method="put", data=data)
306308

309+
async def set_zone_profile(self, profile: str) -> None:
310+
"""Set the Adam thermoszone heating profile."""
311+
if profile not in ("active", "off", "passive"):
312+
raise PlugwiseError("Plugwise: invalid zone profile.")
313+
314+
data = (
315+
"<thermostat_functionality>"
316+
f"<regulation_control>{profile}</regulation_control>"
317+
"</thermostat_functionality>"
318+
)
319+
uri = self._thermostat_uri(loc_id)
320+
await self.call_request(uri, method="put", data=data)
321+
307322
async def set_schedule_state(
308323
self,
309324
loc_id: str,

0 commit comments

Comments
 (0)