מדריך למפיצי ריח חכמים
action.devices.types.AIRFRESHENER – אפשר להפעיל ולכבות את מפיצי הריח, ואולי גם לשנות את המצבים השונים.
הסוג הזה מציין שהמכשיר מקבל את הסמל של מטהר האוויר וכמה מילים נרדפות וכינויים שקשורים אליו.
תכונות המכשיר
במסמכי התיעוד של התכונה המתאימה מפורטים פרטי ההטמעה, כמו מאפיינים ומצבים שהשירות שלכם צריך לתמוך בהם, והסבר על אופן יצירת תשובות של 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.AIRFRESHENER", "traits": [ "action.devices.traits.OnOff", "action.devices.traits.Toggles" ], "name": { "name": "Simple air freshener" }, "willReportState": true, "attributes": { "availableToggles": [ { "name": "intermittent_key", "name_values": [ { "name_synonym": [ "Intermittent Spray" ], "lang": "en" }, { "name_synonym": [ "Intermittierender Spray" ], "lang": "de" } ] } ] }, "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, "on": true, "currentToggleSettings": { "intermittent_key": true } } } } }
דוגמאות לפקודות EXECUTE
OnOff
פרטים נוספים על פרמטרים של הפקודה זמינים במאמר בנושא
action.devices.traits.OnOff.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
SetToggles
פרטים נוספים על פרמטרים של הפקודה זמינים במאמר בנושא
action.devices.traits.Toggles.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetToggles", "params": { "updateToggleSettings": { "intermittent_key": false } } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentToggleSettings": { "intermittent_key": false } } } ] } }