Skema Trait RunCycle Smart Home

action.devices.traits.RunCycle - Trait ini mewakili perangkat apa pun yang memiliki durasi berkelanjutan untuk operasinya yang dapat dikueri.

Perangkat seperti ini akan melaporkan jumlah total siklusnya di awal operasi, dan setiap siklus yang sedang dijalankan perangkat saat berjalan. 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 cuci akan dilakukan?

Perangkat tertentu menyertakan durasi dalam format non-siklis. Perangkat apa pun yang berjalan untuk 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, Seberapa lama penyedot debu saya berjalan? yang akan menampilkan jumlah waktu dalam satuan yang proporsional dengan waktu yang tersisa. Ini juga berlaku untuk perangkat yang tercantum di atas; Berapa lama lagi pakaian saya akan mengering? akan menampilkan durasi dalam menit.

Perangkat dapat menampilkan hal yang diketahui, 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 bersifat hanya baca - tidak memiliki perintah, hanya status ke kueri. Di masa mendatang, mungkin ada mekanisme untuk menjalankan kembali siklus atau melewatkan siklus (baik untuk penyiram, tidak baik untuk mesin cuci).

ATTRIBUTE 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.

Status Type 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 harus dilakukan.

lang String

Wajib.

Kode bahasa untuk nama siklus yang ditentukan. Lihat Bahasa yang didukung.

currentTotalRemainingTime Bilangan Bulat

Wajib.

Waktu yang tersisa saat pengoperasian, dalam detik.

currentCycleRemainingTime Bilangan Bulat

Wajib.

Waktu yang tersisa pada siklus saat ini, dalam detik.

Contoh

Perangkat akan bilas selama 5 menit lagi, dan akan selesai dalam 20 menit.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 1200,
  "currentCycleRemainingTime": 300
}

Perangkat dibilas selama 5 menit lagi, sebelum diputar.

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "nextCycle": "spin",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 600,
  "currentCycleRemainingTime": 300
}

Perangkat COMMAND

Tidak ada.

NOTIFIKASI Perangkat

Perangkat dengan trait ini dapat menampilkan payload notifikasi berikut sebagai bagian dari perubahan status perangkat. Untuk mempelajari cara menerapkan notifikasi lebih lanjut, lihat Notifikasi untuk Action smart home.

Kolom Type Deskripsi
RunCycle

Wajib.

Payload notifikasi.

Mendukung salah satu dari yang berikut:
0 Objek

Berhasil

priority Bilangan Bulat

Wajib.

Menampilkan level notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan.

status String

Wajib.

Hasil operasi.

Nilai yang didukung:

SUCCESS
currentCycleRemainingTime Bilangan Bulat

Wajib.

Waktu yang tersisa pada siklus saat ini, dalam detik.

1 Objek

Kegagalan

priority Bilangan Bulat

Wajib.

Menampilkan level notifikasi. Nilai yang saat ini didukung adalah 0, yang menunjukkan bahwa notifikasi harus diucapkan.

status String

Wajib.

Hasil operasi.

Nilai yang didukung:

FAILURE
errorCode String

Wajib.

Nilainya dapat berupa kode error apa pun untuk fitur ini, misalnya, deviceStuck.

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"
  }
}

Perangkat ERRORS

Lihat daftar lengkap error dan pengecualian.