ApsaraVideo Live は、アップストリーミングステータス、ライブストリーム録画、ライブストリームスナップショット、およびコンテンツモデレーションのコールバックを提供します。このトピックでは、ApsaraVideo Live コンソールでこれらのコールバックを構成する方法について説明します。
使用上の注意
ApsaraVideo Live は、HTTP および HTTPS コールバックを使用したイベント通知をサポートしています。 コールバックメッセージを受信するための HTTP サービスをデプロイし、ApsaraVideo Live コンソールを使用するか、API オペレーションを呼び出すことによって、コールバック URL を構成する必要があります。
アップストリーミングが開始または中断されると、ApsaraVideo Live は指定されたコールバック URL に HTTP GET リクエストを送信します。 特定のイベント内容は URL パラメータに含まれています。
他のイベントがトリガーされると、ApsaraVideo Live は指定されたコールバック URL に HTTP POST リクエストを送信します。 特定のイベント内容は、JSON 形式のリクエスト本文に含まれています。
シナリオ
ライブストリーミング中にイベントがトリガーされると、Alibaba Cloud はサーバーにリクエストを送信し、サーバーはリクエストに応答します。 リクエストの検証に合格すると、JSON 形式のデータを含むコールバックメッセージが返されます。
ApsaraVideo Live は、アップストリーミングステータス、ライブストリーム録画(オンデマンド録画)、ライブストリームスナップショット、コンテンツモデレーション(ビデオモデレーションとオーディオモデレーション)などのイベントのコールバックをサポートしています。 さまざまなコールバックイベントのコールバックパラメータと例については、「コールバックの管理」をご参照ください。
制限
コールバック URL には識別子は必要ありませんが、アクセス可能である必要があります。 次の応答ルールが適用されます。
特定のタイムアウト期間内に URL から応答が返されない場合、ApsaraVideo Live は URL へのアクセスを再試行します。 現在のタイムアウト期間は 5 秒です。 5 秒以内に応答が返されない場合、ApsaraVideo Live は 1 秒間隔で最大 5 回 URL へのアクセスを再試行します。
コールバックの種類によって、構成の制限が異なります。
アップストリーミングコールバックは、アップストリーミングドメインに対してのみ構成および変更できます。
録画コールバック、スナップショットコールバック、ビデオモデレーションコールバック、およびオーディオモデレーションコールバックは、ストリーミングドメインに対してのみ構成および変更できます。
機能の説明
コールバックは、アップストリーミングコールバックとストリーミングコールバックに分けられます。
アップストリーミングコールバック: アップストリーミングドメインに対して アップストリーミングコールバック と コールバック認証 を構成できます。
ストリーミングコールバック: ストリーミングドメインに対して、録画コールバック、スナップショットコールバック、ビデオモデレーションコールバック、オーディオモデレーションコールバック などのストリーミングコールバックを構成できます。
OSS での録画コールバックレコードとコールバックコンテンツを表示できます。 詳細については、「コールバックレコードの表示」をご参照ください。
手順
- ApsaraVideo Live コンソール にログインします。
左側のナビゲーションウィンドウで、[機能管理] > [コールバック] を選択します。 [コールバック] ページが表示されます。
構成するアップストリーミングドメインまたはストリーミングドメインを選択します。 アップストリーミングドメインはアップストリーミングコールバックをサポートし、ストリーミングドメインは録画コールバック、スナップショットコールバック、ビデオモデレーションコールバック、およびオーディオモデレーションコールバックをサポートします。
[コールバック設定] タブで、コールバックを構成します。
アップストリーミングコールバック
[アップストリーミングコールバック] をオンにします。
コールバックパラメータを構成します。
パラメータ
説明
コールバックタイプ
アップストリーミングと中断: ドメイン名でのアップストリーミングの成功と中断について通知します。
例外: ドメイン名でのアップストリーミング例外イベントについて通知します。
アップストリーミング/中断コールバック URL または 例外コールバック URL
アップストリーミング/中断コールバック URL: コールバック URL は独自の URL です。 ストリームがアップストリーミングまたは中断されると、ApsaraVideo Live はこの URL に HTTP GET リクエストを送信します。 特定のコンテンツは URL パラメータを使用して配信されます。
例外コールバック URL: コールバック URL は独自の URL です。 アップストリーミング例外が発生すると、ApsaraVideo Live はこの URL に HTTP POST リクエストを送信します。 特定のコンテンツは JSON 本文を使用して配信されます。
コールバック認証
コールバック URL の認証を有効にするかどうかを指定します。 認証を有効にするには、スイッチをオンにして、[認証キー] を指定します。
[OK] をクリックします。
コールバックメソッドとパラメータについては、「アップストリーミングのコールバック」をご参照ください。 SetLiveStreamsNotifyUrlConfig オペレーションを呼び出して、アップストリーミングコールバックを構成することもできます。
録画コールバック
[録画コールバック] をオンにします。
コールバックパラメータを構成します。
パラメータ
説明
コールバック URL
コールバック URL は独自の URL です。 録画イベントが発生すると、ApsaraVideo Live はこの URL に HTTP POST リクエストを送信します。 特定のコンテンツは JSON 本文を使用して配信されます。
トリガーイベント
ファイル生成: 録画ファイルが生成されると、コールバックが起動されます。
ファイル生成と録画ステータス: 録画ファイルが生成されたとき、または録画が開始、一時停止、または再開されたときに、コールバックが起動されます。
オンデマンドコールバック URL
オンデマンド録画が構成されている場合、ライブストリームのアップストリーミングを開始すると、ApsaraVideo Live は指定されたオンデマンドコールバック URL に HTTP コールバックを送信します。 コールバックへの応答によって、ライブストリームを録画するかどうかが決まります。 デフォルトでは、このパラメータの値は
*
で、オンデマンド録画が無効になっていることを指定します。オンデマンドコールバック URL を指定する前に、AddLiveAppRecordConfig オペレーションを呼び出して録画ルールを構成する必要があります。 ルールでは、
OnDemand
パラメータは1
に設定されます。これは、HTTP コールバックメソッドを使用してオンデマンド録画が有効になっていることを示します。[OK] をクリックします。
コールバックメソッドとパラメータについては、「ライブストリーム録画のコールバック」をご参照ください。 AddLiveRecordNotifyConfig オペレーションを呼び出して、録画コールバックを構成することもできます。
スナップショットコールバック
[スナップショットコールバック] をオンにします。
コールバックパラメータを構成します。
パラメータ
説明
コールバック URL
コールバック URL は独自の URL です。 スナップショットイベントが発生すると、ApsaraVideo Live はこの URL に HTTP POST リクエストを送信します。 特定のコンテンツは JSON 本文を使用して配信されます。
コールバック認証
コールバック URL の認証を有効にするかどうかを指定します。 認証を有効にするには、スイッチをオンにして、[認証キー] を指定します。
コールバックメソッドとパラメータについては、「ライブストリームスナップショットのコールバック」をご参照ください。 AddLiveSnapshotNotifyConfig オペレーションを呼び出して、スナップショットコールバックを構成することもできます。
ビデオモデレーションコールバック
[ビデオモデレーションコールバック] をオンにします。
コールバック URL を指定します。
コールバック URL は独自の URL です。 ビデオモデレーションイベントが発生すると、ApsaraVideo Live はこの URL に HTTP POST リクエストを送信します。 特定のコンテンツは JSON 本文を使用して配信されます。
[OK] をクリックします。
コールバックメソッドとパラメータについては、「コンテンツモデレーションのコールバック」をご参照ください。 AddLiveDetectNotifyConfig オペレーションを呼び出して、ビデオモデレーションコールバックを構成することもできます。
一部のライブセンターのみがコンテンツモデレーション機能をサポートしています。 詳細については、「サポートされているリージョン」をご参照ください。
ビデオモデレーションコールバック通知は、問題のあるビデオに対してのみ返されます。 通知コンテンツには、関連するビデオスナップショットのモデレーション情報とストレージ情報が含まれています。 コールバックサーバーでコールバック情報を表示できます。 コールバック情報の形式と例については、「コンテンツモデレーションのコールバック」をご参照ください。
OSS で識別された違反を検索します。 モデレーションコールバック情報に基づいて、OSS コンソールで特定の違反を検索できます。
アプリケーション名とストリーム名に基づいて特定の違反を検索します。
ストリームのアップストリーミング日時に基づいて特定の違反を検索します。
オーディオモデレーションコールバック
[オーディオモデレーションコールバック] をオンにします。
コールバック URL を指定します。
コールバック URL は独自の URL です。 オーディオモデレーションイベントが発生すると、ApsaraVideo Live はこの URL に HTTP POST リクエストを送信します。 特定のコンテンツは JSON 本文を使用して配信されます。
[OK] をクリックします。
コールバックメソッドとパラメータについては、「コンテンツモデレーションのコールバック」をご参照ください。 AddLiveAudioAuditNotifyConfig オペレーションを呼び出して、オーディオモデレーションコールバックを構成することもできます。
オーディオモデレーションコールバック通知は、問題のあるオーディオに対してのみ返されます。 通知コンテンツには、オーディオのテキスト情報と過去 1 分間のコンテキストが含まれています。 コールバックサーバーでコールバック情報を表示できます。 コールバック情報の形式と例については、「コンテンツモデレーションのコールバック」をご参照ください。
OSS で識別された違反を検索します。 モデレーションコールバック情報に基づいて、OSS コンソールで特定の違反を検索できます。
アプリケーション名とストリーム名に基づいて特定の違反を検索します。
ストリームのアップストリーミング日時に基づいて特定の違反を検索します。
アップストリーミングコールバックロジック
アップストリーミングステータスのコールバックロジック:
リアルタイムメッセージングプロトコル (RTMP) を介したアップストリーミング中、ApsaraVideo Live は、ApsaraVideo Live が OnPublish メッセージを受信してから 2 秒以内にアップストリーミングクライアントが接続を閉じるかどうかを確認します。 アップストリーミングクライアントが接続を閉じない場合、ApsaraVideo Live はアップストリーミングの成功に関するコールバック通知を送信します。
たとえば、アップストリーミングドメイン A とストリーミングドメイン B があるとします。ストリーミングドメイン B に対して、通常のストリームフェッチングとトリガーされたストリームフェッチングを構成できます。 ストリームフェッチングステータスに関するコールバック通知を受信するには、アップストリーミングドメイン A のアップストリーミングコールバックを構成します。構成後、ApsaraVideo Live はアップストリーミングステータスと同じコールバックロジックを使用して、ストリーミングドメイン B のストリームフェッチングステータスに関するコールバック通知を送信します。デフォルトでは、接続が確立されてから 2 秒以内にストリームフェッチングクライアントが接続を閉じない場合、ApsaraVideo Live はストリームフェッチングの成功に関するコールバック通知を送信します。
コールバック通知とアクティブなアップストリーミングのリストに基づいてアップストリーミングまたはフェッチングが成功したと判断した後でのみ、ストリーミング URL を配信することをお勧めします。
コールバック認証
デフォルトでは、アップストリーミングコールバックの認証は無効になっています。 アップストリーミングコールバック URL を指定するときに、この機能を有効にできます。 この機能を有効にすると、次の認証ロジックが適用されます。
ApsaraVideo Live がコールバックリクエストを開始すると、ALI-LIVE-TIMESTAMP フィールドと ALI-LIVE-SIGNATURE フィールドが HTTP(S) リクエストヘッダーに含まれます。 コールバックメッセージ受信サーバーは、これらのフィールドを認証および署名します。 ALI-LIVE-SIGNATURE の値は、次の式に基づいて計算されます。
ALI-LIVE-SIGNATURE = MD5SUM (MD5CONTENT) MD5CONTENT = ドメイン名|ALI-LIVE-TIMESTAMP 値|暗号キー
ドメイン名は、コールバック URL を構成するアップストリーミングドメインです。 暗号キーは、コールバック URL に指定する暗号キーです。
コールバックメッセージを受信した後、コールバックメッセージ受信サーバーは、コールバックのドメイン名、ALI-LIVE-TIMESTAMP ヘッダーの値、および上記の形式の暗号キーを連結します。 サーバーは文字列の MD5 値を計算して、暗号化された文字列を取得します。 次に、サーバーは暗号化された文字列を、ApsaraVideo Live によって開始された HTTP または HTTPS リクエストの ALI-LIVE-SIGNATURE ヘッダーの値と比較します。 2 つの値が異なる場合、リクエストは無効です。