action.devices.EXECUTE
הכוונה הזו שולחת פקודות לביצוע במכשירים לבית חכם.
מערכת הביצוע צריכה לעבד כל פקודה, להעביר אותה למכשיר המתאים ולהחזיר את המצב החדש בתגובה EXECUTE
.
כוונה יחידה מסוג EXECUTE
יכולה לטרגט כמה מכשירים עם כמה פקודות.
לדוגמה, כוונת שימוש מופעלת עשויה להגדיר גם את הבהירות וגם את הצבע של קבוצת נורות, או להגדיר כמה נורות עם צבע שונה לכל אחת.
פרטים נוספים זמינים במאמר שליחת שאילתות והרצה.
פורמט הבקשה
שדות | סוג | תיאור |
---|---|---|
requestId |
String |
חובה. מזהה הבקשה. |
inputs |
מערך |
חובה. רשימת הקלטות שתואמות לבקשת הכוונה. |
[item, ...] |
אובייקט |
הסוג והמטען הייעודי (payload) שמשויכים לבקשת הכוונה. |
intent |
חובה. (ערך קבוע: סוג הבקשה של הכוונה. |
|
payload |
אובייקט |
חובה. מטען הייעודי (payload) של בקשת EXECUTE. |
commands |
מערך |
חובה. רשימה של זוגות של יעד מכשיר ופקודה. |
[item, ...] |
אובייקט |
קבוצת פקודות לביצוע ביעדים של המכשירים המצורפים. |
devices |
מערך |
חובה. רשימת המכשירים היעדים. |
[item, ...] |
אובייקט |
יעד המכשיר להרצה. |
id |
String |
חובה. מזהה המכשיר, בהתאם למזהה שסופק ב-SYNC. |
customData |
אובייקט |
אם אובייקט customData האטום מסופק ב-SYNC, הוא נשלח לכאן. |
execution |
מערך |
חובה. רשימת פקודות לביצוע במכשירי היעד. |
[item, ...] |
אובייקט |
פקודה למכשיר. |
command |
String |
חובה. הפקודה לביצוע, בדרך כלל עם פרמטרים נלווים. |
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 |
String |
חובה. המזהה של הבקשה התואמת. |
payload |
אובייקט |
חובה. עומס העבודה של תגובת הכוונה. |
errorCode |
String |
קוד שגיאה של העסקה כולה במקרים של כשלים באימות או של אי-זמינות של מערכת הפיתוח. כדי לקבל מידע על שגיאות ספציפיות במכשיר, משתמשים ב-errorCode באובייקט device. |
debugString |
String |
שגיאה מפורטת בתגובה, שלא תוצג אף פעם למשתמשים, אבל עשויה להירשם ביומן או לשמש במהלך הפיתוח. |
commands |
מערך |
כל אובייקט מכיל מכשיר אחד או יותר עם פרטי תגובה. הערה: יכול להיות שהם לא יקובצו באותו אופן כמו בבקשה. לדוגמה, הבקשה עשויה להדליק 7 נורות, כאשר 3 נורות מודלקות בהצלחה ו-4 נורות לא מודלקות, כך שתהיה תגובה עם שתי קבוצות. |
[item, ...] |
אובייקט |
תוצאת ההרצה במכשיר. |
ids |
מערך |
חובה. רשימה של מזהי המכשירים שתואמים לסטטוס הזה. |
[item, ...] |
String |
מזהה המכשיר. |
status |
String |
חובה. התוצאה של פעולת הביצוע. ערכים נתמכים:
|
states |
אובייקט |
תואמים למצבים של כל מאפיין שמתוארים בכל הפניות לסכמות של המאפיינים. אלה המצבים אחרי ההפעלה, אם הם זמינים. |
online |
בוליאני |
מראה אם המכשיר במצב אונליין (כלומר, ניתן להגיע אליו) או לא. |
errorCode |
String |
הרחבת המצב ERROR לפי הצורך מקודי השגיאה המוגדרים מראש, שיתווספו לשגיאות שיוצגו למשתמשים. |
debugString |
String |
שגיאה מפורטת ברמת הפקודה, שלא תוצג אף פעם למשתמשים, אבל עשויה להירשם ביומן או לשמש במהלך הפיתוח. |
דוגמאות
תגובה לכוונה EXECUTE
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "on": true, "online": true } }, { "ids": [ "456" ], "status": "ERROR", "errorCode": "deviceTurnedOff" } ] } }