Attributes

struct Attributes

Attributes for the ExtendedThermostatTrait.

  • 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: Google.ExtendedThermostatTrait.Attributes, rhs: Google.ExtendedThermostatTrait.Attributes) -> Bool

    Parameters

    lhs

    A value to compare.

    rhs

    Another value to compare.

  • A list of client-generated commands which are supported by this cluster server instance.

    Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var acceptedCommandList: [UInt32]? { get }
  • The current preset handle that is running, from the list of supported presets. This attribute is not set if no presets are actively running. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var activePresetHandle: String? { get }
  • The external device IDs of remote, active temperature sensors that this device can detect. This attribute is not set if the device does not currently have any active, remote temperature sensors. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var activeRemoteTemperatureSensorIds: [String]? { get }
  • A list of the attribute IDs of the attributes supported by the cluster instance. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var attributeList: [UInt32]? { get }
  • The average ambient temperature across all active sensors, in Celsius with a resolution of 0.01°C. This attribute gets set if the device has multiple active temperature sensors. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var averageLocalTemperature: Int16? { get }
  • The revision of the server cluster specification supported by the cluster instance. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var clusterRevision: UInt16? { 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
  • Additional information about the operational status of the device. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var extendedProgrammingOperationMode: UInt32? { get }
  • Currently running mode of the device. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var extendedRunningMode: Google.ExtendedThermostatTrait.ExtendedRunningMode? { get }
  • The source of the current temperature hold. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var extendedSetpointChangeSource: Google.ExtendedThermostatTrait.ExtendedSetpointChangeSource? { get }
  • The extended thermostat modes that this device supports. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var extendedSupportedModes: [Google.ExtendedThermostatTrait.ExtendedThermostatMode]? { get }
  • The current mode of the device. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var extendedSystemMode: Google.ExtendedThermostatTrait.ExtendedThermostatMode? { 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: Google.ExtendedThermostatTrait.ExtendedThermostatFeature? { 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 }
  • 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)
  • The trait identifier.

    Declaration

    Swift

    static var identifier: String { get }
  • Maximum threshold of the supported temperature range for cooling. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var maxCoolSafetySetpointLimit: Int16? { get }
  • Maximum threshold of the supported temperature range for heating. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var maxHeatSafetySetpointLimit: Int16? { get }
  • The maximum number of seconds that a temperature setpoint can be held. Setting this value to -1 indicates that there is no limit to the hold duration. If unset, holding the temperature to a setpoint is not supported. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var maxSetpointHoldSeconds: Int32? { get }
  • The number of temperature sensors that can be simultaneously active for this thermostat. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var maxSettableThermostatTemperatureSensors: UInt32? { get }
  • Minimum threshold of the supported temperature range for cooling. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var minCoolSafetySetpointLimit: Int16? { get }
  • Minimum threshold of the supported temperature range for heating. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var minHeatSafetySetpointLimit: Int16? { get }
  • Information about the presets that the devices supports. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var presets: [Google.ExtendedThermostatTrait.Preset]? { get }
  • The external device IDs of remote temperature sensors that this device can detect. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var remoteTemperatureSensorIds: [String]? { get }
  • A timestamp representing the estimated time when the target temperature will be reached. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var targetTemperatureTimestampSeconds: Int64? { get }
  • The Unix Epoch timestamp of when an active temperature hold expires. Setting this value to -1 indicates that the hold has no expiration. Nullable: false.

    Declaration

    Swift

    @TraitAttribute
    var temperatureSetpointHoldExpiryTimestampSeconds: Int64? { get }