סכימת מאפיינים של סיבוב בבית חכם
action.devices.traits.Rotation – המאפיין הזה שייך למכשירים שתומכים בסיבוב.
אפשר לציין את הסיבוב באחוזים או במעלות, ואם המכשיר תומך בסיבוב במעלות, כיוון הסיבוב שמוגדר כברירת מחדל הוא עם כיוון השעון.
מאפייני המכשיר
מכשירים עם המאפיין הזה עשויים לדווח על המאפיינים הבאים כחלק מהפעולה SYNC. מידע נוסף על טיפול בכוונות זמין במאמר הגשמת כוונות.SYNC
| מאפיינים | סוג | תיאור |
|---|---|---|
supportsDegrees |
בוליאני |
חובה. ההגדרה היא True אם המכשיר מאפשר סיבוב לפי מעלות. |
supportsPercent |
בוליאני |
חובה. הערך צריך להיות true אם המכשיר מאפשר סיבוב באחוזים |
rotationDegreesRange |
אובייקט |
מייצג את הטווח במעלות שבו אפשר לסובב את המכשיר. |
rotationDegreesMin |
Number |
חובה. סיבוב מינימלי במעלות. הערך צריך להיות בין |
rotationDegreesMax |
Number |
חובה. הסיבוב המקסימלי במעלות. הערך צריך להיות בין |
supportsContinuousRotation |
בוליאני |
(ברירת מחדל: ההגדרה צריכה להיות true אם המכשיר מאפשר סיבוב רציף. כשמזינים שאילתה יחסית, הפקודה |
commandOnlyRotation |
בוליאני |
(ברירת מחדל: מציין אם המכשיר תומך בשימוש בתקשורת חד-כיוונית (true) או דו-כיוונית (false). מגדירים את המאפיין הזה כ-True אם המכשיר לא יכול להגיב לאינטנט QUERY או ל-Report State עבור התכונה הזו. |
דוגמאות
מכשיר שתומך בסיבוב באחוזים ובמעלות.
{
"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 |
Number |
הרמה הנוכחית בתוך |
rotationPercent |
Number |
הרמה הנוכחית שמציינת את אחוז הסיבוב של המכשיר כרגע. הערך 0.0 מתאים למצב סגור והערך 100.0 מתאים למצב פתוח. הערך צריך להיות בין |
targetRotationPercent |
Number |
רמת הסיבוב באחוזים שאליה המכשיר יגיע או שהוא נע אליה כתוצאה משינוי מתמשך בסיבוב. הערך צריך להיות בין |
דוגמאות
כמה מעלות סובב המכשיר? (אחוזים ומעלות).
{
"rotationDegrees": 45,
"rotationPercent": 25
}כמה מעלות סובב המכשיר? (רק תארים).
{
"rotationDegrees": 45
}כמה מעלות סובב המכשיר? (מתמשך).
{
"rotationDegrees": 270,
"rotationPercent": 75
}מכשיר שמסתובב כרגע למיקום חדש (אחוז).
{
"rotationPercent": 75,
"targetRotationPercent": 100
}פקודות למכשיר
מכשירים עם המאפיין הזה עשויים להגיב לפקודות הבאות כחלק מהפעולה EXECUTE. מידע נוסף על טיפול בכוונות זמין במאמר הגשמת כוונות.EXECUTE
action.devices.commands.RotateAbsolute
הגדרת הסיבוב האבסולוטי של המכשיר.
פרמטרים
המטען הייעודי (payload) מכיל את אחד מהערכים הבאים:
מגדירים את הסיבוב האבסולוטי במעלות.
| פרמטרים | סוג | תיאור |
|---|---|---|
rotationDegrees |
Number |
חובה. ערך מוחלט, במעלות, שמציין את הסיבוב הסופי של המכשיר עם כיוון השעון. הערך צריך להיות בטווח של מאפיין |
מגדירים את הסבב האבסולוטי באחוזים.
| פרמטרים | סוג | תיאור |
|---|---|---|
rotationPercent |
Number |
חובה. ערך מוחלט באחוזים שמציין את הסיבוב הסופי של המכשיר. הערך צריך להיות בין |
דוגמאות
מטים את המכשיר ב-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