מדריך לשואבי אבק בבית חכם
action.devices.types.VACUUM
– יכולות להיות פעולות כמו הפעלה, עצירה והשהיה של ניקוי, עגינה, בדיקה של מחזור הניקוי הנוכחי, איתור שואב האבק או שינוי מצבים שונים. שואבי אבק מסוימים עשויים לתמוך בניקוי אזורים מסוימים בבית.
הסוג הזה מציין שהמכשיר מקבל את סמל שואב האבק וגם כמה מילים נרדפות וכינויים קשורים.
יכולות המכשיר
עיינו בתיעוד של ה-trait כדי לקבל את פרטי ההטמעה, כמו מאפיינים ומצבים שהשירות צריך לתמוך בהם, ואיך ליצור תשובות EXECUTE ו-QUERY.
ה-traits הנדרשות
התכונות והפקודות האלה נדרשות, אם זה רלוונטי למכשיר שלכם. אם המכשיר שלך לא תומך בתכונות האלה, יש להזין את קוד השגיאה functionNotSupported
בתגובה מסוג QUERY או EXECUTE. מידע נוסף זמין בקטע שגיאות וחריגים.
תכונות מומלצות
התכונות האלה מומלצות למכשיר, אם הן רלוונטיות אליו. עם זאת, אפשר לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר לפונקציונליות הקיימת של המוצר.
-
action.devices.traits.Dock
-
action.devices.traits.EnergyStorage
-
action.devices.traits.Locator
-
action.devices.traits.OnOff
-
action.devices.traits.RunCycle
דרישות איכות
- זמן אחזור: חייב להיות קצר מ-800 אלפיות שנייה או שווה לו.
- אמינות: צריכה להיות 97% ומעלה.
מכשיר לדוגמה: שואב אבק פשוט
בקטע הזה יש דוגמאות של מטענים ייעודיים (payloads) של Intent שמייצגים 'שואב אבק' נפוץ על סמך סוג המכשיר והתכונות שצוינו למעלה. אם מוסיפים או מסירים traits בהטמעה, צריך לשנות את התגובות בהתאם כדי לשקף את השינויים.
תגובת SYNC לדוגמה
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.VACUUM", "traits": [ "action.devices.traits.Dock", "action.devices.traits.EnergyStorage", "action.devices.traits.StartStop" ], "name": { "name": "Simple vacuum" }, "willReportState": true, "attributes": { "queryOnlyEnergyStorage": true, "pausable": 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, "isRunning": false, "isPaused": false, "isDocked": true, "descriptiveCapacityRemaining": "HIGH", "capacityRemaining": [ { "unit": "SECONDS", "rawValue": 36000 }, { "unit": "PERCENTAGE", "rawValue": 90 } ] } } } }
פקודות EXECUTE לדוגמה
הצמדה
פרטים נוספים על הפרמטרים של הפקודות זמינים בחומר העזר בנושא
action.devices.traits.Dock
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Dock" } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isDocked": true } } ] } }
עצירה
פרטים נוספים על הפרמטרים של הפקודות זמינים בחומר העזר בנושא
action.devices.traits.StartStop
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }