מדריך למכונות קציר חכמות לבית
action.devices.types.MOWER
– אינטראקציות עם מכסחות עשב עשויות לכלול הפעלה, עצירת השהיית קצירה, עגינה, בדיקת המחזור הנוכחי, איתור המכסחת והתאמת מצבים שונים.
הסוג הזה מציין שהמכשיר יקבל את סמל ה-Mower וגם כמה שמות נרדפים וכינויים קשורים.
יכולות המכשיר
פרטי ההטמעה, כמו המאפיינים והמצבים שהשירות צריך לתמוך בהם, והאופן שבו יוצרים תגובות EXECUTE ו-QUERY, מפורטים במסמכי העזרה של המאפיינים המתאימים.
מאפיינים נדרשים
המאפיינים והפקודות האלה נדרשים, אם הם רלוונטיים למכשיר שלכם. אם המכשיר לא תומך במאפיינים האלה, מזינים את קוד השגיאה functionNotSupported
בתגובה של QUERY או EXECUTE. מידע נוסף זמין במאמר שגיאות וחריגות.
מאפיינים מומלצים
מומלץ להשתמש במאפיינים האלה אם הם רלוונטיים למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל המאפיינים הזמינים כדי להתאים את התכונות האלה לפונקציונליות הקיימת של המוצר.
-
action.devices.traits.Dock
-
action.devices.traits.EnergyStorage
-
action.devices.traits.Locator
-
action.devices.traits.OnOff
-
action.devices.traits.RunCycle
דרישות איכות
- זמן אחזור: חייב להיות קטן מ-3000ms או שווה לו.
- אמינות: הערך חייב להיות שווה ל-97% או גדול ממנו.
דוגמה למכשיר: מכסחת דשא פשוטה
בקטע הזה מפורטות דוגמאות של נתוני עומס שימושי (payload) של כוונה שמייצגים מכשיר 'Mower' נפוץ, על סמך סוג המכשיר והמאפיינים שמפורטים למעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התשובות בהתאם כדי לשקף את השינויים האלה.
דוגמה לתגובת SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.MOWER", "traits": [ "action.devices.traits.Dock", "action.devices.traits.EnergyStorage", "action.devices.traits.StartStop" ], "name": { "name": "Simple mower" }, "willReportState": true, "attributes": { "queryOnlyEnergyStorage": true, "pausable": true, "availableZones": [ "left driveway", "right driveway", "around the hedges" ] }, "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": true, "isPaused": false, "isDocked": false, "activeZones": [ "left driveway" ], "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 } } ] } }
StartStop
פרטים נוספים על הפרמטרים של הפקודה זמינים במאמר העזרה של
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, "zone": "right driveway" } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true, "isPaused": false, "activeZones": [ "right driveway" ] } } ] } }