1 """Component to control TOLO Sauna/Steam Bath."""
3 from __future__
import annotations
5 from datetime
import timedelta
7 from typing
import NamedTuple
9 from tololib
import ToloClient, ToloSettings, ToloStatus
16 from .const
import DEFAULT_RETRY_COUNT, DEFAULT_RETRY_TIMEOUT
18 _LOGGER = logging.getLogger(__name__)
22 """Compound class for reflecting full state (status and info) of a TOLO Sauna."""
25 settings: ToloSettings
29 """DataUpdateCoordinator for TOLO Sauna."""
31 def __init__(self, hass: HomeAssistant, entry: ConfigEntry) ->
None:
32 """Initialize ToloSaunaUpdateCoordinator."""
34 address=entry.data[CONF_HOST],
35 retry_timeout=DEFAULT_RETRY_TIMEOUT,
36 retry_count=DEFAULT_RETRY_COUNT,
41 name=f
"{entry.title} ({entry.data[CONF_HOST]}) Data Update Coordinator",
51 settings = self.
clientclient.get_settings()
52 except TimeoutError
as error:
ToloSaunaData _get_tolo_sauna_data(self)
None __init__(self, HomeAssistant hass, ConfigEntry entry)
ToloSaunaData _async_update_data(self)
def get_status(hass, host, port)