Esquema de ThermostatTemperatureSetpoint
sdm.devices.traits.ThermostatTemperatureSetpoint
Este rasgo pertenece a los tipos de dispositivos de THERMOSTAT que admiten el ajuste de la temperatura objetivo y el rango de temperatura.
Campos
| Campo | Descripción | Tipo de datos |
|---|---|---|
heatCelsius |
Es la temperatura objetivo en grados Celsius para los modos HEAT y HEATCOOL del termostato. | numberEjemplo: 20.0 |
coolCelsius |
Temperatura objetivo en grados Celsius para los modos FRÍO y CALOR • FRÍO del termostato. | numberEjemplo: 22.0 |
Ejemplo de solicitud y respuesta de GET: 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,
}
}
}Ejemplo de solicitud y respuesta de GET: 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 y respuesta de GET: 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
Antes de cambiar los puntos de ajuste de temperatura, el termostato debe estar en el modo que corresponde al comando que se llama. 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 HEAT:
| Modo | Comando | Campos |
|---|---|---|
| CALOR | SetHeat | heatCelsius |
| FRÍO | SetCool | coolCelsius |
| HEATCOOL | SetRange | heatCelsius, coolCelsius |
Ten en cuenta que los comandos de 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 objetivo cuando el termostato está en el 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 la solicitud de SetHeat
| Campo | Descripción | Tipo de datos |
|---|---|---|
heatCelsius |
Es la temperatura objetivo que se debe establecer cuando el termostato está en modo HEAT. | numberEjemplo: 22.0 |
SetCool
Establece la temperatura objetivo cuando el termostato está en modo FRÍO.
Solicitud y respuesta de SetCool
Solicitud
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool",
"params" : {
"coolCelsius" : 20.0
}
}
Respuesta
{}
Campos de la solicitud SetCool
| Campo | Descripción | Tipo de datos |
|---|---|---|
coolCelsius |
Es la temperatura objetivo que se debe establecer cuando el termostato está en modo FRÍO. | numberEjemplo: 20.0 |
SetRange
Establece las temperaturas mínima y máxima cuando el termostato está en modo HEATCOOL.
Solicitud y respuesta de 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 la solicitud SetRange
| Campo | Descripción | Tipo de datos |
|---|---|---|
heatCelsius |
Es la temperatura objetivo mínima que se puede establecer cuando el termostato está en modo HEATCOOL. | numberEjemplo: 20.0 |
coolCelsius |
Es la temperatura objetivo máxima que se puede establecer cuando el termostato está en modo HEATCOOL. | numberEjemplo: 22.0 |
Errores
Es posible que se muestren los siguientes códigos de error relacionados con este atributo:
| Mensaje de error | RPC | Solución de problemas |
|---|---|---|
| No se permite el comando en el modo actual del termostato. | FAILED_PRECONDITION |
Según el rasgo ThermostatMode , algunos modelos de termostatos no admiten el cambio del modo Eco cuando el modo del termostato está APAGADO. El modo del termostato debe cambiarse a HEAT, COOL o HEATCOOL antes de cambiar el modo Eco. |
| El valor de enfriamiento debe ser mayor que el valor de calentamiento. | INVALID_ARGUMENT |
Asegúrate de que el campo heatCelsius sea menor que el campo coolCelsius en tu comando. |
| No se permite el comando 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 de códigos de error de la API.