הסכימה של מאפיין 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 |
חובה. תוצאת הפעולה. ערכים נתמכים:
|
currentCycleRemainingTime |
Integer |
חובה. הזמן שנותר במחזור הנוכחי, בשניות. |
1
|
מפגע |
כשל |
priority |
Integer |
חובה. מייצג את רמת ההתראה. הערך הנתמך כרגע הוא 0, והוא מציין שההתראה צריכה להיאמר בקול. |
status |
String |
חובה. תוצאת הפעולה. ערכים נתמכים:
|
errorCode |
String |
חובה. הערך יכול להיות כל קוד שגיאה של המאפיין הזה, לדוגמה, |
דוגמאות
המכשיר סיים לפעול.
{ "RunCycle": { "priority": 0, "status": "SUCCESS", "currentCycleRemainingTime": 0 } }
אירעה שגיאה בהשלמת המחזור הנוכחי.
{ "RunCycle": { "priority": 0, "status": "FAILURE", "errorCode": "deviceStuck" } }