1 """Base class for TotalConnect entities."""
3 from total_connect_client.location
import TotalConnectLocation
4 from total_connect_client.zone
import TotalConnectZone
9 from .const
import DOMAIN
10 from .coordinator
import TotalConnectDataUpdateCoordinator
14 """Represent a TotalConnect entity."""
16 _attr_has_entity_name =
True
20 """Represent a TotalConnect location."""
24 coordinator: TotalConnectDataUpdateCoordinator,
25 location: TotalConnectLocation,
27 """Initialize the TotalConnect location."""
30 self.
devicedevice = device = location.devices[location.security_device_id]
32 identifiers={(DOMAIN, device.serial_number)},
34 serial_number=device.serial_number,
39 """Represent a TotalConnect zone."""
43 coordinator: TotalConnectDataUpdateCoordinator,
44 zone: TotalConnectZone,
48 """Initialize the TotalConnect zone."""
53 identifier = zone.sensor_serial_number
or f
"zone_{zone.zoneid}"
55 identifiers={(DOMAIN, identifier)},
56 name=zone.description,
57 serial_number=zone.sensor_serial_number,
None __init__(self, TotalConnectDataUpdateCoordinator coordinator, TotalConnectLocation location)
None __init__(self, TotalConnectDataUpdateCoordinator coordinator, TotalConnectZone zone, str location_id, str key)