Skema Atribut RunCycle Smart Home
action.devices.traits.RunCycle
- Ciri ini mewakili perangkat apa pun yang memiliki durasi berkelanjutan untuk operasinya yang dapat dikueri.
Perangkat seperti ini akan melaporkan jumlah total siklusnya pada awal operasi, dan setiap siklus yang sedang dijalankan perangkat saat ini. Hal ini memungkinkan pengguna membuat kueri, seperti berikut:
- Apa siklus pengering saya?
- Berapa siklus yang tersisa di mesin pencuci piring?
- Apa yang dilakukan pengering?
- Kapan cucian akan dilakukan?
Perangkat tertentu menyertakan durasi dalam format non-siklik. Setiap perangkat yang berjalan selama jangka waktu tertentu dapat melaporkan waktu yang tersisa, tanpa siklus. Hal ini juga menangani kasus saat siklus mungkin tidak konsisten (misalnya, penyedot debu mungkin tidak selalu menggunakan semua siklus). Misalnya, pengguna dapat bertanya, Berapa lama lagi penyedot debu saya akan berjalan? yang akan menampilkan jumlah waktu dalam unit yang sebanding 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 hitungan menit.
Perangkat dapat menampilkan informasi yang diketahuinya, 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 merupakan karakteristik hanya baca - tidak memiliki perintah, hanya status untuk kueri. Pada masa mendatang, mungkin ada mekanisme untuk menjalankan kembali siklus atau melewatkan siklus (baik untuk sprinkler, tidak baik 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 untuk dijalankan. |
lang |
String |
Wajib. Kode bahasa untuk nama siklus yang diberikan. Lihat Bahasa yang didukung. |
currentTotalRemainingTime |
Bilangan Bulat |
Wajib. Sisa waktu operasi, dalam detik. |
currentCycleRemainingTime |
Bilangan Bulat |
Wajib. Waktu yang tersisa pada siklus saat ini, dalam detik. |
Contoh
Perangkat masih dalam proses pembilasan selama 5 menit lagi, dan akan selesai dalam 20 menit.
{ "currentRunCycle": [ { "currentCycle": "rinse", "lang": "en" } ], "currentTotalRemainingTime": 1200, "currentCycleRemainingTime": 300 }
Perangkat akan dibilas selama 5 menit lagi, sebelum beralih ke putaran.
{ "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300 }
Perintah Perangkat
Tidak ada.
NOTIFIKASI Perangkat
Perangkat dengan karakteristik ini dapat menampilkan payload notifikasi berikut sebagai bagian dari perubahan status perangkat. Untuk mempelajari penerapan notifikasi lebih lanjut, lihat Notifikasi untuk Action smart home.
Kolom | Jenis | Deskripsi |
---|---|---|
RunCycle |
Wajib. Payload notifikasi. |
|
Mendukung salah satu fitur berikut: | ||
0
|
Objek |
Berhasil |
priority |
Bilangan Bulat |
Wajib. Merepresentasikan tingkat notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan dengan lantang. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
currentCycleRemainingTime |
Bilangan Bulat |
Wajib. Waktu yang tersisa pada siklus saat ini, dalam detik. |
1
|
Objek |
Gagal |
priority |
Bilangan Bulat |
Wajib. Merepresentasikan tingkat notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan dengan lantang. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
errorCode |
String |
Wajib. Nilainya dapat berupa kode error untuk fitur ini, misalnya, |
Contoh
Perangkat telah selesai dijalankan.
{ "RunCycle": { "priority": 0, "status": "SUCCESS", "currentCycleRemainingTime": 0 } }
Terjadi error saat menyelesaikan siklus saat ini.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }