Esquema de ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Esta característica pertenece a los tipos de dispositivos de TERMOSTATO que admiten la configuración de la temperatura final y el rango de temperatura.
Campos
Campo | Descripción | Tipo de datos |
---|---|---|
heatCelsius |
Temperatura final en Celsius para los modos CALOR y HEATCOOL del termostato. | number Ejemplo: 20.0 |
coolCelsius |
Temperatura final en Celsius para los modos Frío y HEATCO del termostato. | number Ejemplo: 22.0 |
Solicitud y respuesta GET de muestra: HEAT
Solicitud
GET /enterprises/project-id/devices/device-id
Respuesta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
}
}
}
Solicitud y respuesta GET de muestra - COOL
Solicitud
GET /enterprises/project-id/devices/device-id
Respuesta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"coolCelsius" : 22.0
}
}
}
Ejemplo de solicitud GET y respuesta: HEATCOOL
Solicitud
GET /enterprises/project-id/devices/device-id
Respuesta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
}
Comandos
El termostato debe estar en el modo que corresponda al comando al que se llama antes de cambiar los puntos de ajuste de la temperatura. El comando y los campos para cambiar los puntos de ajuste varían según el modo del termostato.
Por ejemplo, para emitir el comando SetHeat, primero el termostato debe estar en modo CALOR:
Modo | Comando | Campos |
---|---|---|
CALOR | SetHeat | heatCelsius |
FRÍO | SetCool | coolCelsius |
HEATCOOL | SetRange | heatCelsius , coolCelsius |
Ten en cuenta que los comandos del punto de ajuste solo toman grados Celsius como parámetro, aunque el Google Nest Thermostat puede mostrar la temperatura en grados Celsius o Fahrenheit.
SetHeat
Establece la temperatura final cuando el termostato está en modo CALOR.
Solicitud y respuesta de SetHeat
Solicitud
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
",
"params" : {
"heatCelsius" : 22.0
}
}
Respuesta
{}
Campos de solicitud SetHeat
Campo | Descripción | Tipo de datos |
---|---|---|
heatCelsius |
La temperatura final que se establecerá cuando el termostato esté en modo CALOR. | number Ejemplo: 22.0 |
SetCool
Establece la temperatura final cuando el termostato está en modo Frío.
Solicitud y respuesta SetCool
Solicitud
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool
",
"params" : {
"coolCelsius" : 20.0
}
}
Respuesta
{}
Campos de solicitud SetCool
Campo | Descripción | Tipo de datos |
---|---|---|
coolCelsius |
La temperatura final que se establecerá cuando el termostato esté en modo Frío. | number Ejemplo: 20.0 |
SetRange
Establece las temperaturas mínima y máxima cuando el termostato está en modo HEATCOOL.
Solicitud y respuesta SetRange
Solicitud
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetRange
",
"params" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
Respuesta
{}
Campos de solicitud de SetRange
Campo | Descripción | Tipo de datos |
---|---|---|
heatCelsius |
La temperatura final mínima que se establecerá cuando el termostato esté en modo HEATCOOL. | number Ejemplo: 20.0 |
coolCelsius |
La temperatura final máxima que se establecerá cuando el termostato esté en modo HEATCOOL. | number Ejemplo: 22.0 |
Errores
Es posible que se muestren los siguientes códigos de error en relación con esta característica:
Mensaje de error | RPC | Solución de problemas |
---|---|---|
Comando no permitido en el modo de termostato actual. | FAILED_PRECONDITION |
Algunos modelos de termostatos no admiten el cambio del modo Eco cuando el termostato está DESACTIVADO, según la característica ThermostatMode . El modo del termostato debe cambiarse a CALOR, FRÍO o HEATCOOL antes de cambiar el modo Eco. |
El valor de enfriamiento debe ser mayor que el valor de calor. | INVALID_ARGUMENT |
Asegúrate de que el campo heatCelsius sea menor que el campo coolCelsius de tu comando. |
Comando no permitido cuando el termostato está en modo MANUAL_ECO. | FAILED_PRECONDITION |
No se puede establecer el punto de ajuste de temperatura cuando el termostato está en modo Eco manual. |
Consulta la referencia de códigos de error de la API para ver la lista completa.