1 """Support for the Autarco diagnostics."""
3 from __future__
import annotations
9 from .
import AutarcoConfigEntry, AutarcoDataUpdateCoordinator
13 hass: HomeAssistant, config_entry: AutarcoConfigEntry
15 """Return diagnostics for a config entry."""
16 autarco_data: list[AutarcoDataUpdateCoordinator] = config_entry.runtime_data
21 "id": coordinator.account_site.site_id,
22 "name": coordinator.account_site.system_name,
23 "health": coordinator.account_site.health,
25 "power_production": coordinator.data.solar.power_production,
26 "energy_production_today": coordinator.data.solar.energy_production_today,
27 "energy_production_month": coordinator.data.solar.energy_production_month,
28 "energy_production_total": coordinator.data.solar.energy_production_total,
32 "serial_number": inverter.serial_number,
33 "out_ac_power": inverter.out_ac_power,
34 "out_ac_energy_total": inverter.out_ac_energy_total,
35 "grid_turned_off": inverter.grid_turned_off,
36 "health": inverter.health,
38 for inverter
in coordinator.data.inverters.values()
43 "flow_now": coordinator.data.battery.flow_now,
44 "net_charged_now": coordinator.data.battery.net_charged_now,
45 "state_of_charge": coordinator.data.battery.state_of_charge,
46 "discharged_today": coordinator.data.battery.discharged_today,
47 "discharged_month": coordinator.data.battery.discharged_month,
48 "discharged_total": coordinator.data.battery.discharged_total,
49 "charged_today": coordinator.data.battery.charged_today,
50 "charged_month": coordinator.data.battery.charged_month,
51 "charged_total": coordinator.data.battery.charged_total,
54 if coordinator.data.battery
is not None
58 for coordinator
in autarco_data
dict[str, Any] async_get_config_entry_diagnostics(HomeAssistant hass, AutarcoConfigEntry config_entry)