ThermostatTemperatureSetpoint 스키마
sdm.devices.traits.ThermostatTemperatureSetpoint
이 트레잇은 희망 온도와 온도 범위 설정을 지원하는 THERMOSTAT 기기 유형에 속합니다.
필드
필드 | 설명 | 데이터 유형 |
---|---|---|
heatCelsius |
온도 조절기 난방 및 HEATCOOL 모드의 경우 희망 온도는 섭씨입니다. | number 예: 20.0 |
coolCelsius |
온도 조절기 냉방 및 HEATCOOL 모드의 섭씨 희망 온도 | number 예: 22.0 |
샘플 GET 요청 및 응답 - HEAT
요청
GET /enterprises/project-id/devices/device-id
응답
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
}
}
}
샘플 GET 요청 및 응답 - COOL
요청
GET /enterprises/project-id/devices/device-id
응답
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"coolCelsius" : 22.0
}
}
}
샘플 GET 요청 및 응답 - HEATCOOL
요청
GET /enterprises/project-id/devices/device-id
응답
{
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatTemperatureSetpoint
" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
}
명령어
온도 조절기는 변경하기 전에 호출되는 명령어에 해당하는 모드로 설정되어 있어야 합니다. 온도 설정값 설정값을 변경하는 명령어 및 필드는 온도 조절기에 따라 다릅니다. 있습니다.
예를 들어 SetHeat 명령어를 실행하려면 온도 조절기가 먼저 난방 모드로 설정되어 있어야 합니다.
모드 | 명령어 | 필드 |
---|---|---|
난방 | SetHeat | heatCelsius |
멋져요 | SetCool | coolCelsius |
열화상 | SetRange | heatCelsius , coolCelsius |
설정값 명령은 섭씨 도만 매개변수로 사용합니다. Google Nest Thermostat에서는 온도를 섭씨 또는 화씨로 표시할 수 있습니다.
SetHeat
온도 조절기가 난방 모드일 때 희망 온도를 설정합니다.
SetHeat 요청 및 응답
요청
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
",
"params" : {
"heatCelsius" : 22.0
}
}
응답
{}
SetHeat 요청 필드
필드 | 설명 | 데이터 유형 |
---|---|---|
heatCelsius |
온도 조절기가 난방 모드일 때 설정할 희망 온도입니다. | number 예: 22.0 |
SetCool
온도 조절기가 냉방 모드일 때 희망 온도를 설정합니다.
SetCool 요청 및 응답
요청
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool
",
"params" : {
"coolCelsius" : 20.0
}
}
응답
{}
SetCool 요청 필드
필드 | 설명 | 데이터 유형 |
---|---|---|
coolCelsius |
온도 조절기가 냉방 모드일 때 설정할 희망 온도입니다. | number 예: 20.0 |
SetRange
온도 조절기가 HEATCOOL 모드일 때 최저 및 최고 온도를 설정합니다.
SetRange 요청 및 응답
요청
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetRange
",
"params" : {
"heatCelsius" : 20.0,
"coolCelsius" : 22.0
}
}
응답
{}
SetRange 요청 필드
필드 | 설명 | 데이터 유형 |
---|---|---|
heatCelsius |
온도 조절기가 HEATCOOL 모드일 때 설정할 최소 희망 온도입니다. | number 예: 20.0 |
coolCelsius |
온도 조절기가 HEATCOOL 모드일 때 설정할 최대 희망 온도입니다. | number 예: 22.0 |
오류
이 트레잇과 관련하여 다음과 같은 오류 코드가 반환될 수 있습니다.
오류 메시지 | RPC | 문제 해결 |
---|---|---|
현재 온도 조절기 모드에서 사용할 수 없는 명령어입니다. | FAILED_PRECONDITION |
일부 온도 조절기 모델은 ThermostatMode 특성에 따라 온도 조절기 모드가 꺼져 있을 때 절전 모드 변경을 지원하지 않습니다. 절전 모드를 변경하기 전에 온도 조절기 모드를 난방, 냉방 또는 난방 모드로 변경해야 합니다. |
냉방 값은 난방 값보다 커야 합니다. | INVALID_ARGUMENT |
heatCelsius 필드가 명령어의 coolCelsius 필드보다 작은지 확인합니다. |
온도 조절기가 MANUAL_ECO 모드일 때는 명령어가 허용되지 않습니다. | FAILED_PRECONDITION |
온도 조절기가 수동 절전 모드일 때는 온도 설정값을 설정할 수 없습니다. |
API 오류 코드 참조에서 API 오류 코드의 전체 목록입니다.