הסכימה של מאפיין RunCycle לבית חכם

action.devices.traits.RunCycle – המאפיין הזה מייצג כל מכשיר שיש לו משך פעילות מתמשך שאפשר לשלוח עליו שאילתה.

במכשירים כאלה, המערכת תדווח על המספר הכולל של מחזורי הטעינה בתחילת הפעולה, ועל כל מחזור טעינה שבו המכשיר נמצא כרגע. כך המשתמש יכול להריץ שאילתות, כמו:

  • באיזה מחזור פועלת מכונת הייבוש?
  • כמה מחזורים נותרו למדיח הכלים?
  • מה המייבש עושה?
  • מתי יתבצע השטיפה?

במכשירים מסוימים, משך הזמן מופיע בפורמט לא מחזורי. כל מכשיר שפועל למשך פרק זמן מסוים יכול לדווח על הזמן שנותר לו, ללא מחזורים. כך ניתן לטפל גם במקרים שבהם מחזורי העבודה לא עקביים (לדוגמה, במדיחי כלים לא תמיד נעשה שימוש בכל המחזורים). לדוגמה, משתמש יכול לשאול How much longer will my vacuum run?, והמערכת תחזיר את משך הזמן ביחידות שפרופורציונליות לזמן שנותר. הדבר רלוונטי גם למכשירים שצוינו למעלה. השאלה How much longer will my clothes be drying? תחזיר את משך הזמן בדקות.

המכשירים יכולים להחזיר את מה שהם יודעים, והתשובה של Assistant TTS תהיה התשובה הטובה ביותר על סמך הנתונים הזמינים (לדוגמה, המכונה עובדת ותסתיים תוך כ-20 דקות).

בשלב זה, RunCycle הוא מאפיין לקריאה בלבד – אין לו פקודות, רק מצבים שאפשר לשלוח אליהם שאילתה. בעתיד יכול להיות שיתווספו מנגנונים להפעלה מחדש של מחזורים או לדילוג על מחזורים (טוב לממטרות, רע למכונות כביסה).

מאפייני המכשיר

ללא.

מצבי המכשיר

ישויות עם המאפיין הזה יכולות לדווח על המצבים הבאים כחלק מהפעולה QUERY. למידע נוסף על טיפול באובייקטים של QUERY, ראו מימוש של Intent.

מדינות סוג תיאור
currentRunCycle מערך

חובה.

מכילה את המילים הנרדפות של המחזור הנוכחי בכל שפה נתמכת.

[item, ...] מפגע

שמות של מילים נרדפות של מחזור.

currentCycle String

חובה.

המחזור הנוכחי שמתבצע.

nextCycle String

זה שינוי אופציונלי. המחזור הבא לביצוע.

lang String

חובה.

קוד השפה של שמות המחזור הנתונים. כאן מפורטות השפות הנתמכות.

currentTotalRemainingTime Integer

חובה.

הזמן שנותר לביצוע הפעולה, בשניות.

currentCycleRemainingTime Integer

חובה.

הזמן שנותר במחזור הנוכחי, בשניות.

דוגמאות

המכשיר נמצא בשלב השטיפה למשך 5 דקות נוספות, והתהליך יסתיים תוך 20 דקות.

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

המכשיר ימשיך לשלב השטיפה למשך 5 דקות נוספות, לפני שהוא יעבור לסחיטה.

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

פקודות למכשיר

ללא.

התראות במכשיר

מכשירי עם המאפיין הזה עשויים להחזיר את עומס הנתונים הבא של ההתראה כחלק משינוי במצב המכשיר. למידע נוסף על הטמעת התראות, ראו התראות לפעולות של בית חכם.

שדות סוג תיאור
RunCycle

חובה.

מטען הייעודי (Payload) של ההתראה.

התמיכה כוללת אחת מהאפשרויות הבאות:
0 מפגע

הפעולה הצליחה

priority Integer

חובה.

מייצג את רמת ההתראה. הערך הנתמך כרגע הוא 0, והוא מציין שההתראה צריכה להיאמר בקול.

status String

חובה.

תוצאת הפעולה.

ערכים נתמכים:

SUCCESS
currentCycleRemainingTime Integer

חובה.

הזמן שנותר במחזור הנוכחי, בשניות.

1 מפגע

כשל

priority Integer

חובה.

מייצג את רמת ההתראה. הערך הנתמך כרגע הוא 0, והוא מציין שההתראה צריכה להיאמר בקול.

status String

חובה.

תוצאת הפעולה.

ערכים נתמכים:

FAILURE
errorCode String

חובה.

הערך יכול להיות כל קוד שגיאה של המאפיין הזה, לדוגמה, deviceStuck.

דוגמאות

המכשיר סיים לפעול.

{
  "RunCycle": {
    "priority": 0,
    "status": "SUCCESS",
    "currentCycleRemainingTime": 0
  }
}

אירעה שגיאה בהשלמת המחזור הנוכחי.

{
  "RunCycle": {
    "priority": 0,
    "status": "FAILURE",
    "errorCode": "deviceStuck"
  }
}

שגיאות במכשיר

הרשימה המלאה של השגיאות והחריגות