1 """Coordinator for Iskra integration."""
3 from datetime
import timedelta
6 from pyiskra.devices
import Device
7 from pyiskra.exceptions
import (
17 from .const
import DOMAIN
19 _LOGGER = logging.getLogger(__name__)
23 """Class to manage fetching Iskra data."""
25 def __init__(self, hass: HomeAssistant, device: Device) ->
None:
35 update_interval=update_interval,
39 """Fetch data from Iskra device."""
41 await self.
devicedevice.update_status()
42 except DeviceTimeoutError
as e:
44 f
"Timeout error occurred while updating data for device {self.device.serial}"
46 except DeviceConnectionError
as e:
48 f
"Connection error occurred while updating data for device {self.device.serial}"
50 except NotAuthorised
as e:
52 f
"Not authorised to fetch data from device {self.device.serial}"
54 except InvalidResponseCode
as e:
56 f
"Invalid response code from device {self.device.serial}"
None _async_update_data(self)
None __init__(self, HomeAssistant hass, Device device)