Схема черт умного дома

action.devices.traits.Volume — эта черта относится к устройствам, которые могут изменять громкость (например, устанавливать громкость на определенный уровень, отключать или включать звук).

АТРИБУТЫ устройства

Устройства с этой чертой могут сообщать о следующих атрибутах как часть операции SYNC . Дополнительные сведения об обработке намерений SYNC см. в разделе Выполнение намерений .

Атрибуты Тип Описание
volumeMaxLevel Целое число

Необходимый.

Максимальный уровень громкости при базовой линии 0 (отключение звука). Ассистент соответствующим образом корректирует наречные команды (например, «сделай телевизор немного громче»).

volumeCanMuteAndUnmute логический

Необходимый.

Указывает, может ли устройство отключать и включать звук. Отключение звука — это отдельная опция, так как поведение «отключение звука» переводит громкость в 0, сохраняя предыдущую громкость, так что включение звука восстанавливает ее. Это отражается в состоянии громкости: если громкость равна 5 и пользователь отключает звук, громкость остается равной 5, а isMuted имеет значение true.

volumeDefaultPercentage Целое число

(По умолчанию: 40 )

Объем (в процентах) для объема по умолчанию, определяемый пользователем или производителем. Шкала должна быть от 0 до 100.

levelStepSize Целое число

(По умолчанию: 1 )

Размер шага по умолчанию для запросов относительного объема, таких как «увеличение громкости на <имя_устройства>».

commandOnlyVolume логический

(По умолчанию: false )

Указывает, работает ли устройство с использованием односторонней (верной) или двусторонней (ложной) связи. Например, если контроллер может подтвердить новое состояние устройства после отправки запроса, это поле будет ложным. Если невозможно подтвердить успешное выполнение запроса или получить состояние устройства (например, если устройство является традиционным инфракрасным пультом), установите для этого поля значение true.

Примеры

Громкоговоритель, который можно отключить и который сообщает о текущем состоянии

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

СОСТОЯНИЯ устройства

Сущности с этим признаком могут сообщать о следующих состояниях как часть операции QUERY . Дополнительные сведения об обработке намерений QUERY см. в разделе Выполнение намерений .

состояния Тип Описание
currentVolume Целое число

Необходимый.

Текущий объем в процентах. Он должен быть между >0 и volumeMaxLevel .

isMuted логический

Требуется, если для атрибута volumeCanMuteAndUnmute установлено значение true. Истинно, если звук устройства отключен; ложно в противном случае. Если isMuted имеет значение true, устройство по-прежнему возвращает currentVolume для запомненной точки.

Примеры

Громкоговоритель, который можно отключить и который сообщает о текущем состоянии

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

КОМАНДЫ устройства

Устройства с этой чертой могут отвечать на следующие команды как часть операции EXECUTE . Дополнительные сведения об обработке намерений EXECUTE см. в разделе Выполнение намерений .

action.devices.commands.mute

Отключает или включает звук устройства.

Параметры

Параметры Тип Описание
mute логический

Необходимый.

Отключить или включить звук устройства.

Примеры

Отключить звук динамика

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

action.devices.commands.setVolume

Установите требуемый уровень громкости на основе volumeMaxLevel .

Параметры

Параметры Тип Описание
volumeLevel Целое число

Необходимый.

Новый том, от 0 до volumeMaxLevel .

Примеры

Установите абсолютную громкость устройства динамика

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

action.devices.commands.volumeRelative

Установите громкость вверх или вниз на n шагов на основе volumeMaxLevel . Для команд, использующих относительный масштаб, Помощник выберет n соответствующим образом, чтобы масштабировать до доступных шагов. Например, параметр «Сделать телевизор намного громче» задает большее количество шагов, чем параметр «Сделать телевизор чуть громче» .

Параметры

Параметры Тип Описание
relativeSteps Целое число

Необходимый.

отрицательный для «уменьшения».

Примеры

Установить относительную громкость динамика в командном режиме

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

ОШИБКИ устройства

См. полный список ошибок и исключений .
  • volumeAlreadyMax : Устройство получает команду VolumeUp , когда оно уже находится на максимальной громкости.
  • volumeAlreadyMin : устройство получает команду VolumeDown , когда оно уже находится на самом низком уровне громкости.