Esquema ThermostatTemperatura
sdm.devices.traits.ThermostatTemperatureSetpoint
Essa característica pertence a tipos de dispositivos de TERMOSTATO que oferecem suporte à definição de temperatura-alvo e faixa de temperatura.
Campos
Campo | Descrição | Tipo de dados |
---|---|---|
heatCelsius |
Temperatura-alvo em graus Celsius para os modos de aquecimento e aquecimento/refrigeração do termostato. | number Exemplo: 20.0 |
coolCelsius |
Temperatura desejada em graus Celsius para os modos COOL e HEATCOOL do termostato. | number Exemplo: 22.0 |
Exemplo de solicitação e resposta GET - HEAT
Solicitação
GET /enterprises/project-id/devices/device-id
Resposta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
}
}
}
Exemplo de solicitação e resposta GET: COOL
Solicitação
GET /enterprises/project-id/devices/device-id
Resposta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"coolCelsius" : 22.0
}
}
}
Exemplo de solicitação e resposta GET: HEATCOOL
Solicitação
GET /enterprises/project-id/devices/device-id
Resposta
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
}
Comandos
O termostato precisa estar no modo correspondente ao comando chamado antes de mudar os pontos de ajuste de temperatura. O comando e os campos para mudar as temperaturas programadas variam de acordo com o modo do termostato.
Por exemplo, para emitir o comando SetHeat, o termostato precisa estar no modo Aquecer:
Modo | Comando | Campo(s) |
---|---|---|
AQUECIMENTO | SetHeat (link em inglês) | heatCelsius |
FRIO | SetCool | coolCelsius |
HEATCOOL | SetRange | heatCelsius , coolCelsius |
Os comandos de temperatura programada só usam graus Celsius como parâmetro, embora o Google Nest Thermostat possa exibir a temperatura em graus Celsius ou Fahrenheit.
SetHeat
Define a temperatura desejada quando o termostato está no modo de aquecimento.
Solicitação e resposta do SetHeat
Solicitação
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
",
"params" : {
"heatCelsius" : 22.0
}
}
Resposta
{}
Campos de solicitação do SetHeat
Campo | Descrição | Tipo de dados |
---|---|---|
heatCelsius |
A temperatura desejada a ser definida quando o termostato estiver no modo de aquecimento. | number Exemplo: 22.0 |
SetCool
Define a temperatura desejada quando o termostato está no modo de resfriamento.
Solicitação e resposta do SetCool
Solicitação
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool
",
"params" : {
"coolCelsius" : 20.0
}
}
Resposta
{}
Campos de solicitação do SetCool
Campo | Descrição | Tipo de dados |
---|---|---|
coolCelsius |
É a temperatura-alvo a ser definida quando o termostato está no modo Resfriamento. | number Exemplo: 20,0 |
SetRange
Define as temperaturas mínima e máxima quando o termostato está no modo HEATCOOL.
Solicitação e resposta de SetRange
Solicitação
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetRange
",
"params" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
Resposta
{}
Campos de solicitação SetRange
Campo | Descrição | Tipo de dados |
---|---|---|
heatCelsius |
A temperatura-alvo mínima a ser definida quando o termostato estiver no modo HEATCOOL. | number Exemplo: 20,0 |
coolCelsius |
É a temperatura-alvo máxima a ser definida quando o termostato está no modo HEATCOOL. | number Exemplo: 22.0 |
Erros
Os seguintes códigos de erro podem ser retornados em relação a essa característica:
Mensagem de erro | RPC | Solução de problemas |
---|---|---|
O comando não é permitido no modo atual do termostato. | FAILED_PRECONDITION |
Alguns modelos de termostato não são compatíveis com a mudança do modo Eco quando o modo do termostato está DESLIGADO, de acordo com o atributo ThermostatMode . O modo do termostato precisa ser mudado para AQUECER, RESFRIAR ou AQUECER/RESFRIAR antes de mudar o modo Eco. |
O valor de resfriamento precisa ser maior que o valor de aquecimento. | INVALID_ARGUMENT |
Confira se o campo heatCelsius é menor que o campo coolCelsius no comando. |
O comando não é permitido quando o termostato está no modo MANUAL_ECO. | FAILED_PRECONDITION |
Não é possível definir a temperatura programada quando o termostato está no modo Eco manual. |
Consulte a Referência do código de erro da API para ver a lista completa desses códigos.