mirror of
https://github.com/home-assistant/core.git
synced 2025-07-16 09:47:13 +00:00
Set an appropriate SCAN_INTERVAL for Broadlink A1 sensor (#41309)
This commit is contained in:
parent
1fba245ff1
commit
2b83af856f
@ -44,6 +44,8 @@ class BroadlinkUpdateManager(ABC):
|
||||
monitor device availability.
|
||||
"""
|
||||
|
||||
SCAN_INTERVAL = timedelta(minutes=1)
|
||||
|
||||
def __init__(self, device):
|
||||
"""Initialize the update manager."""
|
||||
self.device = device
|
||||
@ -52,7 +54,7 @@ class BroadlinkUpdateManager(ABC):
|
||||
_LOGGER,
|
||||
name=f"{device.name} ({device.api.model} at {device.api.host[0]})",
|
||||
update_method=self.async_update,
|
||||
update_interval=timedelta(minutes=1),
|
||||
update_interval=self.SCAN_INTERVAL,
|
||||
)
|
||||
self.available = None
|
||||
self.last_update = None
|
||||
@ -64,7 +66,7 @@ class BroadlinkUpdateManager(ABC):
|
||||
|
||||
except (BroadlinkException, OSError) as err:
|
||||
if self.available and (
|
||||
dt.utcnow() - self.last_update > timedelta(minutes=3)
|
||||
dt.utcnow() - self.last_update > self.SCAN_INTERVAL * 3
|
||||
or isinstance(err, (AuthorizationError, OSError))
|
||||
):
|
||||
self.available = False
|
||||
@ -96,6 +98,8 @@ class BroadlinkUpdateManager(ABC):
|
||||
class BroadlinkA1UpdateManager(BroadlinkUpdateManager):
|
||||
"""Manages updates for Broadlink A1 devices."""
|
||||
|
||||
SCAN_INTERVAL = timedelta(seconds=10)
|
||||
|
||||
async def async_fetch_data(self):
|
||||
"""Fetch data from the device."""
|
||||
return await self.device.async_request(self.device.api.check_sensors_raw)
|
||||
|
Loading…
x
Reference in New Issue
Block a user