ThermostatTemperatureSetpoint スキーマ
sdm.devices.traits.ThermostatTemperatureSetpoint
このトレイトは、目標温度と温度範囲の設定をサポートする THERMOSTAT のデバイス タイプに使用します。
フィールド
フィールド | 説明 | データ型 |
---|---|---|
heatCelsius |
サーモスタットの HEAT モードと HEATCOOL モードの設定温度(摂氏)。 | number 例: 20.0 |
coolCelsius |
サーモスタットの COOL モードと HEATCOOL モードの設定温度(摂氏)。 | number 例: 22.0 |
GET リクエストとレスポンスの例 - HEAT
GET /enterprises/project-id /devices/device-id
{ "name" : "enterprises/project-id /devices/device-id ", "traits" : { "sdm.devices.traits.ThermostatTemperatureSetpoint
" : { "heatCelsius" : 20.0, } } }
GET リクエストとレスポンスの例 - COOL
GET /enterprises/project-id /devices/device-id
{ "name" : "enterprises/project-id /devices/device-id ", "traits" : { "sdm.devices.traits.ThermostatTemperatureSetpoint
" : { "coolCelsius" : 22.0 } } }
GET リクエストとレスポンスの例 - HEATCOOL
GET /enterprises/project-id /devices/device-id
{ "name" : "enterprises/project-id /devices/device-id ", "traits" : { "sdm.devices.traits.ThermostatTemperatureSetpoint
" : { "heatCelsius" : 20.0, "coolCelsius" : 22.0 } } }
コマンド
温度設定を変更する前に、サーモスタットを呼び出されるコマンドに対応するモードにする必要があります。設定温度を変更するコマンドとフィールドは、サーモスタットのモードによって異なります。
たとえば、SetHeat コマンドを実行するには、サーモスタットをまず暖房モードにする必要があります。
モード | コマンド | フィールド |
---|---|---|
暖房 | SetHeat | heatCelsius |
クール | SetCool | coolCelsius |
HEATCOOL | SetRange | heatCelsius 、coolCelsius |
なお、設定温度コマンドでパラメータとして指定できるのは摂氏のみです。Google Nest Thermostat では、温度を摂氏または華氏のいずれかで表示できます。
SetHeat
サーモスタットが暖房モードのときの設定温度を設定します。
SetHeat リクエストとレスポンス
POST /enterprises/project-id /devices/device-id :executeCommand { "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
", "params" : { "heatCelsius" : 22.0 } }
{}
SetHeat リクエスト フィールド
フィールド | 説明 | データ型 |
---|---|---|
heatCelsius |
サーモスタットが暖房モードのときに設定する目標温度。 | number 例: 22.0 |
SetCool
サーモスタットが冷房モードのときの設定温度を設定します。
SetCool リクエストとレスポンス
POST /enterprises/project-id /devices/device-id :executeCommand { "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool
", "params" : { "coolCelsius" : 20.0 } }
{}
SetCool リクエスト フィールド
フィールド | 説明 | データ型 |
---|---|---|
coolCelsius |
サーモスタットが冷房モードのときに設定する設定温度。 | number 例: 20.0 |
SetRange
サーモスタットが HEATCOOL モードの場合の最小温度と最大温度を設定します。
SetRange リクエストとレスポンス
POST /enterprises/project-id /devices/device-id :executeCommand { "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetRange
", "params" : { "heatCelsius" : 20.0, "coolCelsius" : 22.0 } }
{}
SetRange リクエスト フィールド
フィールド | 説明 | データ型 |
---|---|---|
heatCelsius |
サーモスタットが HEATCOOL モードのときに設定する最小設定温度。 | number 例: 20.0 |
coolCelsius |
サーモスタットが HEATCOOL モードのときに設定できる最大設定温度。 | number 例: 22.0 |
エラー
この特性に関連して、次のエラーコードが返されることがあります。
エラー メッセージ | RPC | トラブルシューティング |
---|---|---|
現在のサーモスタット モードではコマンドが許可されていません。 | FAILED_PRECONDITION |
一部のサーモスタット モデルでは、 ThermostatMode トレイトに従い、サーモスタット モードがオフのときにエコモードの変更がサポートされていません。エコモードを変更する前に、サーモスタットのモードを暖房、冷房、暖房 / 冷房に変更する必要があります。 |
冷房の値は暖房の値よりも大きくする必要があります。 | INVALID_ARGUMENT |
コマンドの heatCelsius フィールドが coolCelsius フィールドより小さいことを確認します。 |
サーモスタットが MANUAL_ECO モードの場合、コマンドが許可されません。 | FAILED_PRECONDITION |
サーモスタットが手動エコモードの場合、設定温度は設定できません。 |
API エラーコードの一覧については、API エラーコードのリファレンスをご覧ください。