Schemat nastawy temperatury termostatu
sdm.devices.traits.ThermostatTemperatureSetpoint
Ta cecha należy do typów urządzeń TERMOSTATU, 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 COOL. | number Przykład: 20.0 |
coolCelsius |
Temperatura docelowa w stopniach Celsjusza w przypadku trybów CHŁODZENIE i OGRZEWANIE COOL. | number Przykład: 22.0 |
Przykładowe żądanie i odpowiedź GET – HEAT
Prośba
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
Prośba
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
Prośba
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
Zanim zmienisz nastawę temperatury, termostat musi być w trybie odpowiadającym wywołanym poleceniu. Polecenie i pola do zmiany nastawy różnią się w zależności od trybu termostatu.
Aby na przykład uruchomić polecenie SetHeat, termostat musi najpierw być w trybie ogrzewania:
Tryb | Polecenie | Pola |
---|---|---|
OGRZEWANIE | SetHeat | heatCelsius |
FAJNY | SetCool | coolCelsius |
OGRZEWANIE | SetRange | heatCelsius , coolCelsius |
Pamiętaj, że w poleceniach nastawiona jest tylko wartość stopni Celsjusza, ale 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
Prośba
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 być ustawiona, 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
Prośba
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 być ustawiona, gdy termostat jest w trybie CHŁODZENIA. | number Przykład: 20.0 |
SetRange
Ustawia minimalną i maksymalną temperaturę, gdy termostat jest w trybie Ogrzewanie chłodzenia.
Żądanie i odpowiedź setRange
Prośba
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órą należy ustawić, gdy termostat jest w trybie HEATCOOL. | number Przykład: 20.0 |
coolCelsius |
Maksymalna temperatura docelowa, którą należy ustawić, gdy termostat jest w trybie Ogrzewanie. | number Przykład: 22.0 |
Błędy
W odniesieniu do tej cechy mogą zostać zwrócone następujące kody błędów:
Komunikat o błędzie | RPC | Rozwiązywanie problemów |
---|---|---|
Polecenie jest niedozwolone w obecnym trybie termostatu. | FAILED_PRECONDITION |
Zgodnie z cechą ThermostatMode niektóre modele termostatów nie obsługują zmiany trybu eko, gdy tryb termostatu jest WYŁĄCZONY. Przed zmianą trybu Eko musisz zmienić tryb termostatu na HEAT, COOL lub HEATCOOL. |
Wartość chłodzenia musi być większa od wartości ciepła. | INVALID_ARGUMENT |
Upewnij się, że pole heatCelsius jest mniejsze niż pole coolCelsius w poleceniu. |
Polecenie jest niedozwolone, gdy termostat jest w trybie MANUAL_ECO. | FAILED_PRECONDITION |
Nie można ustawić nastawy temperatury, gdy termostat jest w ręcznym trybie Eko. |
Pełną listę kodów błędów interfejsu API znajdziesz w dokumentacji błędów interfejsu API.