Home Assistant Unofficial Reference 2024.12.1
device_tracker.py
Go to the documentation of this file.
1 """Creates the device tracker entity for the mower."""
2 
3 from homeassistant.components.device_tracker import TrackerEntity
4 from homeassistant.core import HomeAssistant
5 from homeassistant.helpers.entity_platform import AddEntitiesCallback
6 
7 from . import AutomowerConfigEntry
8 from .coordinator import AutomowerDataUpdateCoordinator
9 from .entity import AutomowerBaseEntity
10 
11 
13  hass: HomeAssistant,
14  entry: AutomowerConfigEntry,
15  async_add_entities: AddEntitiesCallback,
16 ) -> None:
17  """Set up device tracker platform."""
18  coordinator = entry.runtime_data
20  AutomowerDeviceTrackerEntity(mower_id, coordinator)
21  for mower_id in coordinator.data
22  if coordinator.data[mower_id].capabilities.position
23  )
24 
25 
27  """Defining the AutomowerDeviceTrackerEntity."""
28 
29  _attr_name = None
30 
31  def __init__(
32  self,
33  mower_id: str,
34  coordinator: AutomowerDataUpdateCoordinator,
35  ) -> None:
36  """Initialize AutomowerDeviceTracker."""
37  super().__init__(mower_id, coordinator)
38  self._attr_unique_id_attr_unique_id = mower_id
39 
40  @property
41  def latitude(self) -> float:
42  """Return latitude value of the device."""
43  return self.mower_attributesmower_attributes.positions[0].latitude
44 
45  @property
46  def longitude(self) -> float:
47  """Return longitude value of the device."""
48  return self.mower_attributesmower_attributes.positions[0].longitude
None __init__(self, str mower_id, AutomowerDataUpdateCoordinator coordinator)
None async_setup_entry(HomeAssistant hass, AutomowerConfigEntry entry, AddEntitiesCallback async_add_entities)