diff --git a/homeassistant/components/netatmo/__init__.py b/homeassistant/components/netatmo/__init__.py index f575f227753..11cf167b85c 100644 --- a/homeassistant/components/netatmo/__init__.py +++ b/homeassistant/components/netatmo/__init__.py @@ -1,10 +1,10 @@ """The Netatmo integration.""" from __future__ import annotations -from datetime import datetime from http import HTTPStatus import logging import secrets +from typing import Any import aiohttp import pyatmo @@ -26,16 +26,9 @@ from homeassistant.const import ( CONF_CLIENT_ID, CONF_CLIENT_SECRET, CONF_WEBHOOK_ID, - EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP, ) -from homeassistant.core import ( - DOMAIN as HOMEASSISTANT_DOMAIN, - CoreState, - Event, - HomeAssistant, - ServiceCall, -) +from homeassistant.core import DOMAIN as HOMEASSISTANT_DOMAIN, HomeAssistant from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady from homeassistant.helpers import ( aiohttp_client, @@ -45,6 +38,7 @@ from homeassistant.helpers import ( from homeassistant.helpers.dispatcher import async_dispatcher_send from homeassistant.helpers.event import async_call_later from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue +from homeassistant.helpers.start import async_at_started from homeassistant.helpers.typing import ConfigType from . import api @@ -185,7 +179,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: await data_handler.async_setup() async def unregister_webhook( - call_or_event_or_dt: ServiceCall | Event | datetime | None, + _: Any, ) -> None: if CONF_WEBHOOK_ID not in entry.data: return @@ -204,7 +198,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ) async def register_webhook( - call_or_event_or_dt: ServiceCall | Event | datetime | None, + _: Any, ) -> None: if CONF_WEBHOOK_ID not in entry.data: data = {**entry.data, CONF_WEBHOOK_ID: secrets.token_hex()} @@ -254,11 +248,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: if cloud.async_is_connected(hass): await register_webhook(None) cloud.async_listen_connection_change(hass, manage_cloudhook) - - elif hass.state == CoreState.running: - await register_webhook(None) else: - hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STARTED, register_webhook) + async_at_started(hass, register_webhook) hass.services.async_register(DOMAIN, "register_webhook", register_webhook) hass.services.async_register(DOMAIN, "unregister_webhook", unregister_webhook)