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 指令。

這個指令會根據節能模式的目前狀態或異動,影響其他特徵:

  • 如果節能模式關閉,溫度控制器模式會預設為使用中的最後一個標準模式 (暖氣、COOL、HEATCOOL 或 關閉)。
  • 如果節能模式為「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」

錯誤

系統可能會根據這個特徵傳回以下錯誤代碼:

錯誤訊息 RPC 疑難排解
目前的溫度控制器模式不支援指令。 FAILED_PRECONDITION 根據 ThermostatMode 特徵,部分溫度控制器型號不支援在溫度控制器關閉時變更節能模式。你必須先將溫度控制器模式變更為「暖氣」、「COOL」或「HEATCOOL」,才能變更節能模式。
溫度控制器在 MANUAL_ECO 模式下無法使用指令。 FAILED_PRECONDITION 如果溫度控制器處於手動節能模式,就無法設定溫度設定點。

如需 API 錯誤代碼的完整清單,請參閱 API 錯誤代碼參考資料