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 コマンドを発行するには、最初にサーモスタットを HEAT モードにする必要があります。
モード | コマンド | フィールド |
---|---|---|
暖房 | SetHeat | heatCelsius |
冷房 | SetCool | coolCelsius |
ヘイトコール | SetRange | heatCelsius 、coolCelsius |
setpoint コマンドではパラメータとして摂氏のみが使用されますが、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
サーモスタットが COOL モードのときに設定温度を設定します。
SetCool のリクエストとレスポンス
リクエスト
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool
",
"params" : {
"coolCelsius" : 20.0
}
}
レスポンス
{}
SetCool リクエスト フィールド
項目 | 説明 | データ型 |
---|---|---|
coolCelsius |
サーモスタットが COOL モードのときに設定する設定温度。 | 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 トレイトによれば、一部のサーモスタット モデルでは、サーモスタット モードがオフのときにエコモードを変更できないことがあります。エコモードを変更する前に、サーモスタットのモードを HEAT、COOL、HEATCOOL のいずれかに変更する必要があります。 |
冷房の値は暖房の値よりも大きくする必要があります。 | INVALID_ARGUMENT |
heatCelsius フィールドがコマンドの coolCelsius フィールドよりも小さいことを確認します。 |
サーモスタットが MANUAL_ECO モードの場合、コマンドは使用できません。 | FAILED_PRECONDITION |
サーモスタットが手動エコモードの場合、温度設定値は設定できません。 |
API エラーコードの完全なリストについては、API エラーコード リファレンスをご覧ください。