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

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

デバイスの属性

このトレイトを持つデバイスは、以下をレポートすることがあります。 SYNC オペレーションの一部として使用できます。学習内容 SYNC インテントの処理の詳細については、以下をご覧ください。 インテント フルフィルメント

属性 タイプ 説明
volumeMaxLevel 整数

必須。

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

volumeCanMuteAndUnmute ブール値

必須。

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

volumeDefaultPercentage 整数

(デフォルト: 40)。

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

levelStepSize 整数

(デフォルト: 1)。

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

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 整数

必須。

新しいボリュームを 0 から volumeMaxLevel に変更しました。

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

{
  "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 コマンドを受け取ります。 すでに最小ボリュームになっています