1 """Support for Volvo On Call sensors."""
3 from __future__
import annotations
5 from volvooncall.dashboard
import Instrument
13 from .const
import DOMAIN, VOLVO_DISCOVERY_NEW
14 from .coordinator
import VolvoUpdateCoordinator
15 from .entity
import VolvoEntity
20 config_entry: ConfigEntry,
21 async_add_entities: AddEntitiesCallback,
23 """Configure sensors from a config entry created in the integrations UI."""
24 coordinator: VolvoUpdateCoordinator = hass.data[DOMAIN][config_entry.entry_id]
25 volvo_data = coordinator.volvo_data
29 """Discover and add a discovered Volvo On Call sensor."""
33 instrument.vehicle.vin,
38 for instrument
in instruments
39 if instrument.component ==
"sensor"
44 config_entry.async_on_unload(
50 """Representation of a Volvo sensor."""
54 coordinator: VolvoUpdateCoordinator,
60 """Initialize the sensor."""
61 super().
__init__(vin, component, attribute, slug_attr, coordinator)
70 """Handle updated data from the coordinator."""
None _update_value_and_unit(self)
None __init__(self, VolvoUpdateCoordinator coordinator, str vin, str component, str attribute, str slug_attr)
None _handle_coordinator_update(self)
_attr_native_unit_of_measurement
None async_write_ha_state(self)
ElkSystem|None async_discover_device(HomeAssistant hass, str host)
None async_setup_entry(HomeAssistant hass, ConfigEntry config_entry, AddEntitiesCallback async_add_entities)
Callable[[], None] async_dispatcher_connect(HomeAssistant hass, str signal, Callable[..., Any] target)