Hướng dẫn máy giặt nhà thông minh

action.devices.types.WASHER – Máy giặt có thể khởi động/tắt chức năng độc lập với việc bật hoặc tắt (một số máy giặt có nút nguồn riêng, còn một số máy thì không). Một số thiết bị có thể tạm dừng và tiếp tục trong khi giặt. Máy giặt cũng có nhiều chế độ và mỗi chế độ đều có những chế độ cài đặt riêng. Các thuộc tính này dành riêng cho máy giặt và được diễn giải ở dạng khái quát.

Loại này cho biết thiết bị sẽ nhận được biểu tượng Máy giặt cùng một số từ đồng nghĩa và biệt hiệu có liên quan.

Để xem ví dụ về cách điều khiển máy giặt bằng nhà thông minh của Google, vui lòng xem lớp học lập trình về máy giặt trong nhà thông minh.

Khả năng của thiết bị

Hãy tham khảo tài liệu về đặc điểm tương ứng để biết thông tin chi tiết về cách triển khai, chẳng hạn như các thuộc tính và trạng thái mà dịch vụ của bạn cần hỗ trợ cũng như cách tạo các phản hồi EXECUTE và QUERY.

Trait bắt buộc

Những đặc điểm và lệnh này là bắt buộc, nếu áp dụng cho thiết bị của bạn. Nếu thiết bị của bạn không hỗ trợ các trait này, hãy nhập mã lỗi functionNotSupported vào phản hồi QUERY hoặc EXECUTE. Hãy xem phần Lỗi và ngoại lệ để biết thêm thông tin.

Bạn nên sử dụng những đặc điểm này (nếu phù hợp với thiết bị của mình). Tuy nhiên, bạn có thể tuỳ ý kết hợp và so khớp từ tất cả các đặc điểm có sẵn sao cho phù hợp nhất với chức năng sản phẩm hiện có.

Yêu cầu về chất lượng

  • Độ trễ: phải nhỏ hơn hoặc bằng 3000 mili giây.
  • Độ tin cậy: phải lớn hơn hoặc bằng 97%.

Thiết bị mẫu: Máy giặt đơn giản

Phần này chứa các tải trọng ý định mẫu đại diện cho một "Máy giặt" chung, dựa trên loại thiết bị và các đặc điểm nêu trên. Nếu bạn thêm hoặc xoá đặc điểm trong quá trình triển khai, hãy sửa đổi các phản hồi cho phù hợp để phản ánh những thay đổi đó.

Phản hồi SYNC mẫu

Yêu cầu
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Câu trả lời
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.WASHER",
        "traits": [
          "action.devices.traits.OnOff",
          "action.devices.traits.RunCycle",
          "action.devices.traits.StartStop",
          "action.devices.traits.Modes"
        ],
        "name": {
          "name": "Simple washer"
        },
        "willReportState": true,
        "attributes": {
          "availableModes": [
            {
              "name": "load_key",
              "name_values": [
                {
                  "name_synonym": [
                    "Load",
                    "Size",
                    "Load size"
                  ],
                  "lang": "en"
                }
              ],
              "settings": [
                {
                  "setting_name": "small_key",
                  "setting_values": [
                    {
                      "setting_synonym": [
                        "Small",
                        "Half"
                      ],
                      "lang": "en"
                    }
                  ]
                },
                {
                  "setting_name": "large_key",
                  "setting_values": [
                    {
                      "setting_synonym": [
                        "Large",
                        "Full"
                      ],
                      "lang": "en"
                    }
                  ]
                }
              ],
              "ordered": true
            }
          ],
          "pausable": true
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Phản hồi QUERY mẫu

Yêu cầu
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Câu trả lời
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "on": true,
        "isRunning": true,
        "isPaused": false,
        "currentRunCycle": [
          {
            "currentCycle": "rinse",
            "nextCycle": "spin",
            "lang": "en"
          }
        ],
        "currentTotalRemainingTime": 600,
        "currentCycleRemainingTime": 300,
        "currentModeSettings": {
          "load_key": "small_key"
        }
      }
    }
  }
}

Lệnh EXECUTE mẫu

OnOff

Để biết thêm thông tin chi tiết về các tham số lệnh, hãy xem tài liệu tham khảo về action.devices.traits.OnOff.

Yêu cầu
{
  "requestId": "6894439706274654516",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.OnOff",
                "params": {
                  "on": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Câu trả lời
{
  "requestId": "6894439706274654516",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "on": true
        }
      }
    ]
  }
}

StartStop

Để biết thêm thông tin chi tiết về các tham số lệnh, hãy xem tài liệu tham khảo về action.devices.traits.StartStop.

Yêu cầu
{
  "requestId": "6894439706274654518",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.StartStop",
                "params": {
                  "start": true
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Câu trả lời
{
  "requestId": "6894439706274654518",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "isRunning": true,
          "isPaused": false
        }
      }
    ]
  }
}

SetModes

Để biết thêm thông tin chi tiết về các tham số lệnh, hãy xem tài liệu tham khảo về action.devices.traits.Modes.

Yêu cầu
{
  "requestId": "6894439706274654522",
  "inputs": [
    {
      "intent": "action.devices.EXECUTE",
      "payload": {
        "commands": [
          {
            "devices": [
              {
                "id": "123"
              }
            ],
            "execution": [
              {
                "command": "action.devices.commands.SetModes",
                "params": {
                  "updateModeSettings": {
                    "load_key": "large_key"
                  }
                }
              }
            ]
          }
        ]
      }
    }
  ]
}
Câu trả lời
{
  "requestId": "6894439706274654522",
  "payload": {
    "commands": [
      {
        "ids": [
          "123"
        ],
        "status": "SUCCESS",
        "states": {
          "online": true,
          "currentModeSettings": {
            "load_key": "large_key"
          }
        }
      }
    ]
  }
}

Thiết bị LỖI

Xem danh sách toàn bộ lỗi và ngoại lệ.