1 """Support for Aqualink pool feature switches."""
3 from __future__
import annotations
7 from iaqualink.device
import AqualinkSwitch
14 from .
import refresh_system
15 from .const
import DOMAIN
as AQUALINK_DOMAIN
16 from .entity
import AqualinkEntity
17 from .utils
import await_or_reraise
24 config_entry: ConfigEntry,
25 async_add_entities: AddEntitiesCallback,
27 """Set up discovered switches."""
35 """Representation of a switch."""
37 def __init__(self, dev: AqualinkSwitch) ->
None:
38 """Initialize AquaLink switch."""
43 elif name ==
"Waterfall" or name.endswith(
"Dscnt"):
45 elif name.endswith((
"Pump",
"Blower")):
47 if name.endswith(
"Heater"):
52 """Return whether the switch is on or not."""
53 return self.
devdev.is_on
57 """Turn on the switch."""
62 """Turn off the switch."""
None async_turn_on(self, **Any kwargs)
None async_turn_off(self, **Any kwargs)
None __init__(self, AqualinkSwitch dev)
None async_setup_entry(HomeAssistant hass, ConfigEntry config_entry, AddEntitiesCallback async_add_entities)
None await_or_reraise(Awaitable awaitable)