Schemat punktu termostatu

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

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

Pola

Pole Opis Typ danych
heatCelsius Docelowa temperatura w stopniach Celsjusza w przypadku trybów Ogrzewanie i Ogrzewanie przez termostat. number
Przykład: 20,0
coolCelsius Docelowa temperatura w stopniach Celsjusza na termostacie w trybach CHŁODZANIE i Ogrzewanie chłodniczego. number
Przykład: 22,0

Przykładowe żądanie i odpowiedź GET – 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 i odpowiedź GET – 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 i odpowiedź GET – 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

Termostat musi być w trybie odpowiadającym wywołaniu polecenia przed zmianą nastawa temperatury. Polecenie i pola służące do zmiany nastawy różnią się w zależności od termostatu i trybu uzyskiwania zgody.

Aby na przykład opublikować SetHeat termostat musi najpierw przejść w tryb Ogrzewanie:

Tryb Polecenie Pola
OGRZEWANIE SetHeat heatCelsius
FAJNE SetCool coolCelsius
OGRZEWANIE ALARMOWE SetRange heatCelsius, coolCelsius

Pamiętaj, że polecenia dotyczące wartości ustawień przyjmują tylko stopnie w stopniach Celsjusza, chociaż Google Nest Thermostat może wyświetlać temperaturę w stopniach Celsjusza lub Fahrenheita.

SetHeat

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

Żą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 ustawiana, gdy termostat jest w trybie Ogrzewanie. number
Przykład: 22,0

SetCool

Ustawia temperaturę docelową, gdy termostat jest w trybie CHŁODZENIA.

Żą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 ustawiana, gdy termostat jest w trybie CHŁODZENIA. number
Przykład: 20,0

SetRange

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

Żą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 do ustawienia, gdy termostat jest w trybie Ogrzewanie. number
Przykład: 20,0
coolCelsius Maksymalna temperatura docelowa ustawiana, gdy termostat jest w trybie Ogrzewanie. number
Przykład: 22,0

Błędy

W związku z tą cechą mogą zostać zwrócone te kody błędów:

Komunikat o błędzie RPC Rozwiązywanie problemów
Polecenie jest niedozwolone w obecnym trybie termostatu. FAILED_PRECONDITION Zgodnie z atrybutem ThermostatMode niektóre modele termostatów nie obsługują zmiany trybu Eko, gdy termostat jest wyłączony. Przed przejściem w tryb Eko należy zmienić tryb termostatu na Ogrzewanie, Chłodzenie lub Ogrzewanie.
Wartość chłodzenia musi być większa niż wartość ogrzewania. INVALID_ARGUMENT Upewnij się, że wartość w polu heatCelsius jest mniejsza niż wartość w polu coolCelsius w poleceniu.
Polecenie jest niedozwolone, gdy termostat w trybie MANUAL_ECO. FAILED_PRECONDITION Nie można ustawić nastawy temperatury, gdy termostat jest w ręcznym trybie Eko.

Zapoznaj się z informacjami na temat kodu błędu interfejsu API w przypadku: pełną listę kodów błędów interfejsu API.