סכימת מאפיינים של מילוי לבית חכם

action.devices.traits.Fill – המאפיין הזה חל על מכשירים שאפשר למלא אותם, כמו אמבטיה.

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

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

מאפיינים סוג תיאור
availableFillLevels אובייקט

מתאר את רמות המילוי השונות של המכשיר.

levels מערך

חובה.

רשימה של שמות רמות ומילים נרדפות ספציפיות לשפה.

[item, ...] אובייקט

שם הרמה והמילים הנרדפות שלה בשפות שונות.

level_name String

חובה.

השם הפנימי של הרמה. התוצאה יכולה להיות לא נוחה למשתמשים, והיא תשותף בכל השפות.

level_values מערך

חובה.

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

[item, ...] אובייקט

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

level_synonym מערך

חובה.

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

[item, ...] String

שם מילה נרדפת. כדי לספק חלופה לשפה, צריך לציין לפחות פריט אחד עם ערך lang של en.

lang String

חובה.

קוד שפה (ISO 639-1). כאן מפורטות השפות הנתמכות.

ordered בוליאני

חובה.

אם הערך הוא true, המכשיר מטפל בדקדוק נוסף ללוגיקה של הגדלה או הקטנה, כפי שמיוצג על ידי מערך levels (לדוגמה, חצי רמה).

supportsFillPercent בוליאני

(ברירת מחדל: false)

אם הערך הוא true, המערכת מקבלת פקודות לשינוי הרמה באחוזים.

דוגמאות

מכשיר עם יכולות בסיסיות של מילוי או ריקון, שלא תומך ברמות מילוי נפרדות.

{}

מכשיר שתומך ברמות מילוי נפרדות.

{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "Half",
              "Half way",
              "One half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "Full",
              "All the way",
              "Complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}

מצבי המכשיר

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

מדינות סוג תיאור
isFilled בוליאני

חובה.

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

currentFillLevel String

מאפיין חובה אם המאפיין availableFillLevels מוגדר. המאפיין הזה מציין את level_name הנוכחי מתוך המאפיין availableFillLevels שבו המכשיר מלא.

currentFillPercent Number

חובה אם המאפיין supportsFillPercent מוגדר. מציין את אחוז רמת המילוי הנוכחית.

הערך צריך להיות בין 0 ל-100.

דוגמאות

האם האמבטיה מלאה?

{
  "isFilled": true
}

האם האמבטיה מלאה? (עם רמות).

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

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

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

action.devices.commands.Fill

מילוי או ריקון של המכשיר.

פרמטרים

פרמטרים סוג תיאור
fill בוליאני

חובה.

True למילוי, false לריקון.

fillLevel String

מציין את ה-level_name שצריך להגדיר מתוך המאפיין availableFillLevels. אם לא מצוין ערך, צריך למלא עד הרמה שמוגדרת כברירת המחדל.

fillPercent Number

מציין את אחוז הרמה המבוקשת.

הערך צריך להיות בין 0 ל-100.

דוגמאות

ממלאים את האמבטיה.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

מרוקנים את האמבטיה.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}

ממלאים את האמבטיה עד האמצע.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}

הגדלת רמת המים באמבטיה באחד (נדרש מאפיין ordered עם הערך true).

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

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

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