Air Temperature Trait
API Service: AirTemperatureApi
Device trait allowing query and control of the air temperature for a space. Like a thermostat and associated HVAC system.
Method | Request Type | Response Type | Description |
---|---|---|---|
GetAirTemperature | GetAirTemperatureRequest | AirTemperature | Get the current state of the device |
UpdateAirTemperature | UpdateAirTemperatureRequest | AirTemperature | Update the target state for the device. the returned state may not be complete but will indicate at least the current values for any set fields as part of the request. |
PullAirTemperature | PullAirTemperatureRequest | PullAirTemperatureResponse stream | Request notification of change to the device state. The messages in the response stream may not be complete but will indicate the changes as they occur. They should be merged with the full state as fetched by the GetAirTemperature method. |
Info Service: AirTemperatureInfo
Describes the capabilities of a specific named device with respect to this trait.
Method | Request Type | Response Type | Description |
---|---|---|---|
DescribeAirTemperature | DescribeAirTemperatureRequest | AirTemperatureSupport | Get information about how a named device implements AirTemperature features |
AirTemperature
All the properties of the device
Field Name | Type | Description |
---|---|---|
mode | AirTemperature.Mode | The current mode for the device |
temperature_set_point | smartcore.types.Temperature | A target temperature for the device |
temperature_set_point_delta | smartcore.types.Temperature | Write-only. Set the target temperature to a value relative to the current value. |
temperature_range | TemperatureRange | A target range for the device. Only supported when in HEAT_COOL mode |
ambient_temperature | smartcore.types.Temperature | Optional, read-only. The ambient temperature as read by the device |
ambient_humidity | float | Optional, read-only. The ambient relative humidity percentage, as read by the device |
dew_point | smartcore.types.Temperature | Optional, read-only. The dew-point as read by the device |
AirTemperature.Mode
Supported modes for a device. Some of these values are used as descriptive attributes, some are used for control
Name | Number | Description |
---|---|---|
MODE_UNSPECIFIED | 0 | The mode is unknown during a query. If used during a write then no change will be made, if part of a read then the mode is unknown. This makes no sense as part of an attribute. |
ON | 1 | Write-only. If the device is OFF restore it to it's previous state |
OFF | 2 | Attr, read, write. The device supports, is, or should be disabled |
HEAT | 3 | Attr, read, write. The device supports, is, or should be heating |
COOL | 4 | Attr, read, write. The device supports, is, or should be cooling |
HEAT_COOL | 5 | Attr, read, write. The device supports, is, or should be maintaining heating/cooling to target a specific set point (and/or min + max) |
AUTO | 6 | Attr. The device supports automatic control of set points and/or schedules based on some other means (AI for example) |
FAN_ONLY | 7 | Attr, read, write. The device supports, is, or should be able to use only the fan without heating/cooling elements. |
ECO | 8 | Attr, read, write. The device supports, is, or should be in an energy saving "eco" mode |
PURIFIER | 9 | Attr, read, write. The device supports, is, or should be in an air purifying mode |
DRY | 10 | Attr, read, write. The device supports, is, or should be in an air drying mode |
LOCKED | 11 | Attr, read, write. The device supports, is, or should be in locked mode (i.e. not user-editable) |
TemperatureRange
A setting for devices that target a temperature between a range.
Field Name | Type | Description |
---|---|---|
low | smartcore.types.Temperature | Required. The low threshold for the range |
high | smartcore.types.Temperature | Required. The high threshold for the range |
ideal | smartcore.types.Temperature | Optional. An ideal value for cases where a device supports three set points |
AirTemperatureSupport
AirTemperatureSupport describes the capabilities of devices implementing this trait
Field Name | Type | Description |
---|---|---|
resource_support | smartcore.types.ResourceSupport | How a named device supports read/write/pull apis |
native_unit | smartcore.types.TemperatureUnit | How the device thinks, all communications will be in celsius but the device's native unit is this. |
supported_modes | repeated AirTemperature.Mode | The list of modes a device supports. |
min_range_celsius | double | The minimum difference between the low and high temperatures when set using a range. 0 means unset, default to 2. |
GetAirTemperatureRequest
Request message for fetching device state
Field Name | Type | Description |
---|---|---|
name | string | |
read_mask | google.protobuf.FieldMask | The state fields to fetch |
UpdateAirTemperatureRequest
Request message for updating the device state
Field Name | Type | Description |
---|---|---|
name | string | |
state | AirTemperature | |
update_mask | google.protobuf.FieldMask | The fields relative to state we intend to update |
PullAirTemperatureRequest
Request message for subscribing to changes in the devices state
Field Name | Type | Description |
---|---|---|
name | string | |
read_mask | google.protobuf.FieldMask | The state fields to fetch |
updates_only | bool | When true the device will only send changes to the resource value. The default behaviour is to send the current value immediately followed by any updates as they happen. |
PullAirTemperatureResponse
Response message enclosing device state changes
Field Name | Type | Description |
---|---|---|
changes | repeated PullAirTemperatureResponse.Change |
PullAirTemperatureResponse.Change
Field Name | Type | Description |
---|---|---|
name | string | name for the device that issued the change |
change_time | google.protobuf.Timestamp | when the change occurred |
air_temperature | AirTemperature | The new value for the device state. Only changed fields will be set, should be merged with GetState full response as required. |
DescribeAirTemperatureRequest
Field Name | Type | Description |
---|---|---|
name | string | The name of the device |