Skema Trait RunCycle Smart Home
action.devices.traits.RunCycle
- Sifat ini mewakili perangkat apa pun yang memiliki durasi operasi berkelanjutan yang dapat dikueri.
Perangkat seperti ini akan melaporkan jumlah siklus mereka di awal operasi, dan setiap siklus tempat perangkat itu berjalan. Hal ini memungkinkan pengguna membuat kueri, seperti berikut:
- Apa siklus pengering saya?
- Berapa sisa siklus pencucian piring?
- Apa yang dilakukan pengering?
- Kapan cucian akan dilakukan?
Perangkat tertentu menyertakan durasi dalam format non-siklus. Perangkat apa pun yang berjalan selama jangka waktu tertentu dapat melaporkan sisa waktu, tanpa siklus hidupnya. Hal ini juga menangani kasus di mana siklus mungkin tidak konsisten (misalnya, mesin pencuci piring mungkin tidak selalu menggunakan semua siklus). Misalnya pengguna dapat bertanya, Bagaimana lama lagi penyedot debu saya akan berjalan? yang akan menampilkan jumlah waktu dalam satuan sebanding dengan waktu yang tersisa. Hal ini juga berlaku untuk perangkat yang tercantum atas; Berapa lama lagi pakaian saya akan mengering? 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 berjalan dan akan selesai dalam waktu sekitar 20 menit.)
RunCycle saat ini merupakan sifat hanya-baca - ia tidak memiliki perintah, hanya status untuk kueri. Di masa mendatang, mungkin ada mekanisme untuk menjalankan kembali siklus atau melewati siklus (baik untuk sprinkler, tidak baik untuk mesin cuci).
ATTRIBUTES Perangkat
Tidak ada.
NEGARA Perangkat
Entitas dengan karakteristik ini dapat melaporkan hal berikut
status sebagai bagian dari operasi QUERY
. Untuk mempelajari
selengkapnya tentang menangani intent QUERY
, lihat
Pemenuhan intent.
Negara bagian | Jenis | Deskripsi |
---|---|---|
currentRunCycle |
Array |
Wajib. Berisi sinonim untuk siklus saat ini dalam setiap bahasa yang didukung. |
[item, ...] |
Objek |
Siklus nama sinonim. |
currentCycle |
String |
Wajib. Siklus saat ini sedang dijalankan. |
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. Sisa waktu pada siklus saat ini, dalam detik. |
Contoh
Perangkat di bilas selama 5 menit lagi, dan akan selesai dalam 20 menit.
{ "currentRunCycle": [ { "currentCycle": "rinse", "lang": "en" } ], "currentTotalRemainingTime": 1200, "currentCycleRemainingTime": 300 }
Perangkat harus dibilas selama 5 menit lagi, sebelum beralih untuk memutar.
{ "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300 }
Perangkat COMMANDS
Tidak ada.
NOTIFIKASI Perangkat
Perangkat dengan karakteristik ini dapat menampilkan hal berikut payload notifikasi sebagai bagian dari perubahan status perangkat. Untuk mempelajari selengkapnya tentang cara menerapkan notifikasi, 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 keras. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
currentCycleRemainingTime |
Bilangan Bulat |
Wajib. Sisa waktu 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 keras. |
status |
String |
Wajib. Hasil operasi. Nilai yang didukung:
|
errorCode |
String |
Wajib. Nilainya dapat berupa kode error untuk fitur 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" } }