Fix preserving long term statistics when entity_id is changed (#79556)

This commit is contained in:
Erik Montnemery 2022-10-04 03:13:48 +02:00 committed by GitHub
parent 90637a721c
commit 92ca95ca81
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -29,6 +29,7 @@ from homeassistant.core import Event, HomeAssistant, callback, valid_entity_id
from homeassistant.exceptions import HomeAssistantError from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import entity_registry from homeassistant.helpers import entity_registry
from homeassistant.helpers.json import JSONEncoder from homeassistant.helpers.json import JSONEncoder
from homeassistant.helpers.start import async_at_start
from homeassistant.helpers.storage import STORAGE_DIR from homeassistant.helpers.storage import STORAGE_DIR
from homeassistant.helpers.typing import UNDEFINED, UndefinedType from homeassistant.helpers.typing import UNDEFINED, UndefinedType
from homeassistant.util import dt as dt_util from homeassistant.util import dt as dt_util
@ -299,13 +300,17 @@ def async_setup(hass: HomeAssistant) -> None:
return True return True
if hass.is_running: @callback
def setup_entity_registry_event_handler(hass: HomeAssistant) -> None:
"""Subscribe to event registry events."""
hass.bus.async_listen( hass.bus.async_listen(
entity_registry.EVENT_ENTITY_REGISTRY_UPDATED, entity_registry.EVENT_ENTITY_REGISTRY_UPDATED,
_async_entity_id_changed, _async_entity_id_changed,
event_filter=entity_registry_changed_filter, event_filter=entity_registry_changed_filter,
) )
async_at_start(hass, setup_entity_registry_event_handler)
def get_start_time() -> datetime: def get_start_time() -> datetime:
"""Return start time.""" """Return start time."""