スマートホームの Volume トレイトのスキーマ

action.devices.traits.Volume - このトレイトは、音量を変更できるデバイスに使用します(たとえば、音量レベルの設定、ミュートの設定と解除が可能なデバイス)。

デバイスの属性

このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

属性 タイプ 説明
volumeMaxLevel 整数

必須。

ベースラインを 0(ミュート)とした場合の最大音量レベル。アシスタントはそれに応じて、副詞コマンド(「テレビをもう少し大きくして」など)を調整します。

volumeCanMuteAndUnmute ブール値

必須。

デバイスが音量をミュートおよびミュート解除できるかどうかを示します。Mute は別のオプションです。「ミュート」動作は前の音量を記憶しながら音量を 0 にするため、ミュート解除すると元に戻ります。これは音量の状態に反映され、音量が 5 でユーザーがミュートした場合、音量は 5 のままで、isMuted が true になります。

volumeDefaultPercentage 整数

(デフォルト: 40

ユーザーまたはメーカーが定義したデフォルトの音量の音量(%)。スケールは 0~100 にする必要があります。

levelStepSize 整数

(デフォルト: 1

「<device_name> の音量を上げて」のような相対的な音量のクエリのデフォルトのステップサイズ。

commandOnlyVolume ブール値

(デフォルト: false

デバイスが一方向(true)または双方向(false)のいずれの通信を使用して動作しているかどうかを示します。たとえば、リクエストの送信後にコントローラが新しいデバイスの状態を確認できた場合、このフィールドは false になります。リクエストが正常に実行されたかどうかを確認できない場合、またはデバイスのステータスを取得できない場合(デバイスが従来の赤外線リモコンの場合など)は、このフィールドを true に設定します。

ミュート可能で現在の状態を報告するスピーカー デバイス

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

デバイスのステータス

このトレイトを持つエンティティは、QUERY オペレーションの一部として次のステータスを報告できます。QUERY インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

タイプ 説明
currentVolume 整数

必須。

現在の音量のパーセンテージ。>0volumeMaxLevel の範囲で指定してください。

isMuted ブール値

volumeCanMuteAndUnmute 属性が true に設定されている場合は必須です。デバイスがミュートされている場合は true。そうでない場合は false。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 整数

必須。

新しい音量、0volumeMaxLevel

スピーカー デバイスの絶対音量を設定する

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

action.devices.commands.volumeRelative

volumeMaxLevel に基づいて、音量を n ステップ上げるか、または下げます。相対的なスケールを使用するコマンドの場合、アシスタントは使用可能なステップに合わせて n を適切に選択します。たとえば、「テレビをもっと大きくして」は、「テレビをほんの少し大きくして」よりも多くのステップを設定します。

パラメータ

パラメータ タイプ 説明
relativeSteps 整数

必須。

「減少」の場合は負の数。

コマンドのみモードのスピーカー デバイスの相対音量を設定する

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

デバイスエラー

エラーと例外の全リストをご覧ください。
  • volumeAlreadyMax: すでに最大音量になっている場合、デバイスは VolumeUp コマンドを受け取ります。
  • volumeAlreadyMin: すでに最小音量になっている場合、デバイスは VolumeDown コマンドを受け取ります。