diff --git a/custom_components/oasis_mini/__init__.py b/custom_components/oasis_mini/__init__.py index 5e286f2..79b9bb0 100644 --- a/custom_components/oasis_mini/__init__.py +++ b/custom_components/oasis_mini/__init__.py @@ -41,7 +41,7 @@ PLATFORMS = [ def setup_platform_from_coordinator( entry: OasisDeviceConfigEntry, async_add_entities: AddEntitiesCallback, - make_entities: Callable[[OasisDevice], Iterable[OasisDeviceEntity]], + make_entities: Callable[[list[OasisDevice]], Iterable[OasisDeviceEntity]], update_before_add: bool = False, ) -> None: """ @@ -103,7 +103,11 @@ async def async_setup_entry(hass: HomeAssistant, entry: OasisDeviceConfigEntry) try: user = await cloud_client.async_get_user() except UnauthenticatedError as err: + await cloud_client.async_close() raise ConfigEntryAuthFailed(err) from err + except Exception: + await cloud_client.async_close() + raise mqtt_client = OasisMqttClient() mqtt_client.start() diff --git a/custom_components/oasis_mini/coordinator.py b/custom_components/oasis_mini/coordinator.py index ef4e500..702cd0e 100644 --- a/custom_components/oasis_mini/coordinator.py +++ b/custom_components/oasis_mini/coordinator.py @@ -125,7 +125,7 @@ class OasisDeviceCoordinator(DataUpdateCoordinator[list[OasisDevice]]): for device in devices: try: ready = await self.mqtt_client.wait_until_ready( - device, timeout=3, request_status=True + device, request_status=True ) if not ready: _LOGGER.warning(