スマートホームの Volume トレイトのスキーマ
action.devices.traits.Volume
- このトレイトは、音量を変更(特定のレベル、ミュート、ミュート解除など)できるデバイスに使用します。
デバイスの属性
このトレイトを持つデバイスは、SYNC
オペレーションの一部として次の属性をレポートできます。SYNC
インテントの処理方法については、インテントのフルフィルメントをご覧ください。
属性 | タイプ | 説明 |
---|---|---|
volumeMaxLevel |
整数 |
必須。 ベースラインを 0(ミュート)とした場合の最大音量レベル。アシスタントは、それに応じて副詞コマンドを調整します(例: 「テレビをもう少し大きくして」)。 |
volumeCanMuteAndUnmute |
ブール値 |
必須。 デバイスが音量をミュートおよびミュート解除できるかどうかを示します。ミュートは別のオプションです。「ミュート」動作は前の音量を記憶している間、音量を 0 にして、ミュートを解除すると元の音量に戻ります。これは音量の状態に反映されます。音量が 5 のときにユーザーがミュートした場合、音量は 5 のままで |
volumeDefaultPercentage |
整数 |
(デフォルト: ユーザーまたはメーカーが定義したデフォルトの音量(パーセンテージ)です。スケールは 0~100 にする必要があります。 |
levelStepSize |
整数 |
(デフォルト: 「<device_name> のボリュームアップ」のような相対的なボリュームクエリのデフォルトのステップサイズ。 |
commandOnlyVolume |
ブール値 |
(デフォルト: デバイスが一方向(true)または双方向(false)の通信を使用して動作しているかどうかを示します。たとえば、リクエスト送信後にコントローラが新しいデバイスの状態を確認できる場合、このフィールドは false になります。リクエストが正常に実行されたかどうかを確認できない場合や、デバイスの状態を取得できない場合(デバイスが従来の赤外線リモコンの場合など)は、このフィールドを true に設定します。 |
例
ミュートして現在の状態を報告するスピーカー デバイス
{ "volumeMaxLevel": 11, "volumeCanMuteAndUnmute": true, "levelStepSize": 2, "commandOnlyVolume": false, "volumeDefaultPercentage": 6 }
デバイスのステータス
このトレイトを持つエンティティは、QUERY
オペレーションの一部として次の状態をレポートできます。QUERY
インテントの処理方法については、インテントのフルフィルメントをご覧ください。
状態 | タイプ | 説明 |
---|---|---|
currentVolume |
整数 |
必須。 現在の音量のパーセンテージ。 |
isMuted |
ブール値 |
|
例
ミュートして現在の状態を報告するスピーカー デバイス
{ "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 |
整数 |
必須。 新しいボリューム( |
例
スピーカー デバイスの絶対音量を設定する
{ "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
コマンドを受け取ります。