Błędy i wyjątki

W tym dokumencie znajdziesz listę oficjalnie obsługiwanych błędów i wyjątków dotyczących urządzeń inteligentnego domu. Używaj tych kodów błędów i wyjątków w odpowiedzi na intencję lub w powiadomieniach (jeśli zostały przez Ciebie wdrożone), aby Asystent Google informował użytkowników o problemach związanych z danym poleceniem lub stanem urządzenia. Jeśli odpowiedź zawiera nieprawidłowe formatowanie lub errorCode, Asystent Google wyświetla użytkownikom ogólny komunikat o błędzie, np. „Przepraszamy, urządzenie jest teraz niedostępne”.

Błędy

Gdy problem powoduje niepowodzenie żądania wykonania lub zapytania, należy zwrócić kod błędu. Jeśli na przykład zamek drzwi się zaciął i nie można go zamknąć ani otworzyć, użytkownik powinien otrzymać komunikat o błędzie.

Kody błędów można dołączać na poziomie urządzenia lub na poziomie globalnym. Jeśli na przykład użytkownik ma wiele świateł od jednego dostawcy i są one sterowane przez hub, gdy poprosi o wyłączenie wszystkich świateł, dostawca może zwrócić błąd na poziomie urządzenia, jeśli jedno światło jest offline, lub błąd na poziomie globalnym, jeśli cały hub jest offline i nie można sterować żadnym światłem. Jeśli wszystkie urządzenia są offline, nie ma różnicy między błędami na poziomie globalnym a błędami na poziomie urządzenia.

Podsumowanie:

  • Błąd na poziomie globalnym: wszystkie urządzenia w odpowiedzi mają ten sam błąd.
  • Błąd na poziomie lokalnym: odpowiedź mieszana z przypadkami błędów i sukcesów

Błędy na poziomie globalnym

Ten fragment kodu JSON pokazuje, jak zwracać błędy na poziomie globalnym w odpowiedziach QUERY lub EXECUTE.

Przykład błędu na poziomie globalnym deviceOffline spowodowanego tym, że hub jest offline:

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

Przykład błędu na poziomie globalnym inSoftwareUpdate spowodowanego aktualizacją huba:

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

Błędy na poziomie urządzenia

Odpowiedź na zapytanie

Poniższy fragment kodu JSON pokazuje, jak zwracać błędy na poziomie urządzenia w odpowiedzi na zapytanie.

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

Odpowiedź EXECUTE

Poniższy fragment kodu JSON pokazuje, jak zwrócić błędy na poziomie urządzenia w odpowiedzi 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
        }
      }
    ]
  }
}

Powiadomienia z błędami

Aktywne powiadomienie

Ten fragment kodu JSON pokazuje, jak zgłaszać błędy na poziomie urządzenia w powiadomieniu proaktywnym.

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

Odpowiedź uzupełniająca

Poniższy fragment kodu JSON pokazuje, jak zgłaszać błędy na poziomie urządzenia w odpowiedzi uzupełniającej.

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

Lista błędów

Poniższe błędy spowodują odtworzenie na urządzeniu powiązanego komunikatu TTS.

  • aboveMaximumLightEffectsDuration : To przekracza maksymalny czas trwania wynoszący godzinę. Spróbuj ponownie.
  • aboveMaximumTimerDuration : Mogę ustawić <device(s)> na maksymalnie <time period>
  • actionNotAvailable : Nie mogę tego teraz zrobić.
  • actionUnavailableWhileRunning : <device(s)> <is/are> currently running, so I can't make any changes.
  • alreadyArmed : Urządzenie(-a) <is/are> już uzbrojone.
  • alreadyAtMax : <device(s)> <is/are> already set to the maximum temperature.
  • alreadyAtMin : <device(s)> <is/are> already set to the minimum temperature.
  • alreadyClosed : Urządzenie(-a) <is/are> już zamknięte.
  • alreadyDisarmed : Urządzenie(-a) <is/are> już rozbrojone.
  • alreadyDocked : <device(s)> <is/are> already docked.
  • alreadyInState : <device(s)> <is/are> already in that state.
  • alreadyLocked : <device(s)> <is/are> already locked.
  • alreadyOff : <device(s)> <is/are> already off.
  • alreadyOn : <device(s)> <is/are> already on.
  • alreadyOpen : <device(s)> <is/are> already open.
  • alreadyPaused : Urządzenie(-a) <is/are> już wstrzymane.
  • alreadyStarted : <device(s)> <is/are> already started.
  • alreadyStopped : <device(s)> <is/are> already stopped.
  • alreadyUnlocked : Urządzenie(-a) <is/are> już odblokowane.
  • ambiguousZoneName : Przepraszam, ale <device(s)> nie może rozpoznać strefy, o którą Ci chodzi. Sprawdź, czy strefy mają unikalne nazwy, i spróbuj jeszcze raz.
  • amountAboveLimit : To więcej, niż urządzenie <device(s)> jest w stanie obsłużyć.
  • appLaunchFailed : Nie udało się uruchomić aplikacji <app name> na urządzeniu <device(s)>.
  • armFailure : Nie udało się włączyć <urządzeń>.
  • armLevelNeeded : Nie mam pewności, na jaki tryb ustawić <device(s)>. Spróbuj powiedzieć „Ustaw <urządzenia> na <niski poziom bezpieczeństwa>” lub „Ustaw <urządzenia> na <wysoki poziom bezpieczeństwa>”.
  • authFailure : Nie mogę się połączyć z <device(s)>. Sprawdź w aplikacji, czy <device/devices> <is/are> w pełni skonfigurowane.
  • bagFull : <device(s)> <has/have> <a full bag/full bags>. Please empty <it/them> and try again.
  • belowMinimumLightEffectsDuration : To krócej niż minimalny czas trwania wynoszący 5 minut. Spróbuj ponownie.
  • belowMinimumTimerDuration : Nie mogę ustawić <device(s)> na tak krótki czas. Spróbuj ponownie.
  • binFull : <device(s)> <has/have> <a full bin/full bins>.
  • cancelArmingRestricted : Nie udało mi się anulować uzbrajania <device(s)>.
  • cancelTooLate : Już za późno na anulowanie. Użyj <device(s)> lub aplikacji.
  • channelSwitchFailed : Nie udało mi się zmienić kanału na <channel name>. Spróbuj ponownie później.
  • chargerIssue : Wygląda na to, że <device(s)> <has/have> <a charger issue/charger issues>.
  • commandInsertFailed : Nie udało się przetworzyć poleceń dla <device(s)>.
  • deadBattery : <device(s)> <has/have> <a dead battery/dead batteries>.
  • degreesOutOfRange : Żądane ustawienie w stopniach nie mieści się w zakresie w przypadku <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 : Wygląda na to, że <device(s)> robi w tej chwili coś innego.
  • deviceCharging : Wygląda na to, że to niemożliwe, bo <device(s)> się ładuje.
  • deviceClogged : Wygląda na to, że <device(s)> jest zapchane.
  • deviceCurrentlyDispensing : Urządzenie<device(s)> właśnie coś wydaje.
  • deviceDoorOpen : Drzwiczki urządzenia <device(s)> są otwarte. Zamknij je i spróbuj ponownie.
  • deviceHandleClosed : Uchwyt jest zamknięty na urządzeniu <device(s)>. Otwórz go i spróbuj ponownie.
  • deviceJammingDetected : <device(s)> <is/are> jammed.
  • deviceLidOpen : Pokrywa na urządzeniu <device(s)> jest otwarta. Zamknij ją i spróbuj ponownie.
  • deviceNeedsRepair : <device(s)> <need(s)> to be repaired. Skontaktuj się z lokalnym serwisem.
  • deviceNotDocked : Wygląda na to, że urządzenie <device(s)> <isn't/aren't> zadokowane. Umieść <je/go> w stacji i spróbuj ponownie.
  • deviceNotFound : Urządzenia <device(s)> <is/are> niedostępne. Spróbuj jeszcze raz skonfigurować <to urządzenie/te urządzenia>.
  • deviceNotMounted : Wygląda na to, że <device(s)> nie może tego zrobić, bo <it/they> <is/are>n't zamontowane.
  • deviceNotReady : Urządzenie(-a) <is/are>n't ready.
  • deviceStuck : <device(s)> <is/are> stuck and needs your help.
  • deviceTampered : <device(s)> <has/have> been tampered with.
  • deviceThermalShutdown : Wygląda na to, że <device(s)> zostały wyłączone z powodu skrajnej temperatury.
  • directResponseOnlyUnreachable : Urządzenie(-a) <nie obsługuje/nie obsługują> zdalnego sterowania.
  • disarmFailure : Nie udało się rozbroić <urządzeń>.
  • discreteOnlyOpenClose : Przepraszam, <device(s)> można tylko całkowicie zamknąć lub otworzyć.
  • dispenseAmountAboveLimit : <device(s)> nie może wydać tak dużo.
  • dispenseAmountBelowLimit : <device(s)> nie może wydać tak mało.
  • dispenseAmountRemainingExceeded : Urządzenie <device(s)> nie ma wystarczającej ilości <dispense item>, aby to zrobić.
  • dispenseFractionalAmountNotSupported : <device(s)> nie może wydawać ułamków <dispense item>.
  • dispenseFractionalUnitNotSupported : Urządzenie <device(s)> nie obsługuje ułamkowych części tej jednostki miary <dispense item>.
  • dispenseUnitNotSupported : Urządzenie <device(s)> nie obsługuje tej jednostki dla <dispense item>.
  • doorClosedTooLong : Drzwi urządzenia <device(s)> od dłuższego czasu są zamknięte. Otwórz je i sprawdź, czy coś jest w środku, a potem spróbuj jeszcze raz.
  • 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 : Urządzenia <device(s)> nie mogą dostać się do tego pomieszczenia. Przenieś <it/them> na właściwe piętro i spróbuj ponownie.
  • functionNotSupported : Urządzenie <device(s)> <nie obsługuje/nie obsługują> tej funkcji.
  • genericDispenseNotSupported : Muszę wiedzieć, co chcesz wydać. Spróbuj jeszcze raz, podając nazwę produktu.
  • hardError : Coś poszło nie tak i nie mogę sterować urządzeniem domowym.
  • hardError : Coś poszło nie tak i nie mogę sterować urządzeniem domowym.
  • inAutoMode : <device(s)> <is/are> currently set to auto mode. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • inAwayMode : <device(s)> <is/are> currently set to away mode. Aby sterować termostatem, musisz ręcznie przełączyć go na tryb domowy, używając aplikacji Nest na telefonie, tablecie lub komputerze.
  • inDryMode : <device(s)> <is/are> currently set to dry mode. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • inEcoMode : <device(s)> <is/are> currently set to eco mode. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • inFanOnlyMode : <device(s)> <is/are> currently set to fan-only mode. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • inHeatOrCool : <device(s)> <is/are>n't in heat/cool mode.
  • inHumidifierMode : <device(s)> <is/are> currently set to humidifier mode. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • 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. Żeby zmienić temperaturę, musisz przełączyć <it/them> w inny tryb.
  • inSleepMode : <device(s)> <is/are> in sleep mode. Spróbuj ponownie później.
  • inSoftwareUpdate : <device(s)> <is/are> currently in a software update.
  • lockFailure : Nie udało się zablokować <device(s)>.
  • lockedState : <device(s)> <is/are> currently locked.
  • lockedToRange : Ta temperatura jest poza zakresem urządzenia <device(s)>.
  • lowBattery : <device(s)> <has/have> low battery.
  • maxSettingReached : Urządzenie(-a) <is/are> już ustawione na najwyższym poziomie.
  • maxSpeedReached : <device(s)> <is/are> already set to the maximum speed.
  • minSettingReached : <device(s)> <is/are> already set to the lowest setting.
  • 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 : Wygląda na to, że w urządzeniu <device(s)> brakuje wymaganego elementu. Zamontuj go i spróbuj jeszcze raz.
  • needsBin : Wygląda na to, że w <device(s)> <is/are> nie ma pojemnika. Zamontuj go i spróbuj jeszcze raz.
  • needsPads : <device(s)> <need(s)> nowe nakładki.
  • needsSoftwareUpdate : <device(s)> <need(s)> a software update.
  • needsWater : <device(s)> <need(s)> water.
  • networkProfileNotRecognized : Nie rozpoznaję „<network profile>” na urządzeniu <device(s)>.
  • networkSpeedTestInProgress : Już testuję <network> <speed/speeds>.
  • noAvailableApp : Przepraszamy, aplikacja <app name> jest niedostępna.
  • noAvailableChannel : Wygląda na to, że kanał <channel name> jest niedostępny.
  • noChannelSubscription : Obecnie nie subskrybujesz kanału <channel name>.
  • noTimerExists : Wygląda na to, że na urządzeniu <device(s)> nie ma ustawionych żadnych minutników.
  • notSupported : Ten tryb nie jest dostępny na urządzeniach <device(s)>.
  • obstructionDetected : <device(s)> wykryto przeszkodę.
  • offline , deviceOffline : Wygląda na to, że <device(s)> <is/are> w tej chwili niedostępne.
  • onRequiresMode : Określ, który tryb chcesz włączyć.
  • passphraseIncorrect : Wygląda na to, że ten kod PIN jest nieprawidłowy.
  • percentOutOfRange : Nie mogę ustawić <device(s)> na <percent>.
  • pinIncorrect : (passphraseIncorrect)
  • rainDetected : Nie otworzyłem urządzenia <device(s)>, ponieważ wykryto deszcz.
  • rangeTooClose : Różnica między tymi wartościami jest zbyt mała dla trybu naprzemiennego grzania i chłodzenia w przypadku urządzenia <device(s)>. Wybierz bardziej skrajne temperatury.
  • relinkRequired : Wygląda na to, że coś jest nie tak z Twoim kontem. Użyj aplikacji Asystent lub Google Home, aby ponownie połączyć <device(s)>.
  • remoteSetDisabled :
    • Parametr opcjonalny errorCodeReason
    • currentlyArmed - Alarm jest już włączony, więc zmiany możesz wprowadzić tylko za pomocą <device(s)> lub aplikacji.
    • remoteUnlockNotAllowed – Nie mogę zdalnie odblokować urządzenia <device(s)>.
    • remoteControlOff – to działanie jest obecnie wyłączone. Włącz pilota na urządzeniach <device(s)> i spróbuj jeszcze raz.
    • childSafetyModeActive – Nie można wykonać tej czynności w przypadku <device(s)>, gdy włączony jest tryb bezpieczeństwa dzieci.
  • roomsOnDifferentFloors : <device(s)> nie może dostać się do tych pomieszczeń, bo są one na innych piętrach.
  • safetyShutOff : <device(s)> <is/are> in Safety Shut-Off Mode, so <it/they>'ll have to be adjusted by hand.
  • sceneCannotBeApplied : Przepraszamy, nie można zastosować <device(s)>.
  • securityRestriction : <device(s)> <has/have> a security restriction.
  • softwareUpdateNotAvailable : Przepraszamy, ale na urządzeniach <device(s)> nie jest dostępna aktualizacja oprogramowania.
  • startRequiresTime : Aby to zrobić, musisz mi powiedzieć, na jak długo chcesz włączyć <device(s)>.
  • stillCoolingDown : <device(s)> <is/are> still cooling down.
  • stillWarmingUp : <device(s)> <is/are> still warming up.
  • streamUnavailable : Wygląda na to, że strumieniowe przesyłanie danych z <device(s)> jest obecnie niedostępne.
  • streamUnplayable : Nie mogę teraz strumieniowo przesyłać danych z urządzeń <device(s)>.
  • tankEmpty : <device(s)> <has/have> <an empty tank/empty tanks>. Please fill <it/them> and try again.
  • targetAlreadyReached : Zdaje się, że to jest aktualna temperatura.
  • timerValueOutOfRange : Nie można ustawić <device(s)> na taki czas.
  • tooManyFailedAttempts : Przepraszamy, zbyt wiele nieudanych prób. Otwórz aplikację na urządzeniu, aby dokończyć tę czynność.
  • transientError : Podczas sterowania <device(s)> coś poszło nie tak. Spróbuj jeszcze raz.
  • turnedOff , deviceTurnedOff : <device(s)> <is/are> off right now.
  • unableToLocateDevice : Nie udało mi się zlokalizować <device(s)>.
  • unknownFoodPreset : <device(s)> doesn't support that food preset.
  • unlockFailure : Nie udało się odblokować <device(s)>.
  • unpausableState : Nie można wstrzymać działania urządzenia.
  • userCancelled : ok
  • valueOutOfRange : Nie można ustawić urządzenia(-ń) <device(s)> na taką temperaturę.

Raportowanie stanu online i offline

Gdy urządzenie jest offline, w ciągu 5 minut od jego działania należy zgłosić <code{"online": code="" dir="ltr" false}<="" translate="no"> do Report State. Z kolei, gdy urządzenie wróci do stanu online, w ciągu 5 minut od zmiany jego stanu należy zgłosić <code{"online": code="" dir="ltr" translate="no" true}<=""> do Report State. Gdy urządzenie wróci do trybu online, partner powinien zgłosić wszystkie bieżące stany urządzenia za pomocą interfejsu reportStateAndNotification API. Ten przykład pokazuje, że light urządzenie jest online i zgłasza wszystkie bieżące stany urządzenia.
"requestId": "test-request-id",
  "agentUserId": "agent-user-1",
    "payload":{
      "devices": {
        "states": {
          "device-id-1": {
            "brightness": 65,
            "on": true,
            "online": true
          }
          "notifications": {},
        }
      }
    }

Wyjątki

W przypadku problemu lub alertu związanego z poleceniem należy zwrócić wyjątek. Polecenie może się powieść lub nie.

Jeśli polecenie zostało wykonane (status = „SUCCESS”), zgłoś wyjątki za pomocą cechy StatusReport (w przypadku urządzeń innych niż docelowe) lub zwracając odpowiedni exceptionCode (w przypadku urządzenia docelowego).

Jeśli na przykład filtr suszarki jest pełny, użytkownik nadal może ją włączyć, ale warto go o tym poinformować. Podobnie, gdy urządzenie ma niski poziom naładowania baterii, ale nie jest ona pusta, nadal możesz wykonać polecenie, ale powinieneś poinformować użytkownika, że bateria urządzenia jest słaba.

Jeśli polecenie nie powiedzie się z powodu wyjątków, stan powinien mieć wartość „EXCEPTIONS”, a wyjątki powinny być zgłaszane za pomocą cechy StatusReport.

Wyjątek nieblokujący (SUCCESS) dotyczący urządzenia docelowego

Ten przykład dotyczy zamykania drzwi:

Zamek w drzwiach wejściowych ma słabą baterię. Zamykam zamek w drzwiach wejściowych.

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

Wyjątek nieblokujący (SUCCESS) dotyczący innego urządzenia korzystającego z StatusReport

Ten przykład dotyczy włączania systemu alarmowego: OK, włączam system alarmowy. Przednie okno jest otwarte.

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

Wyjątek blokujący dotyczący innego urządzenia korzystającego z 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"
          }
        ]
      }
    }
  }
}

Lista wyjątków

W przypadku tych wyjątków na urządzeniu zostanie odtworzona odpowiednia mowa.

  • 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 : W <house name> wykryto tlenek węgla.
  • deviceAtExtremeTemperature : <device(s)> <is/are> at <an extreme temperature/extreme temperatures>.
  • deviceJammingDetected : <device(s)> <is/are> jammed.
  • deviceMoved : <device(s)> <was/were> moved.
  • deviceOpen : <device(s)> <is/are> open.
  • deviceTampered : <device(s)> <has/have> been tampered with.
  • deviceUnplugged : <device(s)> <is/are> unplugged.
  • floorUnreachable : Urządzenia <device(s)> nie mogą dostać się do tego pomieszczenia. Przenieś <it/them> na właściwe piętro i spróbuj ponownie.
  • 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)> nowe nakładki.
  • needsSoftwareUpdate : <device(s)> <need(s)> a software update.
  • needsWater : <device(s)> <need(s)> water.
  • networkJammingDetected : połączenie z <device(s)> w sieci domowej nie działa prawidłowo.
  • noIssuesReported : <device(s)> nie zgłosiło żadnych problemów.
  • roomsOnDifferentFloors : <device(s)> nie może dostać się do tych pomieszczeń, bo są one na innych piętrach.
  • runCycleFinished : <device(s)> <has/have> finished running.
  • securityRestriction : <device(s)> <has/have> a security restriction.
  • smokeDetected : W <house name> wykryto dym.
  • tankEmpty : <device(s)> <has/have> <an empty tank/empty tanks>. Please fill <it/them> and try again.
  • usingCellularBackup : <device(s)> <is/are> using cellular backup.
  • waterLeakDetected : <device(s)> <detect(s)> wyciek wody.
</code{"online":></code{"online":>