action.devices.EXECUTE
הכוונה הזו שולחת פקודות לביצוע במכשירים לבית החכם.
מילוי ההזמנה צריך לעבד כל פקודה, לשדר אותה למכשיר התואם ולהחזיר את המצב החדש בתגובה EXECUTE
.
כוונה אחת (EXECUTE
) יכולה לטרגט כמה מכשירים עם כמה פקודות.
לדוגמה, כוונה מופעלת יכולה להגדיר גם בהירות וגם צבע בקבוצה של אורות, או להגדיר מספר נורות לצבע אחר.
לפרטים נוספים, ניתן לעיין במאמר שאילתה וביצוע.
פורמט הבקשה
שדות | סוג | תיאור |
---|---|---|
requestId |
מחרוזת |
חובה. מזהה הבקשה. |
inputs |
מערך |
חובה. רשימת סוגי הקלט שתואמים לבקשת הכוונה. |
[item, ...] |
אובייקט |
יש להקליד ומטען ייעודי (payload) המשויך לבקשה לכוונה. |
intent |
חובה. (ערך קבוע: סוג בקשת Intent. |
|
payload |
אובייקט |
חובה. הפעלת מטען ייעודי (payload) של בקשות. |
commands |
מערך |
חובה. רשימה של צמדי יעדים ופקודות במכשיר. |
[item, ...] |
אובייקט |
קבוצת פקודות להפעלה ביעדים המצורפים של המכשיר. |
devices |
מערך |
חובה. רשימה של מכשירי יעד. |
[item, ...] |
אובייקט |
יעד המכשיר להפעלה. |
id |
מחרוזת |
חובה. מזהה המכשיר, בהתאם למזהה שצוין ב-Sync. |
customData |
אובייקט |
אם אובייקט השקיפות המותאם א��שית מסופק ב-Sync, הוא נשלח כאן. |
execution |
מערך |
חובה. רשימת פקודות להפעלה במכשירי יעד. |
[item, ...] |
אובייקט |
פקודה במכשיר. |
command |
מחרוזת |
חובה. הפקודה לביצוע, בדרך כלל עם פרמטרים נלווים. |
params |
אובייקט |
התאמה לפרמטרים של כל פקודה. |
דוגמאות
יישום בקשת הטמעה
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123", "customData": { "fooValue": 74, "barValue": true, "bazValue": "sheepdip" } }, { "id": "456", "customData": { "fooValue": 36, "barValue": false, "bazValue": "moarsheep" } } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
פורמט תגובה
שדות | סוג | תיאור |
---|---|---|
requestId |
מחרוזת |
חובה. המזהה של הבקשה התואמת. |
payload |
אובייקט |
חובה. מטען ייעודי (payload) של תגובת Intent. |
errorCode |
מחרוזת |
קוד שגיאה לכל העסקה שמכילה כשלים באימות וחוסר זמינות של מערכת המפתחים. אם יש שגיאות במכשירים ספציפיים, משתמשים בקוד השגיאה בתוך אובייקט המכשיר. |
debugString |
מחרוזת |
שגיאה מפורטת שמעולם לא תוצג למשתמשים, אך עשויה להירשם או להשתמש בה במהלך הפיתוח. |
commands |
מערך |
כל אובייקט מכיל מכשיר אחד או יותר עם פרטי תגובות. לא. ייתכן שהקבוצות לא יקובצו באותו אופן כמו בבקשה. לדוגמה, הבקשה עשויה להפעיל 7 נורות שמצביעות על 3 נורות שהצליחו ו-4 ניסיונות כושלים, וכתוצאה מכך להציג שתי קבוצות. |
[item, ...] |
אובייקט |
תוצאה של הפעלת מכשיר. |
ids |
מערך |
חובה. רשימה של מזהי המכשירים התואמים לסטטוס הזה. |
[item, ...] |
מחרוזת |
מזהה המכשיר. |
status |
מחרוזת |
חובה. התוצאה של פעולת הביצוע. ערכים נתמכים:
|
states |
אובייקט |
מצב זה תואם למצב של כל תכונה המתואר בכל אזכור של סכימת תכונות. אלה הם המדינות אחרי הביצוע, אם הן זמינות. |
online |
ערך בוליאני |
מציין אם המכשיר מחובר לאינטרנט (כלומר, נגיש) או לא. |
errorCode |
מחרוזת |
אם צריך, הרחבה של מצב השגיאה מקודי השגיאה שהוגדרו מראש תמפה זאת לשגיאות שמוצגות למשתמשים. |
דוגמאות
שימוש בתגובת Intent
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "on": true, "online": true } }, { "ids": [ "456" ], "status": "ERROR", "errorCode": "deviceTurnedOff" } ] } }