Migrate proximity to use async_track_state_change_event (#115002)
This commit is contained in:
parent
34bf4dc962
commit
b6d0c9d1c3
2 changed files with 15 additions and 5 deletions
|
@ -20,7 +20,7 @@ from homeassistant.core import DOMAIN as HOMEASSISTANT_DOMAIN, HomeAssistant
|
|||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.event import (
|
||||
async_track_entity_registry_updated_event,
|
||||
async_track_state_change,
|
||||
async_track_state_change_event,
|
||||
)
|
||||
from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
|
@ -142,7 +142,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
|
|||
coordinator = ProximityDataUpdateCoordinator(hass, entry.title, dict(entry.data))
|
||||
|
||||
entry.async_on_unload(
|
||||
async_track_state_change(
|
||||
async_track_state_change_event(
|
||||
hass,
|
||||
entry.data[CONF_TRACKED_ENTITIES],
|
||||
coordinator.async_check_proximity_state_change,
|
||||
|
|
|
@ -15,7 +15,13 @@ from homeassistant.const import (
|
|||
CONF_ZONE,
|
||||
UnitOfLength,
|
||||
)
|
||||
from homeassistant.core import Event, HomeAssistant, State, callback
|
||||
from homeassistant.core import (
|
||||
Event,
|
||||
EventStateChangedData,
|
||||
HomeAssistant,
|
||||
State,
|
||||
callback,
|
||||
)
|
||||
from homeassistant.helpers import entity_registry as er
|
||||
from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
|
@ -100,10 +106,14 @@ class ProximityDataUpdateCoordinator(DataUpdateCoordinator[ProximityData]):
|
|||
self.entity_mapping[tracked_entity_id].append(entity_id)
|
||||
|
||||
async def async_check_proximity_state_change(
|
||||
self, entity: str, old_state: State | None, new_state: State | None
|
||||
self,
|
||||
event: Event[EventStateChangedData],
|
||||
) -> None:
|
||||
"""Fetch and process state change event."""
|
||||
self.state_change_data = StateChangedData(entity, old_state, new_state)
|
||||
data = event.data
|
||||
self.state_change_data = StateChangedData(
|
||||
data["entity_id"], data["old_state"], data["new_state"]
|
||||
)
|
||||
await self.async_refresh()
|
||||
|
||||
async def async_check_tracked_entity_change(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue