struct Attributes
Attributes for the ExtendedThermostatTrait
.
-
A list of the attribute IDs of the attributes supported by the cluster instance. Nullable: false.
Declaration
Swift
@TraitAttribute var attributeList: [UInt32]? { get }
-
Minimum threshold of the supported temperature range for heating. Nullable: false.
Declaration
Swift
@TraitAttribute var minHeatSafetySetpointLimit: Int16? { get }
-
Maximum threshold of the supported temperature range for heating. Nullable: false.
Declaration
Swift
@TraitAttribute var maxHeatSafetySetpointLimit: Int16? { get }
-
Minimum threshold of the supported temperature range for cooling. Nullable: false.
Declaration
Swift
@TraitAttribute var minCoolSafetySetpointLimit: Int16? { get }
-
Maximum threshold of the supported temperature range for cooling. Nullable: false.
Declaration
Swift
@TraitAttribute var maxCoolSafetySetpointLimit: Int16? { get }
-
The extended thermostat modes that this device supports. Nullable: false.
Declaration
Swift
@TraitAttribute var extendedSupportedModes: [Google.ExtendedThermostatTrait.ExtendedThermostatMode]? { get }
-
Currently running mode of the device. Nullable: false.
Declaration
Swift
@TraitAttribute var extendedRunningMode: Google.ExtendedThermostatTrait.ExtendedRunningMode? { get }
-
Information about the presets that the devices supports. Nullable: false.
Declaration
Swift
@TraitAttribute var presets: [Google.ExtendedThermostatTrait.Preset]? { 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 }
-
A timestamp representing the estimated time when the target temperature will be reached. Nullable: false.
Declaration
Swift
@TraitAttribute var targetTemperatureTimestampSeconds: Int64? { 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 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 external device IDs of remote temperature sensors that this device can detect. Nullable: false.
Declaration
Swift
@TraitAttribute var remoteTemperatureSensorIds: [String]? { get }
-
The number of temperature sensors that can be simultaneously active for this thermostat. Nullable: false.
Declaration
Swift
@TraitAttribute var maxSettableThermostatTemperatureSensors: UInt32? { 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 }
-
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 }
-
The source of the current temperature hold. Nullable: false.
Declaration
Swift
@TraitAttribute var extendedSetpointChangeSource: Google.ExtendedThermostatTrait.ExtendedSetpointChangeSource? { get }
-
Additional information about the operational status of the device. Nullable: false.
Declaration
Swift
@TraitAttribute var extendedProgrammingOperationMode: UInt32? { get }
-
The current mode of the device. Nullable: false.
Declaration
Swift
@TraitAttribute var extendedSystemMode: Google.ExtendedThermostatTrait.ExtendedThermostatMode? { 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: Google.ExtendedThermostatTrait.ExtendedThermostatFeature? { 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
. ThrowsHomeError.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
andb
,a == b
implies thata != b
isfalse
.Declaration
Swift
static func == (lhs: Google.ExtendedThermostatTrait.Attributes, rhs: Google.ExtendedThermostatTrait.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. Callhasher.combine(_:)
with each of these components.Important
In your implementation of
hash(into:)
, don’t callfinalize()
on thehasher
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)