Attributes

struct Attributes

Attributes for the OccupancySensingTrait.

  • A list of the attribute IDs of the attributes supported by the cluster instance. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var attributeList: [UInt32]? { get }
  • The sensed (processed) status of occupancy. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var occupancy: Matter.OccupancySensingTrait.OccupancyBitmap? { get }
  • The type of occupancy sensor. Valid values are defined in OccupancySensorTypeEnum Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var occupancySensorType: Matter.OccupancySensingTrait.OccupancySensorTypeEnum? { get }
  • The active occupancy sensor type. Valid modes are defined in OccupancySensorTypeBitmap Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var occupancySensorTypeBitmap: Matter.OccupancySensingTrait.OccupancySensorTypeBitmap? { get }
  • Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var holdTime: UInt16? { get }
  • Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var holdTimeLimits: Matter.OccupancySensingTrait.HoldTimeLimitsStruct? { get }
  • The time delay in seconds before the PIR sensor changes to its unoccupied state after detecting movement in the sensed area. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var pirOccupiedToUnoccupiedDelay: UInt16? { get }
  • The time delay in seconds before the PIR sensor changes to its occupied state after detecting movement in the sensed area. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var pirUnoccupiedToOccupiedDelay: UInt16? { get }
  • The number of movement detection events that must occur within the PirUnoccupiedToOccupiedDelay period before the PIR sensor transitions to its occupied state. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var pirUnoccupiedToOccupiedThreshold: UInt8? { get }
  • The time delay in seconds before the ultrasonic sensor changes to its unoccupied state after detecting movement in the sensed area. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var ultrasonicOccupiedToUnoccupiedDelay: UInt16? { get }
  • The time delay in seconds before the Ultrasonic sensor changes to its occupied state after detecting movement in the sensed area. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var ultrasonicUnoccupiedToOccupiedDelay: UInt16? { get }
  • The number of movement detection events required during the ultrasonicUnoccupiedToOccupiedDelay period before the ultrasonic sensor transitions to its occupied state. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var ultrasonicUnoccupiedToOccupiedThreshold: UInt8? { get }
  • The time delay in seconds before the physical contact occupancy sensor switches to its unoccupied state after detecting an unoccupied event. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var physicalContactOccupiedToUnoccupiedDelay: UInt16? { get }
  • The time delay in seconds before the physical contact occupancy sensor switches to its occupied state after detecting an occupied event. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var physicalContactUnoccupiedToOccupiedDelay: UInt16? { get }
  • The number of movement detection events required during the physicalContactUnoccupiedToOccupiedDelay period before the PIR sensor transitions to its occupied state. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var physicalContactUnoccupiedToOccupiedThreshold: UInt8? { get }
  • A list of server-generated commands (server to client) which are supported by this cluster server instance. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var generatedCommandList: [UInt32]? { get }
  • A list of client-generated commands which are supported by this cluster server instance.

    Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var acceptedCommandList: [UInt32]? { get }
  • Whether the server supports zero or more optional cluster features. A cluster feature is a set of cluster elements that are mandatory or optional for a defined feature of the cluster. If a cluster feature is supported by the cluster instance, then the corresponding bit is set to 1, otherwise the bit is set to 0 (zero). Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var featureMap: Matter.OccupancySensingTrait.Feature? { get }
  • The revision of the server cluster specification supported by the cluster instance. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var clusterRevision: UInt16? { get }
  • The trait identifier.

    Declaration

    Swift

    static var identifier: String { get }
  • Writes this object to the given TraitEncoder. Throws HomeError.encodingFailed if the data could not be encoded.

    Declaration

    Swift

    func encode(with encoder: TraitEncoder) throws
  • Returns a Boolean value indicating whether two values are equal.

    Equality is the inverse of inequality. For any values a and b, a == b implies that a != b is false.

    Declaration

    Swift

    static func == (lhs: Matter.OccupancySensingTrait.Attributes, rhs: Matter.OccupancySensingTrait.Attributes) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.

  • Hashes the essential components of this value by feeding them into the given hasher.

    Implement this method to conform to the Hashable protocol. The components used for hashing must be the same as the components compared in your type’s == operator implementation. Call hasher.combine(_:) with each of these components.

    Important

    In your implementation of hash(into:), don’t call finalize() on the hasher instance provided, or replace it with a different instance. Doing so may become a compile-time error in the future.

    Declaration

    Swift

    func hash(into hasher: inout Hasher)