מדריך לבית חכם: דלתות חניה
action.devices.types.GARAGE – דלתות חניה יכולות להיפתח, להיסגר ולזהות מצב פתוח. הם יכולים גם לציין אם אובייקט חסם את דרכה של הדלת בזמן הסגירה, או אם הדלת נעולה ולכן אי אפשר לשלוט בה.
הסוג הזה מציין שהמכשיר מקבל את סמל המוסך וכמה מילים נרדפות וכינויים שקשורים אליו.
יכולות המכשיר
בתיעוד של התכונה המתאימה מפורטים פרטים על ההטמעה, כמו מאפיינים ומצבים שהשירות שלכם צריך לתמוך בהם, ואיך ליצור תגובות מסוג EXECUTE ו-QUERY.
מאפיינים נדרשים
התכונות והפקודות האלה נדרשות, אם הן רלוונטיות למכשיר שלכם. אם המכשיר לא תומך בתכונות האלה, צריך להזין את קוד השגיאה
functionNotSupported בתגובה של QUERY או EXECUTE. מידע נוסף זמין במאמר שגיאות וחריגים.
תכונות מומלצות
התכונות האלה מומלצות, אם הן רלוונטיות למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר לפונקציונליות הקיימת של המוצר.
מכשיר לדוגמה: מוסך פשוט
בקטע הזה מופיעות דוגמאות למטענים ייעודיים (payload) של כוונות שמייצגים 'מוסך' נפוץ, על סמך סוג המכשיר והמאפיינים שצוינו למעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התגובות בהתאם כדי לשקף את השינויים האלה.
דוגמה לתגובת סנכרון
{
"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
OpenClose
פרטים נוספים על פרמטרים של פקודות זמינים במאמר בנושא
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 } } ] } }
LockUnlock
פרטים נוספים על פרמטרים של פקודות זמינים במאמר בנושא
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 } } ] } }
שגיאות במכשיר
רשימה מלאה של שגיאות וחריגים-
obstructionDetected– המשתמש ניסה לסגור את דלת החניה, אבל היה חפץ שחסם את הדלת. -
lockedState– המשתמש ניסה לשלוט בדלת החניה, אבל היא במצב נעול שלא מאפשר לה לזוז.