From 3a510f84a737a5d12a95f4b5b53b459eb75b7c13 Mon Sep 17 00:00:00 2001 From: jmwaldrip Date: Mon, 22 Jan 2024 12:22:54 -0800 Subject: [PATCH] Fix SleepIQ setting FootWarmer timer (#108433) * Fixing foot warmer timer bug * Fixing bug where temperature wasnt assigned to number entity causing tests to fail --- homeassistant/components/sleepiq/number.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/sleepiq/number.py b/homeassistant/components/sleepiq/number.py index 520e11bb331..4f90ef7dbdc 100644 --- a/homeassistant/components/sleepiq/number.py +++ b/homeassistant/components/sleepiq/number.py @@ -5,7 +5,13 @@ from collections.abc import Callable, Coroutine from dataclasses import dataclass from typing import Any, cast -from asyncsleepiq import SleepIQActuator, SleepIQBed, SleepIQFootWarmer, SleepIQSleeper +from asyncsleepiq import ( + FootWarmingTemps, + SleepIQActuator, + SleepIQBed, + SleepIQFootWarmer, + SleepIQSleeper, +) from homeassistant.components.number import NumberEntity, NumberEntityDescription from homeassistant.config_entries import ConfigEntry @@ -79,6 +85,10 @@ def _get_sleeper_unique_id(bed: SleepIQBed, sleeper: SleepIQSleeper) -> str: async def _async_set_foot_warmer_time( foot_warmer: SleepIQFootWarmer, time: int ) -> None: + temperature = FootWarmingTemps(foot_warmer.temperature) + if temperature != FootWarmingTemps.OFF: + await foot_warmer.turn_on(temperature, time) + foot_warmer.timer = time