ThermostatEco 結構定義
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
變更溫度控制器的節能模式。
如要將溫度控制器模式變更為暖氣、冷氣或暖氣模式,請使用 ThermostatMode 特徵的 SetMode 指令。
根據節能模式目前的狀態或變更,這個指令會影響其他特徵:
- 如果關閉節能模式,溫度控制器會預設為上次啟用的標準模式 (暖氣、冷氣、暖氣或關閉)。
- 如果節能模式為 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 特徵,部分溫度控制器型號不支援在溫度控制器關閉時變更節能模式。必須先將溫度控制器模式變更為暖氣、冷氣或暖氣模式,才能變更節能模式。 |
溫度控制器處於 MANUAL_ECO 模式時不允許使用指令。 | FAILED_PRECONDITION |
溫度控制器採用手動節能模式時,無法設定溫度設定點。 |
請參閱 API 錯誤代碼參考資料: API 錯誤代碼的完整清單