ThermostatEco 結構定義
sdm.devices.traits.ThermostatEco
這個特徵屬於支援 ECO 模式的溫度控制器裝置類型。
欄位
欄位 | 說明 | 資料類型 |
---|---|---|
availableModes |
支援的 Eco 模式清單。 | array(string) 值:["MANUAL_ECO", "OFF"] |
mode |
溫度控制器目前的節能模式。 | string 值:「MANUAL_ECO」、「OFF」 |
heatCelsius |
溫度控制器在節能模式下開始加熱的最低溫度 (攝氏)。 | number 示例:20.0 |
coolCelsius |
溫度控制器在 Eco 模式下開始降溫的最高溫度 (攝氏)。 | 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 指令。
這項指令會根據 Eco 模式的目前狀態或變更,影響其他特徵:
- 如果節能模式為「關閉」,溫度控制器模式會預設為上次啟用的標準模式 (HEAT、COOL、HEATCOOL 或 OFF)。
- 如果節能模式為 MANUAL_ECO:
- 系統會拒絕 ThermostatTemperatureSetpoint 特徵的指令。
- ThermostatTemperatureSetpoint 特徵不會傳回溫度設定點。
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」 |
錯誤
系統可能會傳回下列與此特徵相關的錯誤代碼:
錯誤訊息 | 單次點擊收益 | 疑難排解 |
---|---|---|
在目前的溫度控制器模式下,不允許執行指令。 | FAILED_PRECONDITION |
根據 ThermostatMode 特徵,部分溫度控制器型號在溫度控制器模式為「關閉」時,不支援變更節能模式。必須先將溫度控制器模式變更為 HEAT、COOL 或 HEATCOOL,才能變更節能模式。 |
溫度自動調節器處於 MANUAL_ECO 模式時,無法執行這項指令。 | FAILED_PRECONDITION |
溫度控制器處於手動節能模式時,無法設定溫度設定點。 |
如需 API 錯誤代碼的完整清單,請參閱 API 錯誤代碼參考資料。