Error dan pengecualian

Dokumen ini mencantumkan error dan pengecualian yang didukung secara resmi untuk perangkat smart home. Gunakan kode error dan pengecualian yang diberikan ini dalam respons maksud, atau dalam notifikasi jika Anda telah menerapkannya, sehingga Asisten Google akan memberi tahu pengguna akhir tentang masalah yang terkait dengan perintah atau status perangkat tertentu. Jika respons berisi format yang salah atau errorCode, Asisten Google akan memberikan pesan error umum kepada pengguna, misalnya, "Maaf, perangkat tidak tersedia saat ini".

Error

Anda harus menampilkan kode error saat masalah menyebabkan permintaan eksekusi atau kueri gagal. Misalnya, jika kunci pintu macet dan tidak dapat dikunci atau dibuka, error tentang status ini harus ditampilkan kepada pengguna.

Kode error dapat dilampirkan di tingkat perangkat atau di tingkat global. Misalnya, jika pengguna memiliki banyak lampu dari satu penyedia dan dikontrol oleh hub, saat pengguna meminta untuk mematikan semua lampunya, penyedia dapat menampilkan error tingkat perangkat jika satu lampu offline, atau error tingkat global jika seluruh hub offline dan tidak ada lampu yang dapat dikontrol. Jika semua perangkat offline, tidak ada perbedaan antara penggunaan error tingkat global atau tingkat perangkat.

Rangkuman:

  • Error tingkat global: semua perangkat dalam respons memiliki error yang sama
  • Error tingkat lokal: respons campuran dengan kasus error dan keberhasilan

Error tingkat global

Cuplikan JSON berikut menunjukkan cara menampilkan error tingkat global dalam respons QUERY atau EXECUTE.

Contoh error tingkat global deviceOffline karena hub sedang offline:

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "errorCode": "deviceOffline",
    "status" : "ERROR"
  }
}

Contoh error tingkat global inSoftwareUpdate karena hub sedang diperbarui:

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "errorCode": "inSoftwareUpdate",
    "status" : "ERROR"
  }
}

Error tingkat perangkat

Respons QUERY

Cuplikan JSON berikut menunjukkan cara menampilkan error tingkat perangkat dalam respons QUERY.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "devices": {
      "device-id-1": {
        "errorCode": "deviceOffline",
        "status" : "ERROR"
      },
      "device-id-2": {
        "errorCode": "deviceOffline",
        "status" : "ERROR"
      }
    }
  }
}

Respons EXECUTE

Cuplikan JSON berikut menunjukkan cara menampilkan error tingkat perangkat dalam respons EXECUTE.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [
      {
        "ids": [
          "device-id-1"
        ],
        "status": "ERROR",
        "errorCode": "deviceOffline"
      },
      {
        "ids": [
          "device-id-2"
        ],
        "status": "SUCCESS",
        "states": {
          "on": true,
          "online": true
        }
      }
    ]
  }
}

Notifikasi dengan error

Notifikasi proaktif

Cuplikan JSON berikut menunjukkan cara melaporkan error tingkat perangkat dalam notifikasi proaktif.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "agentUserId": "agent-user-id-1",
  "eventId": "unique-event-id-1",
  "payload": {
    "devices": {
      "notifications": {
        "device-id-1": {
          "RunCycle": {
            "priority": 0,
            "status": "FAILURE",
            "errorCode": "deviceDoorOpen"
          }
        }
      }
    }
  }
}

Respons lanjutan

Cuplikan JSON berikut menunjukkan cara melaporkan error tingkat perangkat dalam respons lanjutan.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "agentUserId": "agent-user-id-1",
  "eventId": "unique-event-id-1",
  "payload": {
    "devices": {
      "notifications": {
        "device-id-1": {
          "LockUnlock": {
            "priority": 0,
            "followUpResponse": {
              "status": "FAILURE",
              "errorCode": "deviceJammingDetected",
              "followUpToken": "PLACEHOLDER"
            }
          }
        }
      }
    }
  }
}

Daftar kesalahan

Error berikut akan menghasilkan TTS terkait di perangkat.

  • aboveMaximumLightEffectsDuration : Itu lebih dari durasi maksimum 1 jam. Coba lagi.
  • aboveMaximumTimerDuration : Saya hanya dapat menyetel <device(s)> hingga <time period>
  • actionNotAvailable : Maaf, sepertinya saat ini saya tidak bisa melakukan itu. Tips: Verifikasi sifat perangkat dan logika status saat ini dalam pemenuhan Anda.
  • actionUnavailableWhileRunning : <device(s)> <is/are> currently running, so I can't make any changes.
  • alreadyArmed : <device(s)> <is/are> sudah diaktifkan.
  • alreadyAtMax : <device(s)> <is/are> sudah disetel ke suhu maksimum.
  • alreadyAtMin : <device(s)> <is/are> already set to the minimum temperature.
  • alreadyClosed : <device(s)> <is/are> already closed.
  • alreadyDisarmed : <device(s)> <is/are> sudah dinonaktifkan.
  • alreadyDocked : <device(s)> <is/are> sudah terhubung.
  • alreadyInState : <device(s)> <is/are> already in that state.
  • alreadyLocked : <device(s)> <is/are> sudah terkunci.
  • alreadyOff : <device(s)> <is/are> already off.
  • alreadyOn : <device(s)> <is/are> sudah aktif.
  • alreadyOpen : <device(s)> <is/are> sudah terbuka.
  • alreadyPaused : <device(s)> <is/are> already paused.
  • alreadyStarted : <device(s)> <is/are> sudah dimulai.
  • alreadyStopped : <device(s)> <is/are> already stopped.
  • alreadyUnlocked : <device(s)> <is/are> already unlocked.
  • ambiguousZoneName : Maaf, <device(s)> tidak dapat mengidentifikasi zona yang Anda maksud. Pastikan zona Anda memiliki nama yang unik, lalu coba lagi.
  • amountAboveLimit : Jumlahnya melebihi yang dapat didukung oleh <device(s)>.
  • appLaunchFailed : Maaf, <nama aplikasi> gagal diluncurkan di <perangkat>. Tips: Verifikasi appId dan pastikan aplikasi didukung di hardware target.
  • armFailure : <device(s)> tidak dapat diaktifkan.
  • armLevelNeeded : Saya tidak yakin mau menyetel <device(s)> ke level mana. Coba ucapkan "Setel <perangkat> ke <keamanan rendah>" atau "Setel <perangkat> ke <keamanan tinggi>"
  • authFailure : Sepertinya saya tidak dapat menjangkau <device(s)>. Coba periksa aplikasi untuk memastikan <device/devices> <is/are> sudah disiapkan sepenuhnya.
  • bagFull : <device(s)> <has/have> <a full bag/full bags>. Please empty <it/them> and try again.
  • belowMinimumLightEffectsDuration : Durasi tersebut kurang dari durasi minimum 5 menit. Coba lagi.
  • belowMinimumTimerDuration : Saya tidak dapat menyetel <device(s)> untuk waktu yang sesingkat itu. Coba lagi.
  • binFull : <device(s)> <has/have> <a full bin/full bins>.
  • cancelArmingRestricted : Maaf, saya tidak dapat membatalkan pengaktifan <device(s)>.
  • cancelTooLate : Maaf, sudah terlambat untuk membatalkan. Sebagai gantinya, gunakan <device(s)> atau aplikasi.
  • channelSwitchFailed : Maaf, gagal beralih ke channel <channel name>.Harap coba lagi nanti. Tips: Verifikasi nama/nomor saluran dan status langganan pengguna.
  • chargerIssue : Maaf, sepertinya <device(s)> <has/have> <a charger issue/charger issues>. Tips: Partner harus menyelidiki telemetri tingkat hardware dan kesehatan baterai.
  • commandInsertFailed : Tidak dapat memproses perintah untuk <device(s)>. Tips: Selidiki performa penulisan database atau logika antrean perintah internal.
  • deadBattery : <device(s)> <has/have> <a dead battery/dead batteries>.
  • degreesOutOfRange : Derajat yang diminta berada di luar rentang untuk <device(s)>.
  • deviceAlertNeedsAssistance : <device(s)> <has/have> an active alert and <need(s)> your assistance.
  • deviceAtExtremeTemperature : <device(s)> <is/are> at <an extreme temperature/extreme temperatures>.
  • deviceBusy : Maaf, sepertinya <device(s)> sedang melakukan sesuatu saat ini.
  • deviceCharging : Maaf, sepertinya <device(s)> tidak dapat melakukan tindakan tersebut karena (ha_shared.ItsTheyre size=$item.devices.total_device_count) mengisi daya.
  • deviceClogged : Maaf, sepertinya <device(s)> tersumbat.
  • deviceCurrentlyDispensing : <device(s)> sedang mengeluarkan sesuatu saat ini.
  • deviceDoorOpen : Pintu terbuka di <device(s)>. Harap tutup pintu dan coba lagi.
  • deviceHandleClosed : Penutup perangkat <device(s)> tertutup. Buka penutupnya, lalu coba lagi.
  • deviceJammingDetected : <device(s)> <is/are> jammed.
  • deviceLidOpen : Penutup <perangkat> terbuka. Tutup penutupnya dan coba lagi.
  • deviceNeedsRepair : <device(s)> <need(s)> to be repaired. Hubungi dealer reparasi lokal Anda.
  • deviceNotDocked : Maaf, sepertinya <device(s)> <isn't/aren't> dipasang ke dok. Pasangkan <it/them> ke dok, lalu coba lagi.
  • deviceNotFound : <device(s)> <is/are>n't available. Sebaiknya coba siapkan <it/them> lagi. Tips: Pastikan backend Anda selalu menyinkronkan Home Graph. Panggil requestSync setiap kali perangkat ditambahkan atau dihapus.
  • deviceNotMounted : Maaf, sepertinya <device(s)> tidak dapat melakukan itu karena <it/they> <is/are>n't dipasang.
  • deviceNotReady : <device(s)> <is/are>n't ready.
  • deviceStuck : <device(s)> <is/are> macet dan memerlukan bantuan Anda.
  • deviceTampered : <device(s)> <has/have> been tampered with.
  • deviceThermalShutdown : Maaf, sepertinya <device(s)> mati karena suhu ekstrem.
  • directResponseOnlyUnreachable : <device(s)> <doesn't/don't> support remote control.
  • disarmFailure : <device(s)> tidak dapat dinonaktifkan.
  • discreteOnlyOpenClose : Maaf, <device(s)> hanya dapat dibuka atau ditutup sepenuhnya.
  • dispenseAmountAboveLimit : <device(s)> tidak dapat mengeluarkan dalam jumlah sebanyak itu.
  • dispenseAmountBelowLimit : <device(s)> tidak dapat mengeluarkan dalam jumlah sesedikit itu.
  • dispenseAmountRemainingExceeded : <device(s)> tidak memiliki <item yang dikeluarkan> yang cukup untuk melakukannya.
  • dispenseFractionalAmountNotSupported : <device(s)> tidak dapat mengeluarkan <dispense item> dalam jumlah pecahan.
  • dispenseFractionalUnitNotSupported : <device(s)> tidak mendukung unit pecahan satuan itu untuk <dispense item>.
  • dispenseUnitNotSupported : <device(s)> tidak mendukung unit tersebut untuk <dispense item>.
  • doorClosedTooLong : Pintu di <device(s)> sudah lama tidak dibuka. Silakan buka pintunya, pastikan ada sesuatu di dalamnya, lalu coba lagi.
  • emergencyHeatOn : <device(s)> <is/are> in Emergency Heat Mode, so <it/they>'ll have to be adjusted by hand.
  • faultyBattery : <device(s)> <has/have> <a faulty battery/faulty batteries>.
  • floorUnreachable : <device(s)> tidak dapat menjangkau ruangan tersebut. Pindahkan <it/them> ke lantai yang benar, lalu coba lagi.
  • functionNotSupported : Sebenarnya, <device(s)> <tidak/tidak> mendukung fungsi tersebut. Tips: Pastikan respons SYNC Anda secara akurat mencerminkan kemampuan perangkat.
  • genericDispenseNotSupported : Saya perlu tahu apa yang ingin Anda keluarkan. Coba lagi dengan nama item.
  • hardError : Maaf, terjadi error dan saya tidak bisa mengontrol perangkat smart home Anda.
  • hardError : Maaf, terjadi error dan saya tidak bisa mengontrol perangkat smart home Anda.
  • inAutoMode : <device(s)> <is/are> saat ini disetel ke mode otomatis. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inAwayMode : <device(s)> <is/are> currently set to away mode. Untuk mengontrol termostat, Anda perlu mengalihkannya ke mode di rumah secara manual menggunakan aplikasi Nest di ponsel, tablet, atau komputer.
  • inDryMode : <device(s)> <is/are> currently set to dry mode. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inEcoMode : <device(s)> <is/are> currently set to eco mode. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inFanOnlyMode : <device(s)> <is/are> currently set to fan-only mode. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inHeatOrCool : <device(s)> <is/are>n't in heat/cool mode.
  • inHumidifierMode : <device(s)> <is/are> saat ini disetel ke mode pelembap udara. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inOffMode : <device(s)> <is/are> currently off. To change the temperature, you'll need to switch <it/them> to a different mode.
  • inPurifierMode : <device(s)> <is/are> currently set to purifier mode. Untuk mengubah suhu, Anda harus mengubah <it/them> ke mode lain.
  • inSleepMode : <device(s)> <is/are> dalam mode tidur. Coba lagi nanti.
  • inSoftwareUpdate : <device(s)> <is/are> currently in a software update.
  • lockFailure : <device(s)> tidak dapat dikunci. Tips: Selidiki gangguan fisik, daya rendah, atau kegagalan motor pada hardware smart lock.
  • lockedState : <device(s)> <is/are> saat ini terkunci.
  • lockedToRange : Suhu tersebut berada di luar rentang yang dikunci di <device(s)>.
  • lowBattery : <device(s)> <has/have> low battery.
  • maxSettingReached : <device(s)> <is/are> sudah disetel ke setelan tertinggi.
  • maxSpeedReached : <device(s)> <is/are> sudah disetel ke kecepatan maksimum.
  • minSettingReached : <device(s)> <is/are> sudah disetel ke setelan terendah.
  • minSpeedReached : <device(s)> <is/are> already set to the minimum speed.
  • monitoringServiceConnectionLost : <device(s)> <has/have> lost <its/their> connection to the monitoring service.
  • needsAttachment : Maaf, sepertinya <device(s)> <is/are> tidak memiliki perlengkapan yang diperlukan. Silakan ganti lalu coba lagi.
  • needsBin : Maaf, sepertinya <device(s)> <is/are> tidak memiliki wadah. Silakan ganti lalu coba lagi.
  • needsPads : <device(s)> <need(s)> bantalan baru.
  • needsSoftwareUpdate : <device(s)> <need(s)> update software.
  • needsWater : <device(s)> <need(s)> air.
  • networkProfileNotRecognized : Maaf, saya tidak mengenali "<network profile>" di <device(s)>. Tips: Verifikasi bahwa string nama profil cocok dengan profil yang didukung dalam respons SYNC.
  • networkSpeedTestInProgress : Saya sudah menguji <speed/speeds> <network>.
  • noAvailableApp : Maaf, sepertinya <nama aplikasi> tidak tersedia.
  • noAvailableChannel : Maaf, sepertinya channel <channel name> tidak tersedia.
  • noChannelSubscription : Maaf, saat ini Anda belum berlangganan ke channel <channel name>.
  • noTimerExists : Maaf, sepertinya tidak ada timer yang disetel di <device(s)>.
  • notSupported : Maaf, mode tersebut tidak tersedia untuk <device(s)>.
  • obstructionDetected : <device(s)> mendeteksi penghalang.
  • offline , deviceOffline : Maaf, sepertinya <device(s)> <is/are>n't tersedia saat ini.
  • onRequiresMode : Tentukan mode yang ingin Anda aktifkan.
  • passphraseIncorrect : Maaf, sepertinya PIN yang dimasukkan salah.
  • percentOutOfRange : Maaf, saya tidak dapat menyetel <perangkat> ke <persen>.
  • pinIncorrect : (passphraseIncorrect)
  • rainDetected : Saya tidak membuka <perangkat> karena terdeteksi hujan.
  • rangeTooClose : Rentang suhu Hangat-Sejuk untuk <device(s)> terlalu dekat. Pilih suhu yang rentangnya lebih jauh.
  • relinkRequired : Maaf, sepertinya ada masalah dengan akun Anda. Gunakan Aplikasi Google Home atau Asisten untuk menautkan kembali <device(s)>. Tips: Pastikan server Anda menampilkan kode ini saat token refresh tidak valid secara permanen.
  • remoteSetDisabled :
    • Parameter opsional errorCodeReason
    • currentlyArmed - Maaf, karena keamanan sudah diaktifkan, Anda harus menggunakan <device(s)> atau aplikasi untuk melakukan perubahan apa pun.
    • remoteUnlockNotAllowed - Maaf, saya tidak dapat membuka kunci <perangkat> dari jarak jauh.
    • remoteControlOff - Tindakan tersebut saat ini dinonaktifkan. Aktifkan remote control di <device(s)> lalu coba lagi.
    • childSafetyModeActive - Tindakan itu dinonaktifkan untuk <device(s)> saat mode keselamatan anak sedang aktif.
  • roomsOnDifferentFloors : <device(s)> tidak dapat menjangkau ruangan tersebut karena berada di lantai yang berbeda.
  • safetyShutOff : <device(s)> <is/are> dalam Mode Mati Aman, jadi <it/they> harus disesuaikan secara manual.
  • sceneCannotBeApplied : Maaf, <device(s)> tidak dapat diterapkan. Tips: Periksa kondisi internal adegan pengguna di cloud partner.
  • securityRestriction : <device(s)> <has/have> pembatasan keamanan.
  • softwareUpdateNotAvailable : Maaf, tidak ada update software yang tersedia di <device(s)>.
  • startRequiresTime : Untuk melakukannya, Anda perlu memberi tahu saya berapa lama Anda ingin menjalankan <device(s)>.
  • stillCoolingDown : <device(s)> <is/are> masih mendingin.
  • stillWarmingUp : <device(s)> <is/are> masih dalam proses inisialisasi.
  • streamUnavailable : Maaf, sepertinya streaming dari <device(s)> tidak tersedia saat ini.
  • streamUnplayable : Maaf, saya tidak dapat memutar streaming dari <device(s)> saat ini. Tips: Verifikasi sinyal WebRTC/HLS dan pastikan URL streaming valid.
  • tankEmpty : <device(s)> <has/have> <an empty tank/empty tanks>. Please fill <it/them> and try again.
  • targetAlreadyReached : Maaf, sepertinya suhu yang diminta sama dengan suhu saat ini.
  • timerValueOutOfRange : <device(s)> tidak dapat disetel untuk durasi waktu tersebut.
  • tooManyFailedAttempts : Maaf, terlalu banyak upaya yang gagal. Harap buka aplikasi perangkat Anda untuk menyelesaikan tindakan tersebut.
  • transientError : Maaf, terjadi error saat mengontrol <device(s)>. Coba lagi. Tips: Biasanya, error ini muncul sebagai koneksi ke perangkat atau layanan yang terputus. Juga jika koneksi baru ke server tidak dapat dibuka.
  • turnedOff , deviceTurnedOff : <device(s)> <is/are> off right now.
  • unableToLocateDevice : Saya tidak dapat menemukan <device(s)>. Tips: Periksa konektivitas lokal perangkat (Wi-Fi/Bluetooth).
  • unknownFoodPreset : <device(s)> tidak mendukung preset makanan tersebut.
  • unlockFailure : <device(s)> tidak dapat dibuka kuncinya. Tips: Selidiki gangguan hardware, baterai lemah, atau entri PIN yang tidak valid.
  • unpausableState : <device(s)> tidak dapat dijeda saat ini.
  • userCancelled : ok
  • valueOutOfRange : <device(s)> tidak dapat disetel ke suhu tersebut.

Pelaporan status online dan offline

Saat perangkat offline, Anda harus melaporkan <code{"online": code="" dir="ltr" false}<="" translate="no"> ke Report State dalam waktu lima menit setelah perilaku perangkat. Sebaliknya, saat perangkat kembali ke status online, Anda harus melaporkan <code{"online": code="" dir="ltr" translate="no" true}<=""> ke Report State dalam waktu lima menit setelah perilaku perangkat. Setiap kali perangkat kembali online, partner harus melaporkan semua status perangkat saat ini menggunakan reportStateAndNotification API. Contoh ini menunjukkan bahwa jenis perangkat light sedang online, dan melaporkan semua status perangkat saat ini.
"requestId": "test-request-id",
  "agentUserId": "agent-user-1",
    "payload":{
      "devices": {
        "states": {
          "device-id-1": {
            "brightness": 65,
            "on": true,
            "online": true
          }
          "notifications": {},
        }
      }
    }

Pengecualian

Anda harus menampilkan pengecualian jika ada masalah atau pemberitahuan yang terkait dengan perintah. Perintah dapat berhasil atau gagal.

Jika perintah berhasil (status = "SUCCESS"), laporkan pengecualian menggunakan trait StatusReport (untuk perangkat selain target), atau dengan menampilkan exceptionCode yang sesuai (untuk perangkat target).

Misalnya, jika layar serat pengering penuh, pengguna masih dapat memulai pengering, tetapi Anda mungkin ingin memperingatkan mereka tentang kondisi ini. Demikian pula, saat baterai perangkat hampir habis tetapi tidak kosong, Anda masih dapat menjalankan perintah, tetapi harus memberi tahu pengguna bahwa baterai perangkat hampir habis.

Jika perintah gagal karena pengecualian, statusnya harus "EXCEPTIONS", dan pengecualian harus dilaporkan menggunakan trait StatusReport.

Pengecualian tidak memblokir (BERHASIL) tentang perangkat target

Contoh ini adalah untuk mengunci pintu:

Daya baterai smart lock pintu depan lemah. Mengunci pintu depan.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["device-id-1"],
      "status": "SUCCESS",
      "states": {
        "on": true,
        "online": true,
        "isLocked": true,
        "isJammed": false,
        "exceptionCode": "lowBattery"
      }
    }]
  }
}

Pengecualian non-pemblokiran (BERHASIL) tentang perangkat lain yang menggunakan StatusReport

Contoh ini adalah untuk mengaktifkan sistem keamanan: Oke, mengaktifkan sistem keamanan. Jendela depan terbuka.

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "commands": [{
      "ids": ["device-id-1"],
      "status": "SUCCESS",
      "states": {
        "on": true,
        "online": true,
        "isArmed": true,
        "currentArmLevel": "L2",
        "currentStatusReport": [{
          "blocking": false,
          "deviceTarget": "sensor_id1",
          "priority": 0,
          "statusCode": "deviceOpen"
        }]
      }
    }]
  }
}

Pengecualian pemblokiran tentang perangkat lain yang menggunakan StatusReport

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "devices": {
      "device-id-1": {
        "on": true,
        "online": true,
        "status": "EXCEPTIONS",
        "currentStatusReport": [{
            "blocking": true,
            "deviceTarget": "device-id-1",
            "priority": 0,
            "statusCode": "lowBattery"
          },
          {
            "blocking": true,
            "deviceTarget": "front_window_id",
            "priority": 1,
            "statusCode": "deviceOpen"
          },
          {
            "blocking": true,
            "deviceTarget": "back_window_id",
            "priority": 1,
            "statusCode": "deviceOpen"
          }
        ]
      }
    }
  }
}

Daftar pengecualian

Pengecualian berikut akan menghasilkan TTS terkait di perangkat.

  • bagFull : <device(s)> <has/have> <a full bag/full bags>. Please empty <it/them> and try again.
  • binFull : <device(s)> <has/have> <a full bin/full bins>.
  • carbonMonoxideDetected : Karbon monoksida telah terdeteksi di <nama rumah>.
  • deviceAtExtremeTemperature : <device(s)> <is/are> at <an extreme temperature/extreme temperatures>.
  • deviceJammingDetected : <device(s)> <is/are> jammed.
  • deviceMoved : <device(s)> <was/were> dipindahkan.
  • deviceOpen : <device(s)> <is/are> open.
  • deviceTampered : <device(s)> <has/have> been tampered with.
  • deviceUnplugged : <device(s)> <is/are> unplugged.
  • floorUnreachable : <device(s)> tidak dapat menjangkau ruangan tersebut. Pindahkan <it/them> ke lantai yang benar, lalu coba lagi.
  • hardwareFailure : <device(s)> <has/have> a hardware problem.
  • inSoftwareUpdate : <device(s)> <is/are> currently in a software update.
  • isBypassed : <device(s)> <is/are> currently bypassed.
  • lowBattery : <device(s)> <has/have> low battery.
  • motionDetected : <device(s)> <detect(s)> motion.
  • needsPads : <device(s)> <need(s)> bantalan baru.
  • needsSoftwareUpdate : <device(s)> <need(s)> update software.
  • needsWater : <device(s)> <need(s)> air.
  • networkJammingDetected : koneksi jaringan rumah ke <device(s)> tidak berfungsi dengan benar.
  • noIssuesReported : <device(s)> melaporkan tidak ada masalah.
  • roomsOnDifferentFloors : <device(s)> tidak dapat menjangkau ruangan tersebut karena berada di lantai yang berbeda.
  • runCycleFinished : <device(s)> <has/have> finished running.
  • securityRestriction : <device(s)> <has/have> pembatasan keamanan.
  • smokeDetected : Asap terdeteksi di <house name>.
  • tankEmpty : <device(s)> <has/have> <an empty tank/empty tanks>. Please fill <it/them> and try again.
  • usingCellularBackup : <device(s)> <is/are> menggunakan pencadangan seluler.
  • waterLeakDetected : <device(s)> <detect(s)> kebocoran air.
</code{"online":></code{"online":>