ThermostatTemperatureSetpoint 스키마

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

이 특성은 희망 온도와 온도 범위 설정을 지원하는 온도 조절기의 기기 유형에 속합니다.

필드

필드 설명 데이터 유형
heatCelsius 온도 조절기 난방 및 HEATCOOL 모드의 희망 온도(섭씨) number
예: 20.0
coolCelsius 온도 조절기 COOL 및 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

온도 조절기가 HEAT 모드일 때 희망 온도를 설정합니다.

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

온도 조절기가 COOL 모드일 때 희망 온도를 설정합니다.

SetCool 요청 및 응답

요청

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetCool",
  "params" : {
    "coolCelsius" : 20.0
  }
}

응답

{}

SetCool 요청 필드

필드 설명 데이터 유형
coolCelsius 온도 조절기가 COOL 모드일 때 설정할 희망 온도입니다. 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 오류 코드 참조를 확인하세요.