Panduan Termostat Smart Home
action.devices.types.THERMOSTAT
- Termostat adalah perangkat yang mengelola suhu, dengan titik dan mode yang ditentukan. Tindakan ini memisahkan unit dari penghangat dan unit AC yang mungkin hanya memiliki mode dan setelan (misalnya, tinggi/rendah) vs target suhu.
Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Termostat dan beberapa hal terkait sinonim dan alias.
Perangkat jenis ini mengontrol suhu, sedangkan beberapa unit ruang penghangat/penyejuk memiliki dan mode tinggi/rendah, tetapi bukan kontrol suhu.Kemampuan perangkat
Lihat dokumentasi sifat yang sesuai untuk detail penerapan, seperti atribut dan status yang harus didukung layanan Anda, serta cara membangun respons EXECUTE dan QUERY.
Ciri yang diperlukan
Sifat dan perintah ini diperlukan, jika berlaku untuk
perangkat seluler. Jika perangkat Anda tidak mendukung ciri ini, masukkan kode kesalahan
functionNotSupported
dalam respons QUERY atau EXECUTE. Lihat
Error dan pengecualian untuk info selengkapnya.
Perintah termostat sering kali dirantai di intent EXECUTE
. Pengguna yang
mengatakan *Atur pemanas ke 72* akan menghasilkan perintah mode diikuti dengan pengaturan suhu.
Persyaratan kualitas
- Latensi: harus kurang dari atau sama dengan 700 md.
- Keandalan: harus lebih dari atau sama dengan 97%.
Perangkat contoh: Termostat sederhana
Bagian ini berisi contoh payload intent yang mewakili "Termostat" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus ciri khas dalam implementasi Anda, ubah respons Anda untuk mencerminkan perubahan tersebut.
Contoh respons SYNC
{ "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" } } ] } }
Contoh respons QUERY
{ "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 } } } }
Contoh perintah EXECUTE
ThermostatTemperatureSetpoint
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TemperatureSetting
alamat IP internal.
{ "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
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TemperatureSetting
alamat IP internal.
{ "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
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TemperatureSetting
alamat IP internal.
{ "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 } } ] } }
Perangkat ERRORS
Lihat daftar lengkap error dan pengecualian.inHeatOrCool
- Perintah Penghangat/Pendingin/Rentang gagal karena perangkat menyala panas atau dingin yang eksplisit.inHeatCool
- Perintah Hangat atau Sejuk gagal karena perangkat panas atau Bagus.lockedToRange
- Perangkat dikunci ke rentang suhu atau mode, dan perubahan yang diminta tidak dapat dilakukan.rangeTooClose
- Titik suhu pada rentang hangat/sejuk terlalu dekat dengan sama lain.