Akıllı Ev Termostat Kılavuzu
action.devices.types.THERMOSTAT
- Termostatlar, ayar noktaları ve modlarla sıcaklığı yöneten cihazlardır. Bu özellik, bunları bir ısı hedefi yerine yalnızca modlara ve ayarlara (ör. yüksek/düşük) sahip olabilecek ısıtıcılardan ve AC birimlerinden ayırır.
Bu tür, cihazın Termostat simgesini ve ilgili bazı eş anlamlıları ve takma adları aldığını gösterir.
Bu tür cihazlar sıcaklığı kontrol ederken, bazı ısıtma/soğutma odalarının kontrolleri farklı, yüksek/düşük modları vardır ancak sıcaklık kontrolleri yoktur.Cihaz özellikleri
Hizmetinizin desteklemesi gereken özellikler ve durumlar, EXECUTE ve QUERY yanıtlarının nasıl oluşturulacağı gibi uygulama ayrıntıları için ilgili özellik dokümanlarına bakın.
Gerekli özellikler
Cihazınız için geçerliyse bu özellikler ve komutlar gerekir.
Termostat komutları genellikle EXECUTE
intent'le zincirlenir. *Isıyı 22 dereceye ayarla* ifadesini içeren bir kullanıcı, bir mod komutu ve ardından bir sıcaklık ayarı oluşturur.
Kalite gereksinimleri
- Gecikme: 700 ms değerinden az veya buna eşit 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, cihaz türüne ve yukarıdaki özelliklere göre ortak bir "Termostat"ı temsil eden amaç yükleri yer alır. Uygulamanıza özellik ekler veya mevcut özellikleri kaldırırsanız bu değişiklikleri yansıtacak şekilde yanıtlarınızı uygun şekilde değiştirin.
Örnek SYNC 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ı
Termostat Sıcaklık Ayar Noktası
Komut parametreleri hakkında ek ayrıntılar 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 } } ] } }
Termostat Sıcaklık Ayarı Aralığı
Komut parametreleri hakkında ek ayrıntılar 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 } } ] } }
Termostat SetModu
Komut parametreleri hakkında ek ayrıntılar 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 HATALARI
Hataların ve istisnaların tam listesini inceleyin.inHeatOrCool
- Cihazın ısıtma veya soğutma ayarı ısındığı için Isıtma/Soğutma/Aralık ayarları başarısız oldu.inHeatCool
- Cihaz ısıtma veya soğutma nedeniyle ısıtma veya Soğutma komutları başarısız oldu.lockedToRange
- Cihaz bir sıcaklık aralığına veya moda kilitlidir ve istenen değişiklik yapılamaz.rangeTooClose
- Isıtma-soğutma aralığındaki sıcaklık noktaları birbirine çok yakın.