ThermostatTemperatureSetpoint Şeması

Nest Thermostat 

sdm.devices.traits.ThermostatTemperatureSetpoint

Bu özellik, hedef sıcaklık ve sıcaklık aralığı ayarlanmasını destekleyen TERMOSTAT cihaz türlerine aittir.

Alanlar

Alan Açıklama Veri Türü
heatCelsius Termostatın ISITMA ve ISITMA-SOĞUTMA modları için hedef sıcaklık (Santigrat derece). number
Örnek: 20.0
coolCelsius Termostatın SOĞUTMA ve ISITMA-SOĞUTMA modları için hedef sıcaklık (santigrat derece). number
Örnek: 22.0

Örnek GET isteği ve yanıtı - HEAT

İstek

GET /enterprises/project-id/devices/device-id

Yanıt

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
    }
  }
}

Örnek GET isteği ve yanıtı - COOL

İstek

GET /enterprises/project-id/devices/device-id

Yanıt

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "coolCelsius" : 22.0
    }
  }
}

Örnek GET isteği ve yanıtı - HEATCOOL

İstek

GET /enterprises/project-id/devices/device-id

Yanıt

{
  "name" : "enterprises/project-id/devices/device-id",
  "traits" : {
    "sdm.devices.traits.ThermostatTemperatureSetpoint" : {
      "heatCelsius" : 20.0,
      "coolCelsius" : 22.0
    }
  }
}

Komutlar

Sıcaklık ayar noktaları değiştirilmeden önce termostat, çağrılan komuta karşılık gelen modda olmalıdır. İstenen sıcaklık ayarlarını değiştirmek için kullanılan komut ve alanlar termostat moduna göre değişir.

Örneğin, SetHeat komutunu vermek için termostatın önce HEAT modunda olması gerekir:

Mod Komut Alanlar
HEAT SetHeat heatCelsius
COOL SetCool coolCelsius
HEATCOOL SetRange heatCelsius, coolCelsius

Google Nest Thermostat sıcaklığı santigrat veya fahrenhayt cinsinden gösterebilse de ayarlanan sıcaklık komutlarının yalnızca santigrat derece cinsinden parametre aldığını unutmayın.

SetHeat

Termostat ISITMA modundayken hedef sıcaklığı ayarlar.

SetHeat isteği ve yanıtı

İstek

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat",
  "params" : {
    "heatCelsius" : 22.0
  }
}

Yanıt

{}

SetHeat istek alanları

Alan Açıklama Veri Türü
heatCelsius Termostat ISITMA modundayken ayarlanacak hedef sıcaklık. number
Örnek: 22.0

SetCool

Termostat SOĞUTMA modundayken hedef sıcaklığı ayarlar.

SetCool isteği ve yanıtı

İstek

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

Yanıt

{}

SetCool istek alanları

Alan Açıklama Veri Türü
coolCelsius Termostat SOĞUTMA modundayken ayarlanacak hedef sıcaklık. number
Örnek: 20.0

SetRange

Termostat HEATCOOL modundayken minimum ve maksimum sıcaklıkları ayarlar.

SetRange isteği ve yanıtı

İstek

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

Yanıt

{}

SetRange isteği alanları

Alan Açıklama Veri Türü
heatCelsius Termostat HEATCOOL modundayken ayarlanacak minimum hedef sıcaklık. number
Örnek: 20.0
coolCelsius Termostat HEATCOOL modundayken ayarlanacak maksimum hedef sıcaklık. number
Örnek: 22.0

Hatalar

Bu özellikle ilgili olarak aşağıdaki hata kodları döndürülebilir:

Hata Mesajı TBG Sorun giderme
Komuta mevcut termostat modunda izin verilmiyor. FAILED_PRECONDITION Bazı termostat modelleri, ThermostatMode özelliğine göre termostat modu KAPALI olduğunda Eko modunun değiştirilmesini desteklemez. Eko modu değiştirilmeden önce termostat modu HEAT, COOL veya HEATCOOL olarak değiştirilmelidir.
Soğutma değeri, ısıtma değerinden büyük olmalıdır. INVALID_ARGUMENT Komutunuzdaki heatCelsius alanının coolCelsius alanından küçük olduğundan emin olun.
Termostat MANUAL_ECO modundayken komuta izin verilmez. FAILED_PRECONDITION Termostat manuel ekonomik moddayken sıcaklık ayar noktası belirlenemez.

API hata kodlarının tam listesi için API Hata Kodu Referansı'na bakın.