מדריך לבית חכם
action.devices.types.GARAGE
- בדלתות החניה אפשר לפתוח, לסגור ולזהות מצב פתוח. הוא יכול גם לציין אם חפץ חסם את נתיב הדלת במהלך סגירה, או אם הדלת נעולה ולכן לא ניתן לשלוט בה.
הסוג הזה מציין שהמכשיר מקבל את סמל החניה וכמה מילים נרדפות וכינויים קשורים.
היכולות של המכשיר
עיינו במסמכי התיעוד של התכונה המתאימה לקבלת פרטים על ההטמעה, כמו המאפיינים והמצבים שבהם השירות צריך לתמוך, והסבר על בניית תשובות EXECUTE ו-QUERY.
התכונות הנדרשות
המאפיינים והפקודות האלה נדרשים, אם הם רלוונטיים למכשיר שלכם. אם המכשיר לא תומך בתכונות האלה, מזינים את קוד השגיאה functionNotSupported
בתשובה QUERY או EXECUTE. מידע נוסף זמין במאמר שגיאות וחריגים.
תכונות מומלצות
מומלץ להשתמש בתכונות האלה, אם הן רלוונטיות למכשיר שלך. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות ולהתאים אותן בצורה הטובה ביותר לפונקציונליות הקיימת של המוצר.
דרישות איכות
- זמן האחזור: הערך חייב להיות קטן מ-2,000 אלפיות השנייה.
- אמינות: חייבת להיות שווה ל-97%.
מכשיר לדוגמה: חניה פשוטה
בקטע הזה יש מטענים ייעודיים לדוגמה שמייצגים "חניה" נפוצה, בהתאם לסוג המכשיר ולתכונות שלמעלה. אם מוסיפים או מסירים תכונות, משנים את התשובות בהתאם בהתאם לשינויים.
דוגמה לתגובת SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.GARAGE", "traits": [ "action.devices.traits.OpenClose", "action.devices.traits.LockUnlock" ], "name": { "name": "Simple garage" }, "willReportState": true, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
דוגמה לתגובת QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "openPercent": 50, "isLocked": false, "isJammed": false } } } }
פקודות EXECUTE לדוגמה
פתיחה וסגירה
למידע נוסף על הפרמטרים של הפקודות, אפשר לעיין במאמר
action.devices.traits.OpenClose
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OpenClose", "params": { "openPercent": 100 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openPercent": 100 } } ] } }
ביטול נעילה
למידע נוסף על הפרמטרים של הפקודות, אפשר לעיין במאמר
action.devices.traits.LockUnlock
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.LockUnlock", "params": { "lock": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isLocked": true, "isJammed": false } } ] } }
ERRORS מכשיר
לצפייה ברשימה המלאה של השגיאות והחריגיםobstructionDetected
– המשתמש ניסה לסגור את דלת החניה, אבל יש אובייקט שמסתיר את הדלת.lockedState
– המשתמש ניסה לשלוט בדלת החניה, אבל הוא נמצא במצב נעול ולא מאפשר לעבור אליו.