Esquema de ThermostatTemperatureSetpoint

Nest Thermostat 

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.