Giản đồ đặc điểm âm lượng của nhà thông minh

action.devices.traits.Volume – Đặc điểm này thuộc về những thiết bị có thể thay đổi âm lượng (ví dụ: đặt âm lượng ở một mức nhất định, tắt tiếng hoặc bật tiếng).

THUỘC TÍNH của 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 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ả
volumeMaxLevel Số nguyên

Bắt buộc.

Mức âm lượng tối đa, giả sử mức cơ sở là 0 (tắt tiếng). Trợ lý sẽ điều chỉnh các lệnh trạng từ (ví dụ: "tăng âm lượng TV lên một chút") cho phù hợp.

volumeCanMuteAndUnmute Boolean

Bắt buộc.

Cho biết liệu thiết bị có thể tắt tiếng và bật tiếng hay không. Tắt tiếng là một lựa chọn riêng biệt vì hành vi "tắt tiếng" sẽ đưa âm lượng về 0 trong khi vẫn ghi nhớ âm lượng trước đó để khi bật tiếng, âm lượng sẽ được khôi phục. Điều này được phản ánh trong trạng thái âm lượng – nếu âm lượng là 5 và người dùng tắt tiếng, thì âm lượng vẫn là 5 và isMuted là true.

volumeDefaultPercentage Số nguyên

(Mặc định: 40)

Âm lượng (tính bằng phần trăm) cho âm lượng mặc định do người dùng hoặc nhà sản xuất xác định. Thang điểm phải nằm trong khoảng từ 0 đến 100.

Giá trị phải nằm trong khoảng từ 0 đến 100.

levelStepSize Số nguyên

(Mặc định: 1)

Kích thước bước mặc định cho các truy vấn âm lượng tương đối như "tăng âm lượng trên <device_name>.

commandOnlyVolume Boolean

(Mặc định: false)

Cho biết liệu thiết bị có hoạt động bằng cách sử dụng giao tiếp một chiều (true) hay hai chiều (false). Ví dụ: nếu bộ điều khiển có thể xác nhận trạng thái thiết bị mới sau khi gửi yêu cầu, thì trường này sẽ là false. Nếu không thể xác nhận liệu yêu cầu có được thực thi thành công hay không hoặc không thể lấy trạng thái của thiết bị (ví dụ: nếu thiết bị là một điều khiển từ xa hồng ngoại truyền thống), hãy đặt trường này thành true.

Ví dụ

Thiết bị loa có thể tắt tiếng và báo cáo trạng thái hiện tại

{
  "volumeMaxLevel": 11,
  "volumeCanMuteAndUnmute": true,
  "levelStepSize": 2,
  "commandOnlyVolume": false,
  "volumeDefaultPercentage": 6
}

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 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ả
currentVolume Số nguyên

Bắt buộc.

Tỷ lệ phần trăm âm lượng hiện tại. Giá trị này phải nằm trong khoảng từ >0 đến volumeMaxLevel.

Giá trị tối thiểu: 0.

isMuted Boolean

Bắt buộc nếu thuộc tính volumeCanMuteAndUnmute được đặt thành true. True nếu thiết bị bị tắt tiếng; false nếu không. Nếu isMuted là true, thiết bị vẫn trả về currentVolume cho điểm đã ghi nhớ.

Ví dụ

Thiết bị loa có thể tắt tiếng và báo cáo trạng thái hiện tại

{
  "currentVolume": 5,
  "isMuted": false
}

LỆNH trên 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 thao tác 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.mute

Tắt hoặc bật tiếng thiết bị.

Thông số

Thông số Loại Mô tả
mute Boolean

Bắt buộc.

Có tắt tiếng hay bật tiếng thiết bị hay không.

Ví dụ

Tắt tiếng thiết bị loa

{
  "command": "action.devices.commands.mute",
  "params": {
    "mute": true
  }
}

action.devices.commands.setVolume

Đặt âm lượng ở mức yêu cầu, dựa trên volumeMaxLevel.

Thông số

Thông số Loại Mô tả
volumeLevel Số nguyên

Bắt buộc.

Số lượng mới, từ 0 đến volumeMaxLevel.

Giá trị tối thiểu: 0.

Ví dụ

Đặt âm lượng tuyệt đối của thiết bị loa

{
  "command": "action.devices.commands.setVolume",
  "params": {
    "volumeLevel": 6
  }
}

action.devices.commands.volumeRelative

Đặt âm lượng tăng hoặc giảm n bước, dựa trên volumeMaxLevel. Đối với các lệnh sử dụng thang đo tương đối, Trợ lý sẽ chọn n một cách thích hợp để điều chỉnh theo các bước có sẵn. Ví dụ: Lệnh Tăng âm lượng TV lên nhiều sẽ đặt số bước cao hơn so với lệnh Tăng âm lượng TV lên một chút.

Thông số

Thông số Loại Mô tả
relativeSteps Số nguyên

Bắt buộc.

âm cho "giảm".

Ví dụ

Đặt âm lượng tương đối của thiết bị loa ở chế độ chỉ dùng lệnh

{
  "command": "action.devices.commands.volumeRelative",
  "params": {
    "relativeSteps": -1
  }
}

LỖI thiết bị

Xem danh sách đầy đủ các lỗi và trường hợp ngoại lệ.
  • volumeAlreadyMax: Thiết bị nhận được lệnh VolumeUp khi đã ở âm lượng cao nhất.
  • volumeAlreadyMin: Thiết bị nhận được lệnh VolumeDown khi đang ở mức âm lượng thấp nhất.