Akıllı Ev Termostatı Kılavuzu
action.devices.types.THERMOSTAT
- Termostatlar, ayar noktaları ve modlarıyla sıcaklığı yöneten cihazlardır. Bu şekilde, ısıtıcılar ve klima üniteleri yalnızca modları ve ayarları (ör. yüksek/düşük) ile sıcaklık hedefi bulunabilen klima ünitelerinden ayrılır.
Bu tür, cihazın termostat simgesini, ilgili bazı eş anlamlıları ve takma adları aldığını belirtir.
Bu tür cihazlar sıcaklığı kontrol ederken bazı ısıtma/soğutma odası birimleri farklı kontrollere ve yüksek/düşük modlara sahiptir, ancak sıcaklık kontrolleri yoktur.Cihaz özellikleri
Hizmetinizin desteklemesi gereken özellikler ve durumlar ile EXECUTE ve QUERY yanıtlarının nasıl oluşturulacağı gibi uygulama ayrıntıları için ilgili özellik belgelerine bakın.
Gerekli özellikler
Bu özellikler ve komutlar, cihazınız için geçerliyse zorunludur. Cihazınız bu özellikleri desteklemiyorsa bir QUERY veya EXECUTE yanıtına functionNotSupported
hata kodunu girin. Daha fazla bilgi için Hatalar ve istisnalar bölümüne bakın.
Termostat komutları genellikle EXECUTE
amaçlarında zincirlenir. *Isıyı 72'ye ayarla* diyen bir kullanıcı, bir mod komutu ve ardından sıcaklık ayarı oluşturur.
Kalite gereksinimleri
- Gecikme: 700 ms veya daha az olmalıdır.
- Güvenilirlik: %97'den fazla veya bu değere eşit olmalıdır.
Örnek cihaz: Basit termostat
Bu bölümde, yukarıdaki cihaz türüne ve özelliklere göre ortak bir "termostat"ı temsil eden örnek amaç yükleri yer alır. Uygulamanıza özellik ekler veya uygulamanızdaki özellikleri kaldırırsanız yanıtlarınızı bu değişiklikleri yansıtacak şekilde değiştirin.
Örnek SENKRONİZASYON yanıtı
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.THERMOSTAT", "traits": [ "action.devices.traits.TemperatureSetting" ], "name": { "name": "Simple thermostat" }, "willReportState": true, "attributes": { "availableThermostatModes": [ "off", "heat", "cool", "heatcool", "on" ], "thermostatTemperatureRange": { "minThresholdCelsius": 15, "maxThresholdCelsius": 30 }, "thermostatTemperatureUnit": "F" }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Örnek QUERY yanıtı
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 23, "thermostatTemperatureAmbient": 25.1, "thermostatHumidityAmbient": 45.3 } } } }
Örnek EXECUTE komutları
ThermostatTemperatureSetpoint
Komut parametreleri hakkında daha fazla bilgi için
action.devices.traits.TemperatureSetting
referansına bakın.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetpoint", "params": { "thermostatTemperatureSetpoint": 22 } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
ThermostatTemperatureSetRange
Komut parametreleri hakkında daha fazla bilgi için
action.devices.traits.TemperatureSetting
referansına bakın.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetRange", "params": { "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heatcool", "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
ThermostatSetMode
Komut parametreleri hakkında daha fazla bilgi için
action.devices.traits.TemperatureSetting
referansına bakın.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatSetMode", "params": { "thermostatMode": "heatcool" } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heatcool", "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
Cihaz ERRORS
Hataların ve istisnaların tam listesine bakın.inHeatOrCool
- Cihaz açık ısıtma veya soğutma modunda olduğundan Isıtma/Soğutma/Menzil komutları başarısız oldu.inHeatCool
- Cihaz ısıtma veya soğutma modunda olduğundan Isıtma veya Soğutma komutları başarısız oldu.lockedToRange
- Cihaz bir sıcaklık aralığına veya moduna kilitlendi ve istenen değişiklik yapılamıyor.rangeTooClose
- Isıtma soğutma aralığındaki sıcaklık noktaları birbirine çok yakın.