Panduan Termostat Smart Home
action.devices.types.THERMOSTAT
- Termostat adalah perangkat yang mengelola suhu, dengan titik dan mode yang ditetapkan. Ini memisahkannya dari pemanas 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 sinonim dan alias yang terkait.
Perangkat dengan jenis ini mengontrol suhu, sedangkan beberapa unit ruang pemanas/sejuk memiliki kontrol dan mode tinggi/rendah yang berbeda, tetapi tidak memiliki kontrol suhu.Kemampuan perangkat
Lihat dokumentasi karakteristik yang sesuai untuk detail implementasi, seperti atribut dan status yang harus didukung oleh layanan Anda, serta cara membuat respons EXECUTE dan QUERY.
Sifat yang diperlukan
Sifat dan perintah ini diperlukan, jika berlaku untuk perangkat Anda.
Perintah termostat sering dirantai dalam intent EXECUTE
. Pengguna yang mengatakan *Setel panas ke 72* akan menghasilkan perintah mode yang diikuti dengan rangkaian suhu.
Persyaratan kualitas
- Latensi: harus kurang dari atau sama dengan 700 md.
- Keandalan: harus lebih dari atau sama dengan 97%.
Contoh perangkat: Termostat sederhana
Bagian ini berisi contoh payload intent yang mewakili "Termostat" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus karakteristik dalam implementasi, ubah respons agar sesuai dengan 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
Set SuhuSuhu Termostat
Untuk detail tambahan tentang parameter perintah, lihat referensi
action.devices.traits.TemperatureSetting
.
{ "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 } } ] } }
TermostatSetelSuhu
Untuk detail tambahan tentang parameter perintah, lihat referensi
action.devices.traits.TemperatureSetting
.
{ "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 } } ] } }
ModeTermostat
Untuk detail tambahan tentang parameter perintah, lihat referensi
action.devices.traits.TemperatureSetting
.
{ "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 Heat/Cool/Range gagal karena perangkat dalam suhu panas atau sejuk.inHeatCool
- Perintah Heat atau Cool gagal karena perangkat sedang panas atau dingin.lockedToRange
- Perangkat dikunci ke rentang suhu atau mode, dan perubahan yang diminta tidak dapat dilakukan.rangeTooClose
- Titik suhu pada rentang heatcool terlalu dekat satu sama lain.