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

action.devices.traits.Rotation – המאפיין הזה שייך למכשירים שתומכים בסיבוב.

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

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

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

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

חובה.

מגדירים את הערך כ-true אם המכשיר מאפשר סיבוב לפי מעלות.

supportsPercent בוליאני

חובה.

מגדירים את הערך כ-true אם המכשיר מאפשר סיבוב לפי אחוזים

rotationDegreesRange אובייקט

מייצג את הטווח במעלות שבו המכשיר יכול להתרוצץ.

rotationDegreesMin מספר

חובה.

סיבוב מינימלי ב-degrees.

rotationDegreesMax מספר

חובה.

סיבוב מקסימלי במעלות.

supportsContinuousRotation בוליאני

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

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

commandOnlyRotation בוליאני

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

השדה הזה מציין אם המכשיר תומך בתקשורת חד-כיוונית (true) או דו-כיוונית (false). מגדירים את המאפיין הזה כ-true אם המכשיר לא יכול להגיב לכוונה מסוג QUERY או לדיווח על המצב של המאפיין הזה.

דוגמאות

מכשיר שתומך בסיבוב גם באחוזים וגם בזוויות.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 180
  }
}

מכשיר שתומך רק בסיבוב לפי מעלות.

{
  "supportsDegrees": true,
  "supportsPercent": false,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 90
  }
}

מכשיר שתומך רק בפקודות של סיבוב רציף.

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 360
  },
  "supportsContinuousRotation": true,
  "commandOnlyRotation": true
}

מצבי המכשיר

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

מדינות סוג תיאור
rotationDegrees מספר

הרמה הנוכחית ב-rotationDegreesRange שמציינת את מספר המעלות שבהן המכשיר מסתובב. הערך הזה תמיד צריך להיות ביחס לסיבוב בכיוון השעון.

rotationPercent מספר

הרמה הנוכחית שמציינת את אחוז הסיבוב הנוכחי של המכשיר. הערך 0.0 מייצג 'סגור' והערך 100.0 מייצג 'פתוח'.

targetRotationPercent מספר

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

דוגמאות

באיזו רמה המכשיר מסובב? (אחוזים ומעלות).

{
  "rotationDegrees": 45,
  "rotationPercent": 25
}

באיזו רמה המכשיר מסובב? (מעלות בלבד).

{
  "rotationDegrees": 45
}

באיזו רמה המכשיר מסובב? (רציפה).

{
  "rotationDegrees": 270,
  "rotationPercent": 75
}

מכשיר שמסתובב כרגע למיקום חדש (באחוזים).

{
  "rotationPercent": 75,
  "targetRotationPercent": 100
}

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

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

action.devices.commands.RotateAbsolute

הגדרת הסיבוב המוחלט של המכשיר.

פרמטרים

המטען הייעודי מכיל אחד מהפריטים הבאים:

מגדירים את הסיבוב המוחלט במעלות.

פרמטרים סוג תיאור
rotationDegrees מספר

חובה.

ערך מוחלט, במדידה בדרגות, שמציין את הסיבוב הסופי של המכשיר בכיוון השעון. הערך חייב להיות במאפיין rotationDegreesRange.

מגדירים את הסיבוב המוחלט באחוזים.

פרמטרים סוג תיאור
rotationPercent מספר

חובה.

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

דוגמאות

משעינים את המכשיר ב-50 אחוז.

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationPercent": 50
  }
}

מסובבים את המכשיר ב-15 מעלות נגד כיוון השעון (rotationDegrees: 45).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 30
  }
}

מסובבים את המכשיר ב-100 מעלות בכיוון השעון (supportsContinuousRotation: true, rotationDegrees: 270).

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 10
  }
}

אירעה שגיאה בהגדרת הסיבוב של המכשיר.

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

deviceJammingDetected

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

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