הסכימה של מאפיין הסיבוב בבית חכם
action.devices.traits.Rotation
– התכונה הזו שייכת למכשירים שתומכים בסיבוב.
אפשר לציין את הסיבוב באחוזים או בזוויות. אם המכשיר תומך בסיבוב לפי זוויות, כיוון הסיבוב שמוגדר כברירת מחדל הוא בכיוון השעון.
מאפייני המכשיר
מכשירים עם התכונה הזו עשויים לדווח על המאפיינים
הבאים כחלק מהפעולה SYNC
. למידע נוסף על טיפול בכוונות SYNC
, ראו ביצוע כוונות.
מאפיינים | סוג | תיאור |
---|---|---|
supportsDegrees |
בוליאני |
חובה. מגדירים את הערך כ-true אם המכשיר מאפשר סיבוב לפי מעלות. |
supportsPercent |
בוליאני |
חובה. מגדירים את הערך כ-true אם המכשיר מאפשר סיבוב לפי אחוזים |
rotationDegreesRange |
מפגע |
מייצג את הטווח במעלות שבו המכשיר יכול להתרוצץ. |
rotationDegreesMin |
מספר |
חובה. סיבוב מינימלי ב-degrees. |
rotationDegreesMax |
מספר |
חובה. סיבוב מקסימלי במעלות. |
supportsContinuousRotation |
בוליאני |
(ברירת המחדל: מגדירים את הערך כ-true אם המכשיר מאפשר סיבוב רציף. כשנותנים שאילתה יחסית, הפקודה |
commandOnlyRotation |
בוליאני |
(ברירת המחדל: השדה הזה מציין אם המכשיר תומך בתקשורת חד-כיוונית (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
, ראו מימוש של Intent.
מדינות | סוג | תיאור |
---|---|---|
rotationDegrees |
מספר |
הרמה הנוכחית ב- |
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 |
מספר |
חובה. ערך מוחלט, במדידה בפרוטות, שמציין את הסיבוב הסופי של המכשיר בכיוון השעון. הערך חייב להיות במאפיין |
מגדירים את הסיבוב המוחלט באחוזים.
פרמטרים | סוג | תיאור |
---|---|---|
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