1 """Base entity class for Schlage."""
3 from pyschlage.lock
import Lock
8 from .const
import DOMAIN, MANUFACTURER
9 from .coordinator
import LockData, SchlageDataUpdateCoordinator
13 """Base Schlage entity."""
15 _attr_has_entity_name =
True
18 self, coordinator: SchlageDataUpdateCoordinator, device_id: str
20 """Initialize a Schlage entity."""
21 super().
__init__(coordinator=coordinator)
25 identifiers={(DOMAIN, device_id)},
26 name=self.
_lock_lock.name,
27 manufacturer=MANUFACTURER,
28 model=self.
_lock_lock.model_name,
29 sw_version=self.
_lock_lock.firmware_version,
34 """Fetch the LockData from our coordinator."""
35 return self.coordinator.data.locks[self.
device_iddevice_id]
39 """Fetch the Schlage lock from our coordinator."""
44 """Return if entity is available."""
45 return super().available
and self.
device_iddevice_id
in self.coordinator.data.locks
None __init__(self, SchlageDataUpdateCoordinator coordinator, str device_id)
LockData _lock_data(self)