1 """Support for tracking MySensors devices."""
3 from __future__
import annotations
12 from .
import setup_mysensors_platform
13 from .const
import MYSENSORS_DISCOVERY, DiscoveryInfo
14 from .entity
import MySensorsChildEntity
15 from .helpers
import on_unload
20 config_entry: ConfigEntry,
21 async_add_entities: AddEntitiesCallback,
23 """Set up this platform for a specific ConfigEntry(==Gateway)."""
27 """Discover and add a MySensors device tracker."""
30 Platform.DEVICE_TRACKER,
32 MySensorsDeviceTracker,
33 async_add_entities=async_add_entities,
38 config_entry.entry_id,
41 MYSENSORS_DISCOVERY.format(config_entry.entry_id, Platform.DEVICE_TRACKER),
48 """Represent a MySensors device tracker."""
52 """Update the controller with the latest value from a device."""
54 node = self.gateway.sensors[self.node_id]
55 child = node.children[self.child_id]
56 position: str = child.values[self.value_type]
57 latitude, longitude, _ = position.split(
",")
None async_setup_entry(HomeAssistant hass, ConfigEntry config_entry, AddEntitiesCallback async_add_entities)
None on_unload(HomeAssistant hass, GatewayId gateway_id, Callable fnct)
None async_discover(DiscoveryInfo discovery_info)
list[MySensorsChildEntity]|None setup_mysensors_platform(HomeAssistant hass, Platform domain, DiscoveryInfo discovery_info, type[MySensorsChildEntity]|Mapping[SensorType, type[MySensorsChildEntity]] device_class,(tuple|None) device_args=None, Callable|None async_add_entities=None)
Callable[[], None] async_dispatcher_connect(HomeAssistant hass, str signal, Callable[..., Any] target)