Home Assistant Unofficial Reference 2024.12.1
diagnostics.py
Go to the documentation of this file.
1 """Diagnostics support for bluetooth."""
2 
3 from __future__ import annotations
4 
5 import platform
6 from typing import Any
7 
8 from bluetooth_adapters import get_dbus_managed_objects
9 
10 from homeassistant.config_entries import ConfigEntry
11 from homeassistant.core import HomeAssistant
12 
13 from .api import _get_manager
14 
15 
17  hass: HomeAssistant, entry: ConfigEntry
18 ) -> dict[str, Any]:
19  """Return diagnostics for a config entry."""
20  manager = _get_manager(hass)
21  manager_diagnostics = await manager.async_diagnostics()
22  adapters = await manager.async_get_bluetooth_adapters()
23  diagnostics = {
24  "manager": manager_diagnostics,
25  "adapters": adapters,
26  }
27  if platform.system() == "Linux":
28  diagnostics["dbus"] = await get_dbus_managed_objects()
29  return diagnostics
HomeAssistantBluetoothManager _get_manager(HomeAssistant hass)
Definition: api.py:35
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, ConfigEntry entry)
Definition: diagnostics.py:18