Notificationsインターフェース(v1.0)
Notificationsインターフェースを使用すると、AVSからユーザーに、Alexaドメインや有効化されたAlexaスキルで新しいコンテンツが利用可能であることを通知することができます。具体的に、このインターフェースでは、クライアントにユーザーに対してビジュアルおよびオーディオのインジケーターをレンダリングしたり、クリアしたりするよう指示する2つのディレクティブが提供されます。
このインターフェースは、通知の内容は提供しません。ユーザーに新しいコンテンツが利用可能であることを知らせるオーディオおよびビジュアルのインジケーターのみを提供します。たとえば、ユーザーが「アレクサ、未確認の通知をおしえて」または「アレクサ、どんな通知がある?」と尋ねることで未確認の通知を取得できるようになった時点で、製品が、黄色のLEDを点滅させてオーディオファイルを再生するなどが想定されます。
フローと配信、おやすみモード設定、UXの考慮事項については、Notificationsの概要を参照してください。
機能API
Notificationsインターフェースのバージョン1.0を使用するには、機能APIの呼び出し内で宣言する必要があります。詳細については、機能APIを参照してください。
オブジェクトのサンプル
{ "type": "AlexaInterface", "interface": "Notifications", "version": "1.0" }
Notificationsのコンテキスト
Alexaは、コンテキストが必要な各イベントで、クライアントから製品の通知インジケーターの状態がレポートされることを想定しています。
コンテキストのレポートの詳細については、コンテキストの概要を参照してください。
サンプルメッセージ
{ "header": { "namespace": "Notifications", "name": "IndicatorState" }, "payload": { "isEnabled": {{BOOLEAN}}, "isVisualIndicatorPersisted": {{BOOLEAN}} } }
ペイロードのパラメーター
パラメーター | 説明 | 型 |
---|---|---|
isEnabled | ユーザーに伝えていない新規または保留中の通知があることを示します。 注:消去されていないインジケーターはすべて有効と見なされます。 |
ブール値 |
isVisualIndicatorPersisted | 最後に受信したpersistVisualIndicator ディレクティブのSetIndicator の値に対応します。最後に受信したディレクティブのpersistVisualIndicator がtrue だった場合、isVisualIndicatorPersisted はtrue である必要があります。 |
ブール値 |
SetIndicatorディレクティブ
このディレクティブは、通知が取得可能になると、クライアントにビジュアルおよびオーディオのインジケーターをレンダリングするよう指示します。クライアントは短期間の間に、複数のSetIndicator
ディレクティブを受信する場合があります。ディレクティブが重なった場合、以下のルールを考慮します。
- 現在のディレクティブの
assetId
が、受信中のディレクティブのassetId
と一致する場合は、アセットを再生しないでください。 - 現在のディレクティブの
assetId
が、受信中のディレクティブのassetId
と一致しない場合は、現在のアセットの再生を完了した後に受信中のディレクティブのアセットを再生してください。
サンプルメッセージ
{ "directive": { "header": { "namespace": "Notifications", "name": "SetIndicator", "messageId": "{{STRING}}" }, "payload": { "persistVisualIndicator": {{BOOLEAN}}, "playAudioIndicator": {{BOOLEAN}}, "asset": { "assetId": "{{STRING}}", "url": "{{STRING}}" } } } }
ヘッダーのパラメーター
パラメーター | 説明 | 型 |
---|---|---|
messageId | 特定のメッセージを表すのに使用する一意のIDです。 | 文字列 |
ペイロードのパラメーター
パラメーター | 説明 | 型 |
---|---|---|
persistVisualIndicator | このディレクティブを処理した後に、製品が持続的なビジュアルインジケーター(該当する場合)を表示する必要があることを表します。 | ブール値 |
playAudioIndicator | このディレクティブが処理されたときに、製品がオーディオインジケーターを再生する必要があることを表します。 | ブール値 |
asset | playAudioIndicator がtrue の場合に再生する必要のあるオーディオアセットについての情報が含まれます。 |
オブジェクト |
asset.assetId | アセットの一意の識別子です。 | 文字列 |
asset.url | アセットはクライアントによってダウンロードされキャッシュされることがあります。提供されるURLは、60分間有効です。製品がオフラインの場合、またはアセットを利用できない場合、製品はデフォルトのインジケーターを再生する必要があります。 | 文字列 |
ClearIndicatorディレクティブ
このディレクティブは、クライアントにすべてのアクティブなビジュアルおよびオーディオのインジケーターをクリアするよう指示します。
- このディレクティブを受信したときにオーディオインジケーターを再生中の場合、すぐに再生を停止する必要があります。
- このディレクティブを受信したときにビジュアルインジケーターが設定されている場合、すぐにクリアする必要があります。
サンプルメッセージ
{ "directive": { "header": { "namespace": "Notifications", "name": "ClearIndicator", "messageId": "{{STRING}}" }, "payload": { } } }
ヘッダーのパラメーター
パラメーター | 説明 | 型 |
---|---|---|
messageId | 特定のメッセージを表すのに使用する一意のIDです。 | 文字列 |
ペイロードのパラメーター
このディレクティブのペイロードは空です。