Giản đồ đặc điểm chế độ nhà thông minh

action.devices.traits.Modes – Thuộc tính này bao gồm tất cả chế độ hiện có và chế độ cài đặt dành riêng cho chế độ cho một thiết bị.

Đặc điểm này thuộc về mọi thiết bị có số lượng chế độ "n chiều" tuỳ ý, trong đó các chế độ và chế độ cài đặt cho mỗi chế độ là tuỳ ý và dành riêng cho từng thiết bị hoặc loại thiết bị. Mỗi chế độ có nhiều chế độ cài đặt, nhưng mỗi lần chỉ có thể chọn một chế độ; máy sấy không thể ở chế độ "dịu", "bình thường" và "nặng" cùng một lúc. Một chế độ cài đặt chỉ có thể bật hoặc tắt thuộc thuộc tính Toggles.

Ví dụ: máy giặt có thể có các chế độ cài đặt cho kích thước tải và nhiệt độ. Cả hai đều là chế độ vì chúng độc lập với nhau, nhưng mỗi chế độ chỉ có thể ở một trạng thái tại một thời điểm. Người dùng có thể đặt một chế độ như nhiệt độ một cách rõ ràng bằng lệnh như Đặt nhiệt độ của máy giặt thành lạnh.

Một số chế độ được "sắp xếp" và cũng có thể được điều chỉnh bằng từ ngữ lên/xuống, tăng/giảm. Ví dụ: kích thước tải (nhỏ, vừa, lớn) và nhiệt độ được sắp xếp rõ ràng (lưu ý rằng nhiệt độ không phải là nhiệt kế thực tế có mục tiêu dạng số, như trên các thiết bị khác), nhưng loại tải (dịu, bình thường, len, v.v.) có thể không được sắp xếp.

Thuộc tính này bao gồm một hoặc nhiều chế độ riêng lẻ mà người dùng có thể đặt. Nhìn chung, bạn nên sử dụng các chế độ này cho chức năng không liên kết với hành vi khác của thiết bị. Hành vi được liên kết, chẳng hạn như bật hoặc tắt chính thiết bị, phải sử dụng các đặc điểm cụ thể hơn (ví dụ: thermostatMode trong đặc điểm TemperatureSetting).

Thuộc tính thiết bị

Các thiết bị có đặc điểm này có thể báo cáo các thuộc tính sau đây trong quá trình thực hiện thao tác SYNC. Để tìm hiểu thêm về cách xử lý ý định SYNC, hãy xem phần Thực hiện ý định.

Thuộc tính Loại Mô tả
availableModes Mảng

Bắt buộc.

Danh sách các chế độ có sẵn.

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

Chế độ có sẵn.

name String

Bắt buộc.

Tên nội bộ của chế độ, sẽ được dùng trong các lệnh và trạng thái. Cách này có thể không thân thiện với người dùng và sẽ được chia sẻ trên tất cả ngôn ngữ.

name_values Mảng

Bắt buộc.

Từ đồng nghĩa của chế độ trong từng ngôn ngữ được hỗ trợ.

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

Từ đồng nghĩa của chế độ trong một ngôn ngữ nhất định.

name_synonym Mảng

Bắt buộc.

Từ đồng nghĩa của chế độ. Chuỗi đầu tiên trong danh sách này được dùng làm tên chuẩn của cấp độ trong ngôn ngữ đó.

[item, ...] String

Tên từ đồng nghĩa.

lang String

Bắt buộc.

Mã ngôn ngữ (ISO 639-1). Xem các ngôn ngữ được hỗ trợ.

settings Mảng

Bắt buộc.

Các chế độ cài đặt được hỗ trợ cho chế độ này.

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

Chế độ cài đặt được hỗ trợ.

Cần có ít nhất 2 mục.

setting_name String

Bắt buộc.

Tên nội bộ của chế độ cài đặt, sẽ được dùng trong các lệnh và trạng thái. Cách này có thể không thân thiện với người dùng và sẽ được chia sẻ trên tất cả ngôn ngữ.

setting_values Mảng

Bắt buộc.

Từ đồng nghĩa của chế độ cài đặt trong từng ngôn ngữ được hỗ trợ.

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

Từ đồng nghĩa của chế độ cài đặt bằng một ngôn ngữ nhất định.

setting_synonym Mảng

Bắt buộc.

Từ đồng nghĩa của chế độ cài đặt. Chuỗi đầu tiên trong danh sách này được dùng làm tên chuẩn của cấp độ trong ngôn ngữ đó.

[item, ...] String

Tên từ đồng nghĩa.

lang String

Bắt buộc.

Mã ngôn ngữ (ISO 639-1). Xem các ngôn ngữ được hỗ trợ.

ordered Boolean

(Mặc định: false)

Nếu bạn đặt giá trị này thành true, thì cú pháp bổ sung cho logic tăng/giảm sẽ được áp dụng, theo thứ tự (tăng dần) của mảng cài đặt.

commandOnlyModes Boolean

(Mặc định: false)

Cho biết liệu thiết bị có hỗ trợ giao tiếp một chiều (true) hay hai chiều (false) hay không. Đặt thuộc tính này thành true nếu thiết bị không thể phản hồi ý định QUERY hoặc Báo cáo trạng thái cho đặc điểm này.

queryOnlyModes Boolean

(Mặc định: false)

Bắt buộc nếu thiết bị hỗ trợ chỉ thực thi truy vấn. Thuộc tính này cho biết liệu bạn chỉ có thể truy vấn thông tin trạng thái của thiết bị và không thể điều khiển thiết bị hay không.

Ví dụ

Thiết bị có nhiều chế độ và chế độ cài đặt.

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "Load",
            "Size",
            "Load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Small",
                "Half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Medium",
                "Normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Large",
                "Full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "Temperature",
            "Temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Hot",
                "White"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Warm",
                "Color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Cold",
                "Delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

Thiết bị có chế độ chỉ có lệnh.

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "Light",
            "Lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Day",
                "Bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Night",
                "Dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Reading",
                "Ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

Trạng thái thiết bị

Các thực thể có đặc điểm này có thể báo cáo các trạng thái sau đây trong quá trình thực hiện thao tác QUERY. Để tìm hiểu thêm về cách xử lý ý định QUERY, hãy xem phần Thực hiện ý định.

Tiểu bang Loại Mô tả
currentModeSettings Đối tượng

Bắt buộc.

Cặp khoá/giá trị có chế độ name của thiết bị làm khoá và setting_name hiện tại làm giá trị.

<string> String

Hiện tại setting_name.

Ví dụ

Thiết bị đang ở chế độ nào?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

LỆNH của thiết bị

Các thiết bị có đặc điểm này có thể phản hồi các lệnh sau đây trong quá trình hoạt động EXECUTE. Để tìm hiểu thêm về cách xử lý ý định EXECUTE, hãy xem phần Thực hiện ý định.

action.devices.commands.SetModes

Cập nhật chế độ cài đặt.

Thông số

Thông số Loại Mô tả
updateModeSettings Đối tượng

Bắt buộc.

Cặp khoá/giá trị có chế độ name của thiết bị làm khoá và setting_name mới làm giá trị.

<string> String

setting_name mới.

Ví dụ

Đặt thành tải lớn.

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

Câu lệnh mẫu

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

LỖI thiết bị

Xem danh sách đầy đủ lỗi và ngoại lệ.