Home Assistant Unofficial Reference 2024.12.1
diagnostics.py
Go to the documentation of this file.
1 """Diagnostics support for Sensibo."""
2 
3 from __future__ import annotations
4 
5 from typing import Any
6 
7 from homeassistant.components.diagnostics import async_redact_data
8 from homeassistant.core import HomeAssistant
9 
10 from . import SensiboConfigEntry
11 
12 TO_REDACT = {
13  "location",
14  "ssid",
15  "id",
16  "mac",
17  "macAddress",
18  "parentDeviceUid",
19  "qrId",
20  "serial",
21  "uid",
22  "email",
23  "firstName",
24  "lastName",
25  "username",
26  "podUid",
27  "deviceUid",
28 }
29 
30 
32  hass: HomeAssistant, entry: SensiboConfigEntry
33 ) -> dict[str, Any]:
34  """Return diagnostics for Sensibo config entry."""
35  coordinator = entry.runtime_data
36  diag_data = {}
37  diag_data["raw"] = async_redact_data(coordinator.data.raw, TO_REDACT)
38  for device, device_data in coordinator.data.parsed.items():
39  diag_data[device] = async_redact_data(device_data.__dict__, TO_REDACT)
40  return diag_data
dict async_redact_data(Mapping data, Iterable[Any] to_redact)
Definition: util.py:14
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, SensiboConfigEntry entry)
Definition: diagnostics.py:33