ThermostatEco 架构

Nest Thermostat 

sdm.devices.traits.ThermostatEco

此特征属于支持 ECO 模式的 THERMOSTAT 设备类型。

字段

字段 说明 数据类型
availableModes 受支持的节能模式列表。 array(string)
值:["MANUAL_ECO", "OFF"]
mode 温控器目前的节能模式。 string
值:“MANUAL_ECO”、“OFF”
heatCelsius 温控器在节能模式下开始供暖的最低温度(摄氏度)。 number
示例:20.0
coolCelsius 最高温度(摄氏度),温控器在节能模式下开始制冷。 number
示例:22.0

示例 GET 请求和响应

请求

GET /enterprises/project-id/devices/device-id

响应

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatEco" : {
      "availableModes" : ["MANUAL_ECO", "OFF"],
      "mode" : "MANUAL_ECO",
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

命令

SetMode

调节温控器的节能模式。

如需将温控器模式更改为 HEAT、COOL 或 HEATCOOL,请使用 ThermostatMode 特征的 SetMode 命令。

此命令会影响其他特征,具体取决于节能模式的当前状态或节能模式的变化:

  • 如果节能模式处于关闭状态,温控器模式将默认采用上次启用的标准模式(HEAT、COOL、HEATCOOL 或 OFF)。
  • 如果节能模式为 MANUAL_ECO:

SetMode 请求和响应

请求

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatEco.SetMode",
  "params" : {
    "mode" : "MANUAL_ECO"
  }
}

响应

{}

SetMode 请求字段

字段 说明 数据类型
mode 要将温控器更改为的节能模式。 string
值:“MANUAL_ECO”、“OFF”

错误

系统可能会返回与此 trait 相关的以下错误代码:

错误消息 RPC 问题排查
不允许在当前温控器模式下执行该命令。 FAILED_PRECONDITION 根据 ThermostatMode 特征,某些温控器型号不支持在温控器关闭时更改节能模式。更改节能模式之前,必须先将温控器模式更改为制热、制冷或制热。
当温控器处于 MANUAL_ECO 模式时,不允许使用该命令。 FAILED_PRECONDITION 当温控器处于手动节能模式时,无法设置温度设定值。

请参阅 API 错误代码参考,了解 API 错误代码的完整列表。