Source code for aioafero.v1.models.security_system_sensor

"""Representation of an Afero Security System Sensor (derived) and its corresponding updates."""

from dataclasses import dataclass, field

from aioafero.v1.models import features

from .resource import ResourceTypes
from .standard_mixin import StandardMixin


[docs] @dataclass(kw_only=True) class SecuritySystemSensor(StandardMixin): """Representation of a security system sensor.""" type: ResourceTypes = ResourceTypes.SECURITY_SYSTEM_SENSOR config_key: str | None = None # Override the instance property to return an int @property def instance(self): """Instance for the split device.""" return int(self._id.rsplit(f"-{self.split_identifier}-", 1)[1])
[docs] @dataclass class SecuritySystemSensorPut: """States that can be updated for a Security System Sensor.""" sensor_config: features.SecuritySensorConfigFeature | None = field( default_factory=dict, repr=False, init=False )