From ff88b95fb313f5abbd008ea60aa55dc010bcf3a0 Mon Sep 17 00:00:00 2001 From: Luke Date: Mon, 29 Dec 2025 13:07:32 -0500 Subject: [PATCH] feat: expose prefer-cache to create_device_manager caller --- roborock/devices/device_manager.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/roborock/devices/device_manager.py b/roborock/devices/device_manager.py index 2ff01085..ccbf33df 100644 --- a/roborock/devices/device_manager.py +++ b/roborock/devices/device_manager.py @@ -186,6 +186,7 @@ async def create_device_manager( session: aiohttp.ClientSession | None = None, ready_callback: DeviceReadyCallback | None = None, mqtt_session_unauthorized_hook: SessionUnauthorizedHook | None = None, + prefer_cache: bool = True, ) -> DeviceManager: """Convenience function to create and initialize a DeviceManager. @@ -198,6 +199,7 @@ async def create_device_manager( mqtt_session_unauthorized_hook: Optional hook for MQTT session unauthorized events which may indicate rate limiting or revoked credentials. The caller may use this to refresh authentication tokens as needed. + prefer_cache: Whether to prefer cached device data over always fetching it from the API. Returns: An initialized DeviceManager with discovered devices. @@ -259,5 +261,5 @@ def device_creator(home_data: HomeData, device: HomeDataDevice, product: HomeDat return dev manager = DeviceManager(web_api, device_creator, mqtt_session=mqtt_session, cache=cache, diagnostics=diagnostics) - await manager.discover_devices() + await manager.discover_devices(prefer_cache) return manager