ThermostatTemperatureSetpoint-Schema

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

Dieses Merkmal gehört zu Gerätetypen von THERMOSTAT, die das Festlegen der Zieltemperatur und des Temperaturbereichs unterstützen.

Felder

Feld Beschreibung Datentyp
heatCelsius Zieltemperatur in Grad Celsius für die Thermostatmodi HEIZEN und HEIZEN/KÜHLEN. number
Beispiel: 20,0
coolCelsius Zieltemperatur in Grad Celsius für die Thermostatmodi KÜHLEN und HEIZEN/KÜHLEN. number
Beispiel: 22,0

Beispiel für eine GET-Anfrage und -Antwort – HEIZEN

Anfrage

GET /enterprises/project-id/devices/device-id

Antwort

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
    }
  }
}

Beispiel für eine GET-Anfrage und -Antwort – KÜHLEN

Anfrage

GET /enterprises/project-id/devices/device-id

Antwort

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "coolCelsius" : 22.0
    }
  }
}

Beispiel für eine GET-Anfrage und -Antwort – HEIZEN/KÜHLEN

Anfrage

GET /enterprises/project-id/devices/device-id

Antwort

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

Befehle

Der Thermostat muss sich im Modus befinden, der dem aufgerufenen Befehl entspricht, bevor die Temperatur-Sollwerte geändert werden. Der Befehl und die Felder zum Ändern der Sollwerte variieren je nach Thermostat modus.

Wenn Sie beispielsweise den Befehl „SetHeat“ ausgeben möchten, muss sich der Thermostat zuerst im Modus „HEIZEN“ befinden:

Modus Befehl Feld(er)
HEIZEN SetHeat heatCelsius
COOL SetCool coolCelsius
HEIZEN/KÜHLEN SetRange heatCelsius, coolCelsius

Beachten Sie, dass die Befehle zum Festlegen des Sollwerts nur Grad Celsius als Parameter akzeptieren, obwohl der Google Nest Thermostat die Temperatur in Grad Celsius oder Grad Fahrenheit anzeigen kann.

SetHeat

Legt die Zieltemperatur fest, wenn sich der Thermostat im Modus „HEIZEN“ befindet.

SetHeat-Anfrage und -Antwort

Anfrage

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat",
  "params" : {
    "heatCelsius" : 22.0
  }
}

Antwort

{}

SetHeat-Anfragefelder

Feld Beschreibung Datentyp
heatCelsius Die Zieltemperatur, die festgelegt werden soll, wenn sich der Thermostat im Modus „HEIZEN“ befindet. number
Beispiel: 22,0

SetCool

Legt die Zieltemperatur fest, wenn sich der Thermostat im Modus „KÜHLEN“ befindet.

SetCool-Anfrage und -Antwort

Anfrage

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool",
  "params" : {
    "coolCelsius" : 20.0
  }
}

Antwort

{}

SetCool-Anfragefelder

Feld Beschreibung Datentyp
coolCelsius Die Zieltemperatur, die festgelegt werden soll, wenn sich der Thermostat im Modus „KÜHLEN“ befindet. number
Beispiel: 20,0

SetRange

Legt die Mindest- und Höchsttemperatur fest, wenn sich der Thermostat im Modus „HEIZEN/KÜHLEN“ befindet.

SetRange-Anfrage und -Antwort

Anfrage

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetRange",
  "params" : {
    "heatCelsius" : 20.0,
    "coolCelsius" : 22.0
  }
}

Antwort

{}

SetRange-Anfragefelder

Feld Beschreibung Datentyp
heatCelsius Die Mindestzieltemperatur, die festgelegt werden soll, wenn sich der Thermostat im Modus „HEIZEN/KÜHLEN“ befindet. number
Beispiel: 20,0
coolCelsius Die maximale Zieltemperatur, die festgelegt werden soll, wenn sich der Thermostat im Modus „HEIZEN/KÜHLEN“ befindet. number
Beispiel: 22,0

Fehler

Die folgenden Fehlercodes können im Zusammenhang mit diesem Merkmal zurückgegeben werden:

Fehlermeldung RPC Fehlerbehebung
Befehl ist im aktuellen Thermostatmodus nicht zulässig. FAILED_PRECONDITION Bei einigen Thermostatmodellen kann der Eco-Modus nicht geändert werden, wenn der Thermostatmodus gemäß dem ThermostatMode Merkmal auf „AUS“ gesetzt ist. Der Thermostatmodus muss auf „HEIZEN“, „KÜHLEN“ oder „HEIZEN/KÜHLEN“ geändert werden, bevor der Eco-Modus geändert werden kann.
Der Kühlwert muss größer als der Heizwert sein. INVALID_ARGUMENT Achten Sie darauf, dass das Feld heatCelsius in Ihrem Befehl kleiner als das Feld coolCelsius ist.
Befehl ist nicht zulässig, wenn sich der Thermostat im manuellen Eco-Modus befindet. FAILED_PRECONDITION Der Temperatur-Sollwert kann nicht festgelegt werden, wenn sich der Thermostat im manuellen Eco-Modus befindet.

Eine vollständige Liste der API-Fehlercodes finden Sie in der API-Fehlercode-Referenz.