מדריך למכונה אוטומטית להאכלת חיות מחמד לבית חכם
action.devices.types.PETFEEDER – אינטראקציות עם מתקני האכלה לחיות מחמד עשויות לכלול חלוקת מזון או מים לחיות מחמד בכמויות שונות ובהגדרות קבועות מראש.
הסוג הזה מציין שהמכשיר מקבל את הסמל של מתקן האכלה לחיות מחמד וכמה מילים נרדפות וכינויים קשורים.
תכונות המכשיר
במסמכי התיעוד של התכונה המתאימה מפורטים פרטי ההטמעה, כמו מאפיינים ומצבים שהשירות שלכם צריך לתמוך בהם, והסבר על אופן יצירת תשובות של EXECUTE ו-QUERY.
מאפיינים נדרשים
התכונות והפקודות האלה נדרשות, אם הן רלוונטיות למכשיר שלכם. אם המכשיר לא תומך בתכונות האלה, צריך להזין את קוד השגיאה functionNotSupported בתגובה של QUERY או EXECUTE. מידע נוסף זמין במאמר שגיאות וחריגים.
תכונות מומלצות
מומלץ להשתמש בתכונות האלה אם הן רלוונטיות למכשיר שלכם. עם זאת, אתם יכולים לשלב בין כל התכונות הזמינות כדי להתאים אותן בצורה הטובה ביותר לפונקציונליות הקיימת של המוצר.
מכשיר לדוגמה: מכונה אוטומטית פשוטה להאכלת חיות מחמד
בקטע הזה מופיעות דוגמאות למטענים ייעודיים (payloads) של כוונות שמייצגים 'מאכיל חיות מחמד' נפוץ, על סמך סוג המכשיר והמאפיינים שצוינו למעלה. אם מוסיפים או מסירים מאפיינים בהטמעה, צריך לשנות את התגובות בהתאם כדי לשקף את השינויים האלה.
דוגמה לתגובת סנכרון
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.PETFEEDER", "traits": [ "action.devices.traits.Dispense", "action.devices.traits.StartStop" ], "name": { "name": "Simple pet feeder" }, "willReportState": true, "attributes": { "supportedDispenseItems": [ { "item_name": "cat_food_key", "item_name_synonyms": [ { "lang": "en", "synonyms": [ "Cat food", "Kibble" ] } ], "supported_units": [ "OUNCES", "CUPS" ], "default_portion": { "amount": 1, "unit": "CUPS" } } ], "supportedDispensePresets": [ { "preset_name": "cat_meal_key", "preset_name_synonyms": [ { "lang": "en", "synonyms": [ "Normal meal", "Dinner" ] } ] } ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
דוגמה לתשובה של שאילתה
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "dispenseItems": [ { "itemName": "cat_food_key", "amountRemaining": { "amount": 6, "unit": "CUPS" }, "amountLastDispensed": { "amount": 2.5, "unit": "CUPS" }, "isCurrentlyDispensing": false } ], "isRunning": true, "isPaused": false } } } }
דוגמאות לפקודות EXECUTE
חלוקה
פרטים נוספים על פרמטרים של הפקודה זמינים במאמר בנושא
action.devices.traits.Dispense.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Dispense", "params": { "amount": 1, "unit": "CUPS", "item": "cat_food_key" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "dispenseItems": [ { "itemName": "cat_food_key", "amountRemaining": { "amount": 5, "unit": "CUPS" }, "amountLastDispensed": { "amount": 1, "unit": "CUPS" }, "isCurrentlyDispensing": 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 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }
PauseUnpause
פרטים נוספים על פרמטרים של הפקודה זמינים במאמר בנושא
action.devices.traits.StartStop.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.PauseUnpause", "params": { "pause": true } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isRunning": false, "isPaused": true } } ] } }