Schemat ThermostatTemperatureSetpoint

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

Ta cecha należy do typów urządzeń THERMOSTAT, które obsługują ustawianie temperatury docelowej i zakresu temperatur.

Pola

Pole Opis Typ danych
heatCelsius Temperatura docelowa w stopniach Celsjusza w trybach termostatu HEAT i HEATCOOL. number
Example: 20.0
coolCelsius Temperatura docelowa w stopniach Celsjusza w trybach termostatu COOL i HEATCOOL. number
Example: 22.0

Przykładowe żądanie GET i odpowiedź – HEAT

Żądanie

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

Odpowiedź

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

Przykładowe żądanie GET i odpowiedź – COOL

Żądanie

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

Odpowiedź

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

Przykładowe żądanie GET i odpowiedź – HEATCOOL

Żądanie

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

Odpowiedź

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

Polecenia

Przed zmianą ustawień temperatury termostat musi być w trybie odpowiadającym wywoływanemu poleceniu. Polecenie i pola, które mają zmienić ustawienia, różnią się w zależności od trybu termostatu.

Aby na przykład wydać polecenie SetHeat , termostat musi być najpierw w trybie HEAT:

Tryb Polecenie Pola
HEAT SetHeat heatCelsius
COOL SetCool coolCelsius
HEATCOOL SetRange heatCelsius, coolCelsius

Pamiętaj, że polecenia ustawiania temperatury przyjmują jako parametr tylko stopnie Celsjusza, chociaż termostat Google Nest może wyświetlać temperaturę w stopniach Celsjusza lub Fahrenheita.

SetHeat

Ustawia temperaturę docelową, gdy termostat jest w trybie HEAT.

Żądanie i odpowiedź SetHeat

Żądanie

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

Odpowiedź

{}

Pola żądania SetHeat

Pole Opis Typ danych
heatCelsius Temperatura docelowa, która ma zostać ustawiona, gdy termostat jest w trybie HEAT. number
Example: 22.0

SetCool

Ustawia temperaturę docelową, gdy termostat jest w trybie COOL.

Żądanie i odpowiedź SetCool

Żądanie

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

Odpowiedź

{}

Pola żądania SetCool

Pole Opis Typ danych
coolCelsius Temperatura docelowa, która ma zostać ustawiona, gdy termostat jest w trybie COOL. number
Example: 20.0

SetRange

Ustawia minimalną i maksymalną temperaturę, gdy termostat jest w trybie HEATCOOL.

Żądanie i odpowiedź SetRange

Żądanie

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

Odpowiedź

{}

Pola żądania SetRange

Pole Opis Typ danych
heatCelsius Minimalna temperatura docelowa, która ma zostać ustawiona, gdy termostat jest w trybie HEATCOOL. number
Example: 20.0
coolCelsius Maksymalna temperatura docelowa, która ma zostać ustawiona, gdy termostat jest w trybie HEATCOOL. number
Example: 22.0

Błędy

W związku z tą cechą mogą być zwracane te kody błędów:

Komunikat o błędzie RPC Rozwiązywanie problemów
Polecenie niedozwolone w bieżącym trybie termostatu. FAILED_PRECONDITION Niektóre modele termostatów nie obsługują zmiany trybu Eko, gdy termostat jest wyłączony, zgodnie z cechą ThermostatMode . Przed zmianą trybu Eko należy zmienić tryb termostatu na HEAT, COOL lub HEATCOOL.
Wartość chłodzenia musi być większa niż wartość ogrzewania. INVALID_ARGUMENT Upewnij się, że w poleceniu pole heatCelsius ma wartość mniejszą niż pole coolCelsius.
Polecenie niedozwolone, gdy termostat jest w trybie MANUAL_ECO. FAILED_PRECONDITION Nie można ustawić temperatury docelowej, gdy termostat jest w ręcznym trybie Eko.

Pełną listę kodów błędów interfejsu API znajdziesz w dokumencie API Error Code Reference kodów błędów interfejsu API.