Skema Trait Smart Run Run
action.devices.traits.RunCycle
- Sifat ini mewakili perangkat apa pun yang memiliki durasi operasi yang sedang berlangsung yang dapat dikueri.
Perangkat seperti ini akan melaporkan jumlah total siklus pada awal operasi, dan setiap siklus yang dijalankan perangkat saat ini sedang berjalan. Hal ini memungkinkan pengguna membuat kueri, seperti berikut:
- Pengering berapa siklusnya?
- Berapa siklus yang tersisa untuk mesin pencuci piring?
- Apa fungsi pengering?
- Kapan proses pencucian selesai?
Perangkat tertentu menyertakan durasi dalam format non-siklus. Setiap perangkat yang berjalan selama jangka waktu tertentu dapat melaporkan sisa waktunya, tanpa siklus. Hal ini juga menangani kasus saat siklus mungkin tidak konsisten (misalnya, mesin pencuci piring mungkin tidak selalu menggunakan semua siklus). Misalnya, pengguna dapat bertanya, Berapa lama vacuum saya akan berjalan? yang akan menampilkan jumlah waktu dalam unit yang proporsional dengan waktu yang tersisa. Hal ini juga berlaku untuk perangkat yang tercantum di atas; Berapa lama lagi pakaian saya akan kering? akan menampilkan durasi dalam menit.
Perangkat dapat menampilkan apa yang mereka ketahui, dan respons TTS Asisten akan membentuk jawaban terbaik dengan data yang tersedia (misalnya, Mesin pencuci piring sedang berjalan dan akan selesai dalam waktu sekitar 20 menit.)
RunCycle saat ini adalah fitur hanya baca - fitur ini tidak memiliki perintah, hanya menyatakan kueri. Di masa mendatang, mungkin ada mekanisme untuk menjalankan kembali siklus atau melewati siklus (baik untuk penyemprot air, buruk untuk mesin cuci).
ATRIBUT Perangkat
Tidak ada.
STATUS Perangkat
Entitas dengan karakteristik ini dapat melaporkan status berikut
sebagai bagian dari operasi QUERY
. Untuk mempelajari
penanganan intent QUERY
lebih lanjut, lihat
fulfillment intent.
Negara bagian | Jenis | Deskripsi |
---|---|---|
currentRunCycle |
Array |
Wajib. Berisi sinonim untuk siklus saat ini dalam setiap bahasa yang didukung. |
[item, ...] |
Objek |
Nama sinonim siklus. |
currentCycle |
String |
Wajib. Siklus saat ini sedang dilakukan. |
nextCycle |
String |
Opsional. Siklus berikutnya yang akan dijalankan. |
lang |
String |
Wajib. Kode bahasa untuk nama siklus yang ditentukan. Lihat Bahasa yang didukung. |
currentTotalRemainingTime |
Integer |
Wajib. Waktu tersisa dalam operasi, dalam detik. |
currentCycleRemainingTime |
Integer |
Wajib. Waktu yang tersisa pada siklus saat ini, dalam detik. |
Contoh
Perangkat telah membilas selama 5 menit lagi, dan akan selesai dalam 20 menit.
{ "currentRunCycle": [ { "currentCycle": "rinse", "lang": "en" } ], "currentTotalRemainingTime": 1200, "currentCycleRemainingTime": 300 }
Perangkat berada dalam bilas selama 5 menit lagi, sebelum berpindah untuk berputar.
{ "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300 }
COMMAND Perangkat
Tidak ada.
NOTIFIKASI Perangkat
Perangkat dengan karakteristik ini dapat menampilkan payload notifikasi berikut sebagai bagian dari perubahan status perangkat. Untuk mempelajari cara mengimplementasikan notifikasi lebih lanjut, lihat Notifikasi untuk Action smart home.
Kolom | Jenis | Deskripsi |
---|---|---|
RunCycle |
Wajib. Payload notifikasi. |
|
Mendukung salah satu dari berikut ini: | ||
0
|
Objek |
Berhasil |
priority |
Integer |
Wajib. Merepresentasikan tingkat notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan dengan keras. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
currentCycleRemainingTime |
Integer |
Wajib. Waktu yang tersisa pada siklus saat ini, dalam detik. |
1
|
Objek |
Kegagalan |
priority |
Integer |
Wajib. Merepresentasikan tingkat notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan dengan keras. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
errorCode |
String |
Wajib. Nilainya dapat berupa kode error untuk sifat ini, misalnya, |
Contoh
Perangkat telah selesai berjalan.
{ "RunCycle": { "priority": 0, "status": "SUCCESS", "currentCycleRemainingTime": 0 } }
Terjadi error saat menyelesaikan siklus saat ini.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }