1 """Coordinator for the iAlarm integration."""
3 from __future__
import annotations
8 from pyialarm
import IAlarm
12 AlarmControlPanelState,
17 from .const
import DOMAIN, IALARM_TO_HASS
19 _LOGGER = logging.getLogger(__name__)
23 """Class to manage fetching iAlarm data."""
25 def __init__(self, hass: HomeAssistant, ialarm: IAlarm, mac: str) ->
None:
26 """Initialize global iAlarm data updater."""
28 self.
statestate: AlarmControlPanelState |
None =
None
29 self.host: str = ialarm.host
36 update_interval=SCAN_INTERVAL,
40 """Fetch data from iAlarm via sync functions."""
42 _LOGGER.debug(
"iAlarm status: %s", status)
44 self.
statestate = IALARM_TO_HASS.get(status)
47 """Fetch data from iAlarm."""
49 async
with asyncio.timeout(10):
51 except ConnectionError
as error:
None _async_update_data(self)
None __init__(self, HomeAssistant hass, IAlarm ialarm, str mac)
def get_status(hass, host, port)