ThermostatTemperatureSetpoint 스키마

Nest Thermostat 

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 오류 코드의 전체 목록입니다.