action.devices.QUERY

Ý định này truy vấn phương thức thực hiện của bạn về trạng thái hiện tại của thiết bị, bao gồm cả việc thiết bị có kết nối mạng và có kết nối được hay không.

Phản hồi của QUERY chỉ trả về thông tin trạng thái. Việc cập nhật các thuộc tính và đặc điểm của thiết bị được xử lý bởi SYNC.

Để biết thêm thông tin chi tiết, hãy xem phần Truy vấn và thực thi.

Định dạng yêu cầu

Trường Loại Mô tả
requestId String

Bắt buộc.

Mã của yêu cầu.

inputs Mảng

Bắt buộc.

Danh sách các dữ liệu đầu vào khớp với yêu cầu ý định.

[item, ...] Đối tượng

Loại và tải trọng liên kết với yêu cầu ý định.

intent

Bắt buộc.

(Giá trị không đổi: "action.devices.QUERY")

Loại yêu cầu ý định.

payload Đối tượng

Bắt buộc.

tải trọng yêu cầu QUERY.

devices Mảng

Bắt buộc.

Danh sách thiết bị mục tiêu.

[item, ...] Đối tượng

Mục tiêu thiết bị để truy vấn.

id String

Bắt buộc.

Mã thiết bị, theo mã nhận dạng được cung cấp trong chế độ SYNC.

customData Đối tượng

Nếu đối tượng customData mờ được cung cấp trong SYNC, thì đối tượng đó sẽ được gửi ở đây.

Ví dụ

Yêu cầu ý địnhQUERY

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123",
            "customData": {
              "fooValue": 74,
              "barValue": true,
              "bazValue": "foo"
            }
          },
          {
            "id": "456",
            "customData": {
              "fooValue": 12,
              "barValue": false,
              "bazValue": "bar"
            }
          }
        ]
      }
    }
  ]
}

Định dạng câu trả lời

Trường Loại Mô tả
requestId String

Bắt buộc.

Mã của yêu cầu tương ứng.

payload Đối tượng

Bắt buộc.

Tải trọng phản hồi theo ý định.

errorCode String

Mã lỗi của toàn bộ giao dịch đối với các lỗi xác thực và tình trạng không sử dụng được của hệ thống dành cho nhà phát triển. Đối với các lỗi thiết bị riêng lẻ, hãy sử dụng errorCode trong đối tượng thiết bị.

debugString String

Lỗi chi tiết mà người dùng sẽ không nhìn thấy nhưng có thể được ghi lại hoặc sử dụng trong quá trình phát triển.

devices Đối tượng

Bắt buộc.

Bản đồ thiết bị. Ánh xạ mã thiết bị của nhà phát triển với đối tượng của thuộc tính trạng thái.

<string> Đối tượng

Trạng thái thiết bị.

online Boolean

Bắt buộc.

Cho biết thiết bị có đang kết nối mạng (tức là, có thể truy cập được) hay không.

status String

Bắt buộc.

Kết quả của thao tác truy vấn.

Các giá trị được hỗ trợ:

SUCCESS
Xác nhận truy vấn đã thành công.
OFFLINE
Thiết bị mục tiêu hiện không có kết nối mạng hoặc không kết nối được.
EXCEPTIONS
Đã xảy ra vấn đề hoặc cảnh báo liên quan đến truy vấn. Truy vấn có thể thành công hoặc không thành công. Loại trạng thái này thường được đặt khi bạn muốn gửi thêm thông tin về một thiết bị được kết nối khác.
ERROR
Không thể truy vấn thiết bị đích.
errorCode String

Mở rộng trạng thái LỖI (nếu cần) trong các mã lỗi đặt trước. Trạng thái này sẽ liên kết với các lỗi mà người dùng nhìn thấy.

Ví dụ

Phản hồi ý định QUERY

{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "devices": {
      "123": {
        "on": true,
        "online": true,
        "status": "SUCCESS"
      },
      "456": {
        "on": true,
        "online": true,
        "status": "SUCCESS",
        "brightness": 80,
        "color": {
          "spectrumRgb": 16711935
        }
      }
    }
  }
}