במאמר הזה מפורטות השגיאות והחריגים שנתמכים באופן רשמי במכשירי בית חכם. מומלץ להשתמש בקודי השגיאות והחריגים האלה בתגובה של הכוונה או בהתראות (אם הטמעתם אותן), כדי ש-Google Assistant תתריע בפני משתמשי הקצה על בעיות שקשורות לפקודה או למצב מכשיר מסוימים. אם התשובה מכילה עיצוב שגוי או errorCode
, Google Assistant מציגה למשתמשים הודעת שגיאה כללית, לדוגמה: "מצטער, המכשיר לא זמין כרגע".
שגיאות
צריך להחזיר קוד שגיאה כשבעיה גורמת לכך שבקשת ביצוע או בקשת שאילתה נכשלות. לדוגמה, אם מנעול הדלת נתקע ואי אפשר לנעול או לפתוח אותו, צריך להחזיר למשתמש שגיאה לגבי המצב הזה.
אפשר לצרף קודי שגיאה ברמת המכשיר או ברמה הגלובלית. לדוגמה, אם למשתמש יש הרבה נורות מספק אחד והן נשלטות על ידי רכזת, כשהמשתמש מבקש לכבות את כל הנורות, הספק עשוי להחזיר שגיאה ברמת המכשיר אם נורה אחת במצב אופליין, או שגיאה ברמה הגלובלית אם הרכזת כולה במצב אופליין ולא ניתן לשלוט באף נורה. אם כל המכשירים במצב אופליין, אין הבדל בין שימוש בשגיאות ברמה הגלובלית לבין שימוש בשגיאות ברמת המכשיר.
לסיכום:
- שגיאה ברמה הגלובלית: לכל המכשירים בתגובה יש את אותה שגיאה
- שגיאה ברמה המקומית: תגובה מעורבת עם מקרים של שגיאה והצלחה
שגיאות ברמה הגלובלית
קטע ה-JSON הבא מראה איך מחזירים שגיאות ברמה הגלובלית בתגובה של QUERY או EXECUTE.
דוגמה לשגיאה ברמה הגלובלית deviceOffline
בגלל שהמרכז לא מקוון:
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "deviceOffline", "status" : "ERROR" } }
דוגמה לשגיאה ברמה הגלובלית inSoftwareUpdate
בגלל עדכון של המרכז:
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "errorCode": "inSoftwareUpdate", "status" : "ERROR" } }
שגיאות ברמת המכשיר
תשובה של QUERY
קטע ה-JSON הבא מראה איך מחזירים שגיאות ברמת המכשיר בתגובת QUERY.
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": { "device-id-1": { "errorCode": "deviceOffline", "status" : "ERROR" }, "device-id-2": { "errorCode": "deviceOffline", "status" : "ERROR" } } } }
תגובת EXECUTE
קטע ה-JSON הבא מראה איך מחזירים שגיאות ברמת המכשיר בתגובת 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 } } ] } }
התראות עם שגיאות
התראה יזומה
קטע ה-JSON הבא מראה איך מדווחים על שגיאות ברמת המכשיר בהתראה יזומה.
{ "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" } } } } } }
תשובת המשך
קטע ה-JSON הבא מראה איך מדווחים על שגיאות ברמת המכשיר בתגובה למעקב.
{ "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" } } } } } } }
רשימת שגיאות
השגיאות הבאות יגרמו להשמעת ה-TTS המשויך במכשיר.
- aboveMaximumLightEffectsDuration : המשך ארוך יותר מהמשך המקסימלי של שעה אחת. אפשר לנסות שוב.
- aboveMaximumTimerDuration : אני יכול להגדיר את <device(s)> למשך <time period> בלבד
- actionNotAvailable : מצטער, נראה שאי אפשר לבצע את הפעולה הזו כרגע.
- actionUnavailableWhileRunning : המכשיר/ים <device(s)> פועל/ים כרגע, ולכן אין לי אפשרות לבצע שינויים.
- alreadyArmed : <device(s)> <is/are> already armed.
- alreadyAtMax : המכשיר/ים <is/are> כבר מוגדר/ים לטמפרטורה המקסימלית.
- alreadyAtMin : המכשיר או המכשירים כבר מוגדרים לטמפרטורה המינימלית.
- alreadyClosed : המכשיר/ים <is/are> כבר סגור/ים.
- alreadyDisarmed : <device(s)> <is/are> already disarmed.
- alreadyDocked : <device(s)> <is/are> already docked.
- alreadyInState : המכשיר או המכשירים כבר במצב הזה.
- alreadyLocked : המכשיר/ים כבר נעולים.
- alreadyOff : <device(s)> <is/are> already off.
- alreadyOn : <device(s)> <is/are> already on.
- alreadyOpen : המכשיר/ים <is/are> כבר פתוח/ים.
- alreadyPaused : המכשיר/ים <is/are> כבר בהשהיה.
- alreadyStarted : המכשיר או המכשירים <is/are> כבר הופעלו.
- alreadyStopped : <device(s)> <is/are> already stopped.
- alreadyUnlocked : המכשיר או המכשירים כבר לא נעולים.
- ambiguousZoneName : מצטערים, <device(s)> לא יכול לזהות לאיזה אזור התכוונת. צריך לוודא שלאזורים יש שמות ייחודיים ולנסות שוב.
- amountAboveLimit : הסכום הזה גבוה מהסכום שמכשיר(ים) יכולים לתמוך בו.
- appLaunchFailed : מצטערים, לא הצלחנו להפעיל את <שם האפליקציה> ב <מכשיר(ים)>.
- armFailure : לא ניתן להפעיל את <device(s)>.
- armLevelNeeded : I'm not sure which level to set <device(s)> to. אפשר לומר "Set <device(s)> to <low security>" או "Set <device(s)> to <high security>"
- authFailure : לא הצלחתי ליצור קשר עם <device(s)>. כדאי לבדוק באפליקציה ש<device/devices> <is/are> מוגדרים באופן מלא.
- bagFull : למכשיר/ים <יש/ישנם> <שק מלא/שקים מלאים>. צריך לרוקן <אותו/אותם> ולנסות שוב.
- belowMinimumLightEffectsDuration : האורך הזה קצר מהאורך המינימלי של 5 דקות. אפשר לנסות שוב.
- belowMinimumTimerDuration : I can't set <device(s)> for such a short time. אפשר לנסות שוב.
- binFull : <device(s)> <has/have> <a full bin/full bins>.
- cancelArmingRestricted : סליחה, לא הצלחתי לבטל את הפעלת האזעקה ב<device(s)>.
- cancelTooLate : מצטערים, כבר מאוחר מדי לבטל. במקום זאת, אפשר להשתמש ב-<device(s)> או באפליקציה.
- channelSwitchFailed : מצטערים, המעבר לערוץ <channel name> נכשל. אפשר לנסות שוב מאוחר יותר.
- chargerIssue : מצטער, נראה שלמכשיר <device(s)> יש <a charger issue/charger issues>.
- commandInsertFailed : לא ניתן לעבד פקודות עבור <device(s)>.
- deadBattery : <device(s)> <has/have> <a dead battery/dead batteries>.
- degreesOutOfRange : המעלות המבוקשות חורגות מהטווח עבור <device(s)>.
- deviceAlertNeedsAssistance : למכשיר/ים <device(s)> יש התראה פעילה ו<need(s)> את העזרה שלך.
- deviceAtExtremeTemperature : <device(s)> <is/are> at <an extreme temperature/extreme temperatures>.
- deviceBusy : מצטער, נראה שהמכשיר <device(s)> כבר מבצע פעולה כלשהי כרגע.
- deviceCharging : מצטער, נראה שמכשיר/ים <device(s)> לא יכול/ים לעשות את זה כי (ha_shared.ItsTheyre size=$item.devices.total_device_count) בטעינה.
- deviceClogged : מצטערים, נראה שהמכשיר או המכשירים <device(s)> עמוסים מדי.
- deviceCurrentlyDispensing : <device(s)> is already dispensing something right now.
- deviceDoorOpen : הדלת פתוחה ב <device(s)>. צריך לסגור אותה ולנסות שוב.
- deviceHandleClosed : הידית סגורה ב-<device(s)>. צריך לפתוח אותה ולנסות שוב.
- deviceJammingDetected : <device(s)> <is/are> jammed.
- deviceLidOpen : המכסה פתוח ב <device(s)>. צריך לסגור אותו ולנסות שוב.
- deviceNeedsRepair : צריך לתקן את <המכשיר/ים>. צריך לפנות לסוכנות השירות המקומית.
- deviceNotDocked : מצטער, נראה שהמכשיר/ים <device(s)> לא מחובר/ים למעמד. צריך להניח את <it/them> באביזר העגינה ולנסות שוב.
- deviceNotFound : המכשיר/ים <is/are>n't זמין/ים. אולי כדאי לנסות להגדיר <אותו/אותם> שוב.
- deviceNotMounted : מצטער, נראה שאי אפשר לעשות את זה עם <device(s)> כי <it/they> <is/are>n't mounted.
- deviceNotReady : המכשיר או המכשירים לא מוכנים.
- deviceStuck : המכשיר/ים <device(s)> נתקע/ו וזקוק/ים לעזרה שלך.
- deviceTampered : מישהו חיבל ב<device(s)>.
- deviceThermalShutdown : מצטערים, נראה ש <device(s)> נסגרו בגלל טמפרטורות קיצוניות.
- directResponseOnlyUnreachable : המכשיר/ים <doesn't/don't> תומך/ים בשלט רחוק.
- disarmFailure : לא ניתן להשבית את <device(s)>.
- discreteOnlyOpenClose : מצטער, אפשר רק לפתוח או לסגור את <device(s)> עד הסוף.
- dispenseAmountAboveLimit : אי אפשר להוציא כמות גדולה כזו מ<device(s)>.
- dispenseAmountBelowLimit : לא ניתן להוציא כמות קטנה כזו באמצעות <device(s)>.
- dispenseAmountRemainingExceeded : למכשיר(ים) <device(s)> אין מספיק <dispense item> כדי לבצע את הפעולה הזו.
- dispenseFractionalAmountNotSupported : לא ניתן להוציא שברים של <dispense item> במכשיר(ים) <device(s)>.
- dispenseFractionalUnitNotSupported : המכשיר <device(s)> לא תומך בשברים של היחידה הזו עבור <dispense item>.
- dispenseUnitNotSupported : המכשיר או המכשירים <device(s)> לא תומכים ביחידה הזו של <dispense item>.
- doorClosedTooLong : עבר זמן רב מאז שהדלת של <device(s)> נפתחה. עליך לפתוח את הדלת, לוודא שיש משהו בפנים ולנסות שוב.
- emergencyHeatOn : המכשיר/ים <is/are> במצב חימום חירום, ולכן צריך לכוון אותו/אותם באופן ידני.
- faultyBattery : <device(s)> <has/have> <a faulty battery/faulty batteries>.
- floorUnreachable : לא ניתן להגיע לחדר הזה באמצעות <device(s)>. צריך להעביר את <המכשיר/המכשירים> לקומה המתאימה ולנסות שוב.
- functionNotSupported : למעשה, המכשיר/ים <device(s)> לא תומך/ים בפונקציונליות הזו.
- genericDispenseNotSupported : אני צריך לדעת מה ברצונך להנפיק. צריך לנסות שוב עם שם הפריט.
- hardError : מצטער, משהו השתבש ואין לי אפשרות לשלוט במכשיר הביתי שלך.
- hardError : מצטער, משהו השתבש ואין לי אפשרות לשלוט במכשיר הביתי שלך.
- inAutoMode : <device(s)> <is/are> currently set to auto mode. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inAwayMode : המכשיר/ים <is/are> currently set to away mode. כדי לשלוט בתרמוסטט, צריך לעבור למצב 'בבית' באופן ידני באמצעות אפליקציית Nest בטלפון, בטאבלט או במחשב.
- inDryMode : המכשיר/ים <is/are> מוגדר/ים כרגע למצב ייבוש. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inEcoMode : <device(s)> <is/are> currently set to eco mode. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inFanOnlyMode : <device(s)> <is/are> currently set to fan-only mode. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inHeatOrCool : <device(s)> <is/are>n't in heat/cool mode.
- inHumidifierMode : המכשיר/ים נמצא/ים כרגע במצב של מכשיר אדים. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inOffMode : המכשיר/ים <is/are> כבוי/ים כרגע. כדי לשנות את הטמפרטורה, צריך להעביר <it/them> למצב אחר.
- inPurifierMode : המכשיר/ים <is/are> מוגדר כרגע למצב מטהר. כדי לשנות את הטמפרטורה, צריך להעביר את המזגן למצב אחר.
- inSleepMode : <device(s)> <is/are> in sleep mode. אפשר לנסות שוב מאוחר יותר.
- inSoftwareUpdate : המכשיר או המכשירים <device(s)> נמצאים כרגע בתהליך של עדכון תוכנה.
- lockFailure : לא ניתן לנעול את <device(s)>.
- lockedState : המכשיר/ים <device(s)> נעול/ים כרגע.
- lockedToRange : הטמפרטורה הזו לא בטווח הנעול ב <device(s)>.
- lowBattery : <device(s)> <has/have> low battery.
- maxSettingReached : המכשיר או המכשירים כבר מוגדרים להגדרה הכי גבוהה.
- maxSpeedReached : המכשיר או המכשירים כבר מוגדרים למהירות המקסימלית.
- minSettingReached : המכשיר או המכשירים כבר מוגדרים להגדרה הנמוכה ביותר.
- minSpeedReached : המכשיר/ים <device(s)> כבר מוגדרים למהירות המינימלית.
- monitoringServiceConnectionLost : החיבור של <device(s)> לשירות המעקב אבד.
- needsAttachment : מצטערים, נראה שלמכשיר/ים <device(s)> חסר קובץ מצורף נדרש. צריך לחבר אותו ולנסות שוב.
- needsBin : מצטער, נראה שחסר מיכל ל <device(s)> <is/are>. צריך לחבר אותו ולנסות שוב.
- needsPads : <device(s)> <need(s)> new pads.
- needsSoftwareUpdate : <device(s)> <need(s)> a software update.
- needsWater : <device(s)> <need(s)> water.
- networkProfileNotRecognized : סליחה, לא זיהיתי את "<network profile>" ב<device(s)>.
- networkSpeedTestInProgress : I'm already testing the <network> <speed/speeds>>.
- noAvailableApp : מצטערים, נראה שהאפליקציה <app name> לא זמינה.
- noAvailableChannel : מצטערים, נראה שהערוץ <channel name> לא זמין.
- noChannelSubscription : מצטערים, אין לך מינוי לערוץ <שם הערוץ> כרגע.
- noTimerExists : מצטער, נראה שלא מוגדרים טיימרים ב<device(s)>.
- notSupported : מצטערים, המצב הזה לא זמין במכשיר <device(s)>.
- obstructionDetected : <device(s)> detected an obstruction.
- offline , deviceOffline : מצטערים, נראה שהמכשיר/ים <device(s)> <is/are> לא זמין/ים כרגע.
- onRequiresMode : Please specify which mode you want to turn on.
- passphraseIncorrect : מצטערים, נראה שקוד האימות שגוי.
- percentOutOfRange : מצטער, אין לי אפשרות להגדיר את <device(s)> לערך <percent>.
- pinIncorrect : (passphraseIncorrect)
- rainDetected : לא פתחתי את <device(s)> כי זוהה גשם.
- rangeTooClose : הטמפרטורות קרובות מדי לטווח חימום וקירור של <device(s)>. צריך לבחור טמפרטורות עם הפרש גדול יותר.
- relinkRequired : מצטערים, נראה שמשהו השתבש בחשבון שלך. עליך להשתמש באפליקציית Google Home או Assistant כדי לקשר מחדש את [שם המכשיר או המכשירים]
-
remoteSetDisabled
:
- פרמטר אופציונלי
errorCodeReason
-
currentlyArmed
– מצטערים, מכיוון שהאבטחה כבר מופעלת, צריך להשתמש ב <device(s)> או באפליקציה כדי לבצע שינויים. -
remoteUnlockNotAllowed
– סליחה, אין לי אפשרות לבטל את הנעילה של <device(s)> מרחוק. -
remoteControlOff
– הפעולה הזו מושבתת כרגע. צריך להפעיל את השלט הרחוק ב <device(s)> ולנסות שוב. -
childSafetyModeActive
– הפעולה הזו מושבתת ב <device(s)> בזמן שמצב בטוח לילדים פעיל.
- פרמטר אופציונלי
- roomsOnDifferentFloors : למכשיר/ים <device(s)> אין גישה לחדרים האלה כי הם נמצאים בקומות שונות.
- safetyShutOff : המכשיר/ים <is/are> במצב השבתה בטיחותית, ולכן צריך לבצע התאמות באופן ידני.
- sceneCannotBeApplied : מצטערים, אי אפשר להפעיל את התרחיש <device(s)>.
- securityRestriction : <device(s)> <has/have> a security restriction.
- softwareUpdateNotAvailable : מצטערים, אין עדכון תוכנה זמין ב<device(s)>.
- startRequiresTime : כדי לעשות את זה, צריך להגיד לי לכמה זמן רוצים להפעיל את <device(s)>.
- stillCoolingDown : <device(s)> <is/are> still cooling down.
- stillWarmingUp : <device(s)> <is/are> still warming up.
- streamUnavailable : מצטערים, נראה שהסטרימינג לא זמין כרגע במכשיר או במכשירים <device(s)>.
- streamUnplayable : מצטער, אין לי אפשרות להפעיל את הסטרימינג מ<device(s)> כרגע.
- tankEmpty : למכשיר/ים<device(s)> <has/have> <an empty tank/empty tanks>. צריך למלא <it/them> ולנסות שוב.
- targetAlreadyReached : מצטער, נראה שזאת כבר הטמפרטורה הנוכחית.
- timerValueOutOfRange : לא ניתן להגדיר את משך הזמן הזה עבור <device(s)>.
- tooManyFailedAttempts : מצטערים, היו יותר מדי ניסיונות כושלים. כדי להשלים את הפעולה הזו, צריך לעבור לאפליקציה במכשיר.
- transientError : מצטערים, משהו השתבש בשליטה ב <device(s)>. כדאי לנסות שוב.
- turnedOff , deviceTurnedOff : המכשיר/ים כבוי/ים כרגע.
- unableToLocateDevice : לא הצלחתי לאתר את <device(s)>.
- unknownFoodPreset : המכשיר(ים) לא תומך(ים) בהגדרת הטמפרטורה המוגדרת מראש של המזון.
- unlockFailure : לא ניתן לבטל את הנעילה של <device(s)>.
- unpausableState : לא ניתן להשהות את <device(s)> כרגע.
- userCancelled : ok
- valueOutOfRange : אי אפשר להגדיר את הטמפרטורה הזו ב<device(s)>.
דיווח על מצב אונליין ואופליין
כשמכשיר נמצא במצב אופליין, צריך לדווח על <code{"online": code="" dir="ltr" false}<="" translate="no"> אל Report State תוך חמש דקות מההתנהגות של המכשיר. לעומת זאת, כשמכשיר חוזר למצב אונליין, צריך לשלוח את הערך <code{"online": code="" dir="ltr" translate="no" true}<=""> אל Report State תוך חמש דקות מההתנהגות של המכשיר. בכל פעם שמכשיר חוזר למצב אונליין, השותף צריך לדווח על כל מצבי המכשיר הנוכחיים באמצעותreportStateAndNotification
API.
בדוגמה הזו אפשר לראות שסוג המכשיר light
מחובר לאינטרנט, ומוצגים כל מצבי המכשיר הנוכחיים.
"requestId": "test-request-id",
"agentUserId": "agent-user-1",
"payload":{
"devices": {
"states": {
"device-id-1": {
"brightness": 65,
"on": true,
"online": true
}
"notifications": {},
}
}
}
חריגים
צריך להחזיר חריגה אם יש בעיה או התראה שמשויכות לפקודה. יכול להיות שהפקודה תצליח או תיכשל.
אם הפקודה בוצעה בהצלחה (סטטוס = SUCCESS), צריך לדווח על חריגים באמצעות מאפיין StatusReport
(למכשירים שאינם מכשיר היעד), או על ידי החזרת exceptionCode
מתאים (למכשיר היעד).
לדוגמה, אם מסנן המוך במייבש מלא, המשתמש עדיין יכול להפעיל את המייבש, אבל כדאי להזהיר אותו לגבי המצב הזה. באופן דומה, אם הסוללה במכשיר חלשה אבל לא ריקה, עדיין אפשר להריץ פקודה, אבל צריך להודיע למשתמש שהסוללה במכשיר חלשה.
אם הפקודה נכשלת בגלל חריגים, הסטטוס צריך להיות EXCEPTIONS, והחריגים צריכים להיות מדווחים באמצעות מאפיין StatusReport
.
חריגה לא חוסמת (הצלחה) לגבי מכשיר היעד
דוגמה לנעילת הדלת:
הסוללה של מנעול הדלת הקדמית חלשה. אני נועלת את הדלת הקדמית.
{ "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" } }] } }
חריגה לא חוסמת (SUCCESS) לגבי מכשיר אחר שמשתמש ב-StatusReport
הדוגמה הזו היא להפעלת מערכת אבטחה: Ok, arming the security system. החלון הקדמי פתוח.
{ "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" }] } }] } }
חריגה מחסימה לגבי מכשיר אחר שמשתמש ב-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" } ] } } } }
רשימת חריגים
החריגים הבאים יגרמו להשמעת ה-TTS המשויך במכשיר.
- bagFull : למכשיר/ים <יש/ישנם> <שק מלא/שקים מלאים>. צריך לרוקן <אותו/אותם> ולנסות שוב.
- binFull : <device(s)> <has/have> <a full bin/full bins>.
- carbonMonoxideDetected : זוהה פחמן חד-חמצני ב <שם הבית>.
- 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)>.
- deviceUnplugged : <device(s)> <is/are> unplugged.
- floorUnreachable : לא ניתן להגיע לחדר הזה באמצעות <device(s)>. צריך להעביר את <המכשיר/המכשירים> לקומה המתאימה ולנסות שוב.
- hardwareFailure : ל-<device(s)> יש בעיה בחומרה.
- inSoftwareUpdate : המכשיר או המכשירים <device(s)> נמצאים כרגע בתהליך של עדכון תוכנה.
- isBypassed : המכשיר/ים <is/are> currently bypassed.
- lowBattery : <device(s)> <has/have> low battery.
- motionDetected : <device(s)> <detect(s)> motion.
- needsPads : <device(s)> <need(s)> new pads.
- needsSoftwareUpdate : <device(s)> <need(s)> a software update.
- needsWater : <device(s)> <need(s)> water.
- networkJammingDetected : החיבור לרשת הביתית אל <device(s)> לא פועל כמו שצריך.
- noIssuesReported : לא דווחו בעיות ב<device(s)>.
- roomsOnDifferentFloors : למכשיר/ים <device(s)> אין גישה לחדרים האלה כי הם נמצאים בקומות שונות.
- runCycleFinished : <device(s)> <has/have> finished running.
- securityRestriction : <device(s)> <has/have> a security restriction.
- smokeDetected : זוהה עשן ב <שם הבית>.
- tankEmpty : למכשיר/ים<device(s)> <has/have> <an empty tank/empty tanks>. צריך למלא <it/them> ולנסות שוב.
- usingCellularBackup : <device(s)> <is/are> using cellular backup.
- waterLeakDetected : <device(s)> <detect(s)> a water leak.