1 """Diagnostics support for Proximity."""
3 from __future__
import annotations
21 from .coordinator
import ProximityConfigEntry
36 hass: HomeAssistant, entry: ProximityConfigEntry
38 """Return diagnostics for a config entry."""
39 coordinator = entry.runtime_data
42 "entry": entry.as_dict(),
45 non_sensitiv_states = [
50 ] + [z.name
for z
in hass.states.async_all(ZONE_DOMAIN)]
52 tracked_states: dict[str, dict] = {}
53 for tracked_entity_id
in coordinator.tracked_entities:
54 if (state := hass.states.get(tracked_entity_id))
is None:
57 state.as_dict(), TO_REDACT
59 if state.state
not in non_sensitiv_states:
60 tracked_states[tracked_entity_id][
"state"] = REDACTED
63 "proximity": coordinator.data.proximity,
64 "entities": coordinator.data.entities,
65 "entity_mapping": coordinator.entity_mapping,
66 "tracked_states": tracked_states,
dict async_redact_data(Mapping data, Iterable[Any] to_redact)
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, ProximityConfigEntry entry)