Termostat Sıcaklık Ayar Noktası Şeması
sdm.devices.traits.ThermostatTemperatureSetpoint
Bu özellik, hedef sıcaklık ve sıcaklık aralığını ayarlamayı destekleyen THERMOSTAT cihaz türlerine aittir.
Alanlar
Alan | Açıklama | Veri Türü |
---|---|---|
heatCelsius |
Termostatın HEAT ve HEATCOOL modları için Santigrat olarak hedef sıcaklık. | number Örnek: 20,0 |
coolCelsius |
Termostatın SOĞUTMA ve HEATCOOL modları için Santigrat cinsinden hedef sıcaklık. | 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
Termostat, sıcaklık ayar noktalarını değiştirmeden önce çağrılan komuta karşılık gelen modda olmalıdır. Ayar noktalarını değiştirmek için kullanılacak komut ve alanlar termostat moduna göre değişiklik gösterir.
Örneğin, SetHeat komutunu vermek için termostatın önce ISITMA modunda olması gerekir:
Mod | Komut | Alanlar |
---|---|---|
ISITMA | SetHeat | heatCelsius |
SÜPER | SetCool | coolCelsius |
ISITMA | SetRange | heatCelsius , coolCelsius |
Ayar noktası komutlarının yalnızca Santigrat cinsinden derece olarak belirtildiğini unutmayın. Ancak Google Nest Thermostat, sıcaklığı Santigrat veya Fahrenhayt derece olarak gösterebilir.
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 istek 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ı | RPC | Sorun giderme |
---|---|---|
Mevcut termostat modunda komuta izin verilmez. | FAILED_PRECONDITION |
ThermostatMode özelliğine göre bazı termostat modelleri, termostat modu kapalıyken Eko modunun değiştirilmesini desteklemez. Eko modu değiştirilmeden önce termostat modu ISITMA, SOĞUT veya HEATCOOL olarak değiştirilmelidir. |
Soğutma değeri, ısı değerinden büyük olmalıdır. | INVALID_ARGUMENT |
heatCelsius alanı, komutunuzdaki coolCelsius alanından küçük olmalıdır. |
Termostat MANUAL_ECO modundayken komuta izin verilmez. | FAILED_PRECONDITION |
Termostat manuel Eko modundayken istenen sıcaklık ayarı ayarlanamaz. |
API hata kodlarının tam listesi için API Hata Kodu Referansı'na bakın.