Esquema de ThermostatTemperatureSetpoint

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

Este trait pertenece a los tipos de dispositivos THERMOSTAT 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 grados Celsius para los modos HEAT y HEATCOOL del termostato number
Ejemplo: 20.0
coolCelsius Temperatura final en grados Celsius para los modos COOL y HEATCOOL del termostato number
Ejemplo: 22.0

Ejemplo de solicitud y respuesta 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 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 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 corresponde al comando que se llama antes de cambiar los puntos de ajuste de 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 SetHeat comando, el termostato primero debe estar en modo HEAT:

Modo Comando Campos
CALOR SetHeat heatCelsius
COOL SetCool coolCelsius
CALOR • FRÍO SetRange heatCelsius, coolCelsius

Ten en cuenta que los comandos de punto de ajuste solo toman grados Celsius como parámetro, aunque el termostato Google Nest puede mostrar la temperatura en grados Celsius o Fahrenheit.

SetHeat

Establece la temperatura final cuando el termostato está en modo HEAT.

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 de SetHeat

Campo Descripción Tipo de datos
heatCelsius La temperatura final que se establecerá cuando el termostato esté en modo HEAT number
Ejemplo: 22.0

SetCool

Establece la temperatura final cuando el termostato está en modo COOL.

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 solicitud de SetCool

Campo Descripción Tipo de datos
coolCelsius La temperatura final que se establecerá cuando el termostato esté en modo COOL number
Ejemplo: 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 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 relacionados con este trait:

Mensaje de error RPC Solución de problemas
Command not allowed in current thermostat mode. FAILED_PRECONDITION Algunos modelos de termostato no admiten el cambio del modo Eco cuando el modo del termostato está en OFF, según el traitThermostatMode . El modo del termostato debe cambiarse a HEAT, COOL o HEATCOOL antes de cambiar el modo Eco.
Cool value must be greater than heat value. INVALID_ARGUMENT Asegúrate de que el heatCelsius campo sea menor que el coolCelsius campo en tu comando.
Command not allowed when thermostat in MANUAL_ECO mode. FAILED_PRECONDITION El punto de ajuste de temperatura no se puede establecer 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.