From 104d236646b1a15d39c4eb80512ea7b0fa6c9dda Mon Sep 17 00:00:00 2001 From: Joakim Plate Date: Thu, 7 Jul 2022 08:40:10 +0200 Subject: [PATCH] fjaraskupan: Make sure we stop bleak on home assistant stop (#74545) * Make sure we stop bleak on home assistant stop * Fix typing Co-authored-by: Martin Hjelmare --- homeassistant/components/fjaraskupan/__init__.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/fjaraskupan/__init__.py b/homeassistant/components/fjaraskupan/__init__.py index 4c4f19403a6..85e95db5513 100644 --- a/homeassistant/components/fjaraskupan/__init__.py +++ b/homeassistant/components/fjaraskupan/__init__.py @@ -12,8 +12,8 @@ from bleak.backends.scanner import AdvertisementData from fjaraskupan import Device, State, device_filter from homeassistant.config_entries import ConfigEntry -from homeassistant.const import Platform -from homeassistant.core import HomeAssistant, callback +from homeassistant.const import EVENT_HOMEASSISTANT_STOP, Platform +from homeassistant.core import Event, HomeAssistant, callback from homeassistant.helpers.dispatcher import ( async_dispatcher_connect, async_dispatcher_send, @@ -131,6 +131,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: scanner.register_detection_callback(detection_callback) await scanner.start() + async def on_hass_stop(event: Event) -> None: + await scanner.stop() + + entry.async_on_unload( + hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STOP, on_hass_stop) + ) + hass.config_entries.async_setup_platforms(entry, PLATFORMS) return True