סכימת מאפיינים של מצבים לבית חכם
action.devices.traits.Modes
– התכונה הזו כוללת את כל המצבים הזמינים וההגדרות הספציפיות למצב במכשיר.
התכונה הזו שייכת לכל המכשירים עם מספר שרירותי של מצבים 'n-way', שבהם המצבים וההגדרות של כל מצב הם שרירותיים וייחודיים לכל מכשיר או סוג מכשיר. לכל מצב יש כמה הגדרות אפשריות, אבל אפשר לבחור רק אחת בכל פעם. למשל, אי אפשר להגדיר למייבש את המצבים 'עדין', 'רגיל' ו'עמיד' בו-זמנית. הגדרה שאפשר פשוט להפעיל או להשבית שייכת למאפיין Toggles.
לדוגמה, למכונת כביסה יכולות להיות הגדרות לגודל הכביסה ולטמפרטורה. שני המצבים האלה הם מצבים נפרדים, אבל כל אחד מהם יכול להיות רק במצב אחד בכל פעם. המשתמש יכול להגדיר מצב כמו טמפרטורה באופן מפורש באמצעות פקודה כמו Set the washer’s temperature to cold (הגדרת הטמפרטורה של מכונת הכביסה על קרה).
חלק מהמצבים הם 'מסודרים' ואפשר גם להתאים אותם באמצעות מילים כמו 'למעלה'/'למטה', 'הגדלה'/'הקטנה'. לדוגמה, גודל הכביסה (קטן, בינוני, גדול) והטמפרטורה מסודרים בבירור (שימו לב שהטמפרטורה היא לא טרמוסטט בפועל עם יעד מספרי, כמו במכשירים אחרים), אבל סוג הכביסה (עדינה, רגילה, צמר וכו') לא בהכרח מסודר.
התכונה הזו כוללת מצב אחד או יותר שמשתמשים יכולים להגדיר. באופן כללי, צריך להשתמש במצבים האלה לפונקציונליות שלא מקושרת להתנהגות אחרת של המכשיר. התנהגויות מקושרות, כמו הפעלה או כיבוי של המכשיר עצמו, צריכות להשתמש בתכונות ספציפיות יותר (לדוגמה, thermostatMode
בתכונה TemperatureSetting).
מאפייני המכשיר
מכשירים עם המאפיין הזה עשויים לדווח על המאפיינים הבאים כחלק מהפעולה SYNC
. SYNC
מידע נוסף על טיפול בכוונות
מאפיינים | סוג | תיאור |
---|---|---|
availableModes |
מערך |
חובה. רשימה של המצבים הזמינים. |
[item, ...] |
אובייקט |
מצב זמין. |
name |
String |
חובה. השם הפנימי של המצב, שישמש בפקודות ובמצבים. ההגדרה הזו לא תמיד נוחה לשימוש, והיא משותפת לכל השפות. |
name_values |
מערך |
חובה. מילים נרדפות למצב בכל השפות הנתמכות. |
[item, ...] |
אובייקט |
מילים נרדפות של המצב בשפה נתונה. כדי לספק חלופה לשפה, צריך לפחות פריט אחד עם ערך |
name_synonym |
מערך |
חובה. מילים נרדפות של המצב. המחרוזת הראשונה ברשימה הזו משמשת כשם הקנוני של הרמה בשפה הזו. |
[item, ...] |
String |
שם המילה הנרדפת. כדי לספק חלופה לשפה, צריך לפחות פריט אחד עם ערך |
lang |
String |
חובה. קוד שפה (ISO 639-1). כאן מפורטות השפות הנתמכות. |
settings |
מערך |
חובה. ההגדרות הנתמכות במצב הזה. |
[item, ...] |
אובייקט |
הגדרה נתמכת. צריך להוסיף לפחות 2 פריטים. |
setting_name |
String |
חובה. השם הפנימי של הגדרת המצב, שישמש בפקודות ובמצבים. ההגדרה הזו לא תמיד נוחה לשימוש, והיא משותפת לכל השפות. |
setting_values |
מערך |
חובה. מילים נרדפות להגדרה בכל השפות הנתמכות. |
[item, ...] |
אובייקט |
מילים נרדפות להגדרה בשפה מסוימת. |
setting_synonym |
מערך |
חובה. מילים נרדפות להגדרה. המחרוזת הראשונה ברשימה הזו משמשת כשם הקנוני של הרמה בשפה הזו. |
[item, ...] |
String |
שם המילה הנרדפת. |
lang |
String |
חובה. קוד שפה (ISO 639-1). כאן מפורטות השפות הנתמכות. |
ordered |
Boolean |
(ברירת מחדל: אם ההגדרה הזו מוגדרת כ-True, יחולו כללי דקדוק נוספים ללוגיקה של הגדלה/הקטנה, לפי הסדר (עולה) של מערך ההגדרות. |
commandOnlyModes |
Boolean |
(ברירת מחדל: מציין אם המכשיר תומך בשימוש בתקשורת חד-כיוונית (true) או דו-כיוונית (false). מגדירים את המאפיין הזה ל-true אם המכשיר לא יכול להגיב לאינטנט QUERY או ל-Report State עבור התכונה הזו. |
queryOnlyModes |
Boolean |
(ברירת מחדל: חובה אם המכשיר תומך בהרצה של שאילתות בלבד. המאפיין הזה מציין אם אפשר רק לשלוח שאילתה למכשיר כדי לקבל מידע על המצב שלו, ואי אפשר לשלוט בו. |
דוגמאות
מכשיר עם כמה מצבים והגדרות.
{ "availableModes": [ { "name": "load_mode", "name_values": [ { "name_synonym": [ "Load", "Size", "Load size" ], "lang": "en" } ], "settings": [ { "setting_name": "small_load", "setting_values": [ { "setting_synonym": [ "Small", "Half" ], "lang": "en" } ] }, { "setting_name": "medium_load", "setting_values": [ { "setting_synonym": [ "Medium", "Normal" ], "lang": "en" } ] }, { "setting_name": "large_load", "setting_values": [ { "setting_synonym": [ "Large", "Full" ], "lang": "en" } ] } ], "ordered": true }, { "name": "temp_mode", "name_values": [ { "name_synonym": [ "Temperature", "Temp" ], "lang": "en" } ], "settings": [ { "setting_name": "hot_temp", "setting_values": [ { "setting_synonym": [ "Hot", "White" ], "lang": "en" } ] }, { "setting_name": "warm_temp", "setting_values": [ { "setting_synonym": [ "Warm", "Color" ], "lang": "en" } ] }, { "setting_name": "cold_temp", "setting_values": [ { "setting_synonym": [ "Cold", "Delicate" ], "lang": "en" } ] } ], "ordered": false } ] }
מכשיר עם מצבים שבהם אפשר להשתמש רק בפקודות.
{ "availableModes": [ { "name": "light_mode", "name_values": [ { "name_synonym": [ "Light", "Lighting" ], "lang": "en" } ], "settings": [ { "setting_name": "day_light", "setting_values": [ { "setting_synonym": [ "Day", "Bright" ], "lang": "en" } ] }, { "setting_name": "night_light", "setting_values": [ { "setting_synonym": [ "Night", "Dark" ], "lang": "en" } ] }, { "setting_name": "reading_light", "setting_values": [ { "setting_synonym": [ "Reading", "Ambiant" ], "lang": "en" } ] } ], "ordered": false } ], "commandOnlyModes": true, "queryOnlyModes": false }
מצבי המכשיר
יכול להיות שיירשמו לישויות עם המאפיין הזה המצבים הבאים כחלק מהפעולה QUERY
. QUERY
מידע נוסף על טיפול בכוונות
מדינות | סוג | תיאור |
---|---|---|
currentModeSettings |
אובייקט |
חובה. צמד מפתח/ערך עם המצב |
<string> |
String |
כרגע |
דוגמאות
באיזה מצב המכשיר?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
פקודות למכשיר
מכשירים עם המאפיין הזה עשויים להגיב לפקודות הבאות כחלק מהפעולה EXECUTE
. EXECUTE
מידע נוסף על טיפול בכוונות
action.devices.commands.SetModes
מעדכנים את הגדרות המצב.
פרמטרים
פרמטרים | סוג | תיאור |
---|---|---|
updateModeSettings |
אובייקט |
חובה. צמד מפתח/ערך עם המצב |
<string> |
String |
חדש |
דוגמאות
הגדרה לטעינה גדולה.
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
דוגמאות לביטויים
de-DE
- Stelle den Staubsauger auf Ruhemodus
en-US
- set the vacuum to energy saver mode
es-ES
- pon la lavadora en modo frío
fr-FR
- mets l'aspirateur en silencieux
hi-IN
- वैक्यूम पर कार्पेट मोड लगाएं
it-IT
- imposta l'aspirapolvere su silenzioso
ja-JP
- 掃除機 を 静音 モードに設定して
ko-KR
- 세탁기 세탁량 많음 으로 설정해
pt-BR
- acionar a função autolimpeza do aspirador
- ligar o modo de aquecimento