hành động.thiết bị.thực hành
Ý định này gửi các lệnh để thực thi trên thiết bị nhà thông minh.
Phương thức thực hiện đơn hàng của bạn sẽ xử lý từng lệnh, truyền lệnh đó đến thiết bị tương ứng và trả về trạng thái mới trong phản hồi EXECUTE
.
Một ý định EXECUTE
có thể nhắm đến nhiều thiết bị bằng nhiều lệnh.
Ví dụ: một ý định kích hoạt có thể đặt cả độ sáng và màu sắc trên một nhóm ánh sáng hoặc có thể đặt nhiều đèn ở một màu khác nhau.
Để biết thêm thông tin chi tiết, hãy xem Truy vấn và thực thi.
Định dạng yêu cầu
Các trường | Loại | Mô tả |
---|---|---|
requestId |
Chuỗi |
Bắt buộc. Mã nhận dạng của yêu cầu. |
inputs |
Mảng |
Bắt buộc. Danh sách dữ liệu đầu vào khớp với yêu cầu ý định. |
[item, ...] |
Đối tượng |
Nhập và trọng tải liên quan đến yêu cầu ý định. |
intent |
Bắt buộc. (Giá trị không đổi: Loại yêu cầu ý định. |
|
payload |
Đối tượng |
Bắt buộc. thực thi yêu cầu tải trọng |
commands |
Mảng |
Bắt buộc. Danh sách các cặp mục tiêu và lệnh của thiết bị. |
[item, ...] |
Đối tượng |
Bộ lệnh để thực thi trên các mục tiêu thiết bị được đính kèm. |
devices |
Mảng |
Bắt buộc. Danh sách các thiết bị mục tiêu. |
[item, ...] |
Đối tượng |
Mục tiêu thiết bị để thực thi. |
id |
Chuỗi |
Bắt buộc. Mã thiết bị theo mã nhận dạng được cung cấp trong SYNC. |
customData |
Đối tượng |
Nếu đối tượng customData mờ được cung cấp trong SYNC, đối tượng này sẽ được gửi tại đây. |
execution |
Mảng |
Bắt buộc. Danh sách các lệnh để thực thi trên thiết bị mục tiêu. |
[item, ...] |
Đối tượng |
Lệnh thiết bị. |
command |
Chuỗi |
Bắt buộc. Lệnh thực thi, thường đi kèm với các thông số đi kèm. |
params |
Đối tượng |
Căn chỉnh với các thông số cho từng lệnh. |
Ví dụ
Thực hiện yêu cầu ý định
{ "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 } } ] } ] } } ] }
Định dạng phản hồi
Các trường | Loại | Mô tả |
---|---|---|
requestId |
Chuỗi |
Bắt buộc. Mã của yêu cầu tương ứng. |
payload |
Đối tượng |
Bắt buộc. Dung lượng phản hồi của ý định. |
errorCode |
Chuỗi |
Mã lỗi cho toàn bộ giao dịch đối với các lỗi xác thực và lỗi không có sẵn hệ thống dành cho nhà phát triển. Đối với các lỗi riêng lẻ trên thiết bị, hãy sử dụng mã lỗi trong đối tượng thiết bị. |
debugString |
Chuỗi |
Lỗi chi tiết sẽ không bao giờ được trình bày cho người dùng nhưng có thể được ghi lại hoặc sử dụng trong quá trình phát triển. |
commands |
Mảng |
Mỗi đối tượng chứa một hoặc nhiều thiết bị có thông tin phản hồi chi tiết. Không áp dụng theo cách tương tự như trong yêu cầu. Ví dụ: yêu cầu có thể bật 7 đèn, trong đó có 3 đèn thành công và 4 đèn không hoạt động, do đó có 2 nhóm trong phản hồi. |
[item, ...] |
Đối tượng |
Kết quả thực thi thiết bị. |
ids |
Mảng |
Bắt buộc. Danh sách mã thiết bị tương ứng với trạng thái này. |
[item, ...] |
Chuỗi |
Mã thiết bị. |
status |
Chuỗi |
Bắt buộc. Kết quả của thao tác thực thi. Giá trị được hỗ trợ:
|
states |
Đối tượng |
Được căn chỉnh với trạng thái đặc điểm được mô tả trong mỗi tham chiếu giản đồ tính năng. Đây là các trạng thái sau khi thực thi (nếu có). |
online |
Boolean |
Cho biết thiết bị có đang kết nối mạng hay không (nghĩa là có thể kết nối được) hay không. |
errorCode |
Chuỗi |
Mở rộng trạng thái ERROR nếu cần từ những mã lỗi được thiết lập sẵn. Các lỗi này sẽ ánh xạ tới các lỗi hiển thị cho người dùng. |
Ví dụ
Thực hiện phản hồi về ý định
{ "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "on": true, "online": true } }, { "ids": [ "456" ], "status": "ERROR", "errorCode": "deviceTurnedOff" } ] } }