Panduan Termostat Smart Home
action.devices.types.THERMOSTAT - Termostat adalah perangkat pengatur suhu, dengan suhu yang ditetapkan dan mode. Hal ini membedakannya 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 serta alias terkait.
Perangkat jenis ini mengontrol suhu, sedangkan beberapa unit pemanas/pendingin ruangan memiliki kontrol yang berbeda dan mode tinggi/rendah, tetapi tidak memiliki kontrol suhu.Kemampuan perangkat
Lihat dokumentasi karakteristik yang sesuai untuk mengetahui detail penerapan, seperti atribut dan status yang harus didukung layanan Anda, serta cara membuat respons EXECUTE dan QUERY.
Ciri-ciri yang diperlukan
Perintah dan sifat ini diperlukan, jika berlaku untuk perangkat Anda. Jika perangkat Anda tidak mendukung karakteristik ini, masukkan kode error
functionNotSupported dalam respons QUERY atau EXECUTE. Lihat
Error dan pengecualian untuk mengetahui info selengkapnya.
Perintah termostat sering dirangkai dalam intent EXECUTE. Pengguna yang
mengatakan *Setel penghangat ke 72* akan membuat perintah mode yang diikuti dengan setelan suhu.
Contoh perangkat: Termostat sederhana
Bagian ini berisi contoh payload intent yang merepresentasikan "Termostat" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus ciri dalam penerapan, ubah respons Anda dengan tepat 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 mengetahui 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 } } ] } }
ThermostatTemperatureSetRange
Untuk mengetahui 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 } } ] } }
ThermostatSetMode
Untuk mengetahui 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 } } ] } }
KESALAHAN Perangkat
Lihat daftar lengkap error dan pengecualian.inHeatOrCool- Perintah Heat/Cool/Range gagal karena perangkat berada dalam mode panas atau dingin eksplisit.inHeatCool- Perintah Panas atau Dingin gagal karena perangkat dalam mode 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 berdekatan satu sama lain.