ApsaraVideo Live は、ライブストリームのアップストリーミングステータス、ライブ録画、オンデマンド録画、ライブスナップショット、および自動レビューのイベントコールバックを提供します。このトピックでは、これらのコールバックとそのパラメーターの設定方法について説明し、例を示します。
コールバックの概要
ライブストリーム中に特定のイベントがトリガーされると、Alibaba Cloud はお客様のサーバーにリクエストを送信します。お客様のサーバーはこのリクエストに応答する必要があります。サーバーがリクエストを正常に認証すると、イベントコールバック情報を含む JSON データパケットを受信します。
ApsaraVideo Live は、次のイベントのコールバックをサポートしています。
コールバックメソッド
ApsaraVideo Live は、HTTP および HTTPS Webhook を使用してイベント通知を送信します。HTTP サービスをデプロイしてコールバックメッセージを受信し、ApsaraVideo Live コンソールまたは API を使用して Webhook アドレスを設定できます。
一部の SSL 証明書には互換性がない場合があります。コールバックが失敗した場合は、HTTP Webhook の使用を試みることができます。
アップストリーミングまたは中断イベントが発生すると、ApsaraVideo Live サービスはこのアドレスに HTTP GET リクエストを送信します。リクエストの詳細は URL パラメーターとして送信されます。
他のイベントが発生すると、ApsaraVideo Live サービスはこのアドレスに HTTP POST リクエストを送信します。リクエストの詳細は JSON 本文で送信されます。
注意事項
Webhook URL には特別な識別子は必要ありませんが、パブリックにアクセスできる必要があります。お客様のサーバーは、この URL に送信されたリクエストに応答する必要があります。リクエストがタイムアウトした場合、ApsaraVideo Live はリクエストを再試行します。タイムアウト期間は 5 秒で、システムは 1 秒間隔で最大 5 回リクエストを再試行します。
ライブストリームのアップストリーミングコールバック
コンソールまたは API で Webhook アドレスを設定して、ドメイン名のアップストリーミングステータスに関する通知を受信できます。これらの通知は、アップストリーミングの成功、ストリームの中断、異常なアップストリーミングなどのイベントに関するものです。
ライブストリームのアップストリーミングコールバックの設定方法
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするドメイン名を選択します。[コールバック設定] タブで、[アップストリーミングコールバック] スイッチを有効にし、コールバックタイプとアップストリーミング Webhook アドレスを追加または変更します。詳細については、「アップストリーミングコールバック」をご参照ください。
API
インターフェイス
説明
リファレンス
SetLiveStreamsNotifyUrlConfig
アップストリーミングコールバックを設定します。
詳細については、「SetLiveStreamsNotifyUrlConfig」をご参照ください。
DescribeLiveStreamsNotifyUrlConfig
アップストリーミングコールバックの設定をクエリします。
DeleteLiveStreamsNotifyUrlConfig
アップストリーミングコールバックの設定を削除します。
詳細については、「DeleteLiveStreamsNotifyUrlConfig」をご参照ください。
推論ストリームコールバック
推論ストリームコールバックは、MultiDict にカプセル化されたパラメーターを提供します。
アップストリーミングおよび中断コールバックにおける公開ステータスのコールバックロジック
RTMP ストリームの場合、ApsaraVideo Live は、アップストリーミングクライアントが切断されない限り、On Publish メッセージを受信してから 2 秒以内にアップストリーミング成功のコールバックを送信します。
アップストリーミングドメイン A とストリーミングドメイン B があるシナリオを考えます。ドメイン B でのストリームフェッチング (スケジュールされたストリームフェッチングまたはオンデマンドのオリジンフェッチ) のコールバックが必要な場合は、ドメイン A で [ストリームアップストリーミングコールバック] を設定する必要があります。設定が完了すると、ドメイン B でのストリームフェッチングのコールバックロジックは、前のステップで説明したロジックと同じになります。デフォルトでは、接続が確立され、2 秒以内にアクティブに切断されない場合、ストリームフェッチングは成功したと見なされます。
説明アップストリーミングとプルが正常かどうかを判断するために、コールバックだけに依存しないでください。DescribeLiveStreamsOnlineList 操作を呼び出して、アクティブなストリームのリストをクエリする必要もあります。アップストリーミングが正常であることを確認した後にのみ、再生 URL を配信してください。
10 秒以上ライブセンターにストリームデータがプッシュされない場合、ApsaraVideo Live サービスは自動的にストリームを切断します。
推論ストリームコールバックのパラメーター
パラメーター
説明
action
イベント。
publish: アップストリーミング。
publish_done: ストリームの中断。
ip
アップストリーミングクライアントの IP アドレス。
id
StreamName。
app
アップストリーミングドメイン名。デフォルトでは、これはカスタムのアップストリーミングドメイン名です。アップストリーミングドメイン名がアタッチされていない場合、これはストリーミングドメイン名です。
appname
AppName。
time
UNIX タイムスタンプ。単位: 秒。
usrargs
ユーザー定義のアップストリーミングパラメーター。
node
ストリームを受信する CDN ノードまたはサーバーの名前。
height
解像度の高さ。単位: ピクセル。
説明解像度情報 (高さと幅) は、最初のコールバックでのみ生成されます。
width
解像度の幅。単位: ピクセル。
アップストリーミングステータスコールバックパラメーターの例:
http://1.1.X.X?action=publish&ip=192.168.0.1&id=world&app=example.aliyundoc.com&appname=liveApp****&time=1609220385&usrargs={user_parameters}& node=cdnvideocenter01020711****.cm3&height=720&width=1280ストリーム中断ステータスコールバックパラメーターの例:
http://1.1.X.X?action=publish_done&ip=192.168.0.0&id=world&app=example.aliyundoc.com&appname=liveApp****&time=1609220385&usrargs={user_parameters}& node=cdnvideocenter01020711****.cm3&height=720&width=1280異常なアップストリーミングイベントのコールバック
異常なアップストリーミングイベントコールバックパラメーター
パラメーター
説明
action
publish_exception_notify。
domain
アップストリーミングドメイン名。
appname
AppName。
stream
StreamName。
ip
アップストリーミングクライアントの IP アドレス。
time
コールバックの時間。
type
イベントタイプ。
event_time
イベントの発生時間。
異常タイプ
異常なアップストリーミングイベントコールバックパラメーターの例:
{ "action": "publish_exception_notify", "domain": "demo.aliyundoc.com", "appname": "liveApp****", "stream": "liveStream****", "ip": "141.01.****" "time": "1739760710" "type": "5002" "event_time": "1739760710" }
ライブストリームのアップストリーミングコールバックの認証
アップストリーミングコールバックの認証機能はデフォルトで無効になっています。アップストリーミング Webhook アドレスを設定するときに有効にできます。この機能を有効にすると、認証ロジックは次のようになります:
ApsaraVideo Live がコールバックリクエストを送信すると、HTTP または HTTPS リクエストヘッダーに
ALI-LIVE-TIMESTAMPおよびALI-LIVE-SIGNATUREフィールドが含まれます。お客様のサーバーはこれらのフィールドを使用して署名認証を行うことができます。ALI-LIVE-SIGNATUREの値は次のように計算されます:ALI-LIVE-SIGNATURE = MD5SUM(MD5CONTENT)MD5CONTENT = アップストリーミングドメイン名|ALI-LIVE-TIMESTAMP の値|認証キー説明アップストリーミングドメイン名は、Webhook URL が設定されているドメイン名です。認証キーは、アップストリーミング Webhook URL に設定するキーです。
サーバーがコールバックメッセージを受信すると、アップストリーミングドメイン名、
ALI-LIVE-TIMESTAMPの値、および認証キーを連結する必要があります。次に、連結された文字列の MD5 ハッシュを計算して署名文字列を生成します。サーバーは、生成された署名文字列を、ApsaraVideo Live からの HTTP または HTTPS リクエストヘッダーのALI-LIVE-SIGNATUREフィールドの値と比較する必要があります。2 つの文字列が一致しない場合、リクエストは無効と見なされます。
ライブストリームのアップストリーミングステータスコールバックの認証
デフォルトでは、アップストリーミングコールバックの認証は無効になっています。アップストリーミングコールバック URL を指定するときにこの機能を有効にできます。この機能を有効にすると、次の認証ロジックが適用されます:
ApsaraVideo Live がコールバックリクエストを開始すると、HTTP または HTTPS リクエストに
ALI-LIVE-TIMESTAMPおよびALI-LIVE-SIGNATUREヘッダーが含まれるため、コールバックメッセージ受信サーバーは署名を認証できます。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 つの値が異なる場合、リクエストは無効です。
ライブ録画コールバック
ライブ録画コールバックには、録画ステータスコールバック、ファイル生成コールバック、および録画エラーコールバックが含まれます。
ライブ録画コールバックの設定方法
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするドメイン名を選択します。[コールバック設定] タブで、[録画コールバック] スイッチを有効にし、Webhook アドレスを追加または変更します。詳細については、「録画コールバック」をご参照ください。
API
API 操作
説明
リファレンス
AddLiveRecordNotifyConfig
ドメインレベルの録画コールバック設定を追加します。
録画タスクステータスコールバックを有効にするには、NeedStatusNotify パラメーターを true に設定します。
詳細については、「AddLiveRecordNotifyConfig」をご参照ください。
DescribeLiveRecordNotifyConfig
ドメインレベルの録画コールバック設定をクエリします。
DeleteLiveRecordNotifyConfig
ドメインレベルの録画コールバック設定を削除します。
詳細については、「DeleteLiveRecordNotifyConfig」をご参照ください。
録画ステータスコールバック: このコールバックは、ファイルが録画を開始または停止したときに送信され、録画ステータスを示します。
録画ステータスコールバックパラメーター
パラメーター
説明
domain
録画に使用されるストリーミングドメイン名。
app
AppName。
stream
StreamName。
event
イベント名。
record_started: 録画が正常に開始されました。
record_paused: 録画が正常に一時停止されました。
録画ステータスコールバックパラメーターの例
{ "domain": "demo.aliyundoc.com", "app": "liveApp****", "stream": "liveStream****", "event": "record_started" }
ファイル生成コールバック: このコールバックは、録画ファイルが生成されたときに送信されます。ファイル名、開始時刻と終了時刻、期間などの詳細が含まれます。
ファイル生成コールバックパラメーター
パラメーター
説明
domain
録画に使用されるストリーミングドメイン名。
app
AppName。
stream
StreamName。
uri
OSS バケット内の録画ファイルのパス。
record_id
マニフェストの ID。
file_url
録画ファイルの URL。
duration
録画ファイルの期間。単位: 秒。
start_time
録画開始時刻。これは UNIX タイムスタンプです。単位: 秒。
stop_time
録画終了時刻。これは UNIX タイムスタンプです。単位: 秒。
is_finished
録画が完了したかどうかを示します。
file_url
録画ファイルの URL。
oss_endpoint
OSS ストレージエンドポイントの名前。
oss_bucket
OSS ストレージバケットの名前。
push_args
アップストリーミング URL 内で `callback_` プレフィックスが付いたパラメーター (例: `callback_arg1`、`callback_myid`)。
説明トランスコードされた録画ストリームにはカスタムパラメーターを渡すことはできません。
各パラメーター名は 1 つの値しか持つことができません。同じパラメーターに複数の値が渡された場合、コールバックには最初の値のみが含まれます。たとえば、アップストリーミングパラメーターに
callback_args1=value1&callback_args1=value2が含まれている場合でも、コールバックは"callback_args1": "value1"になります。ファイル生成コールバックパラメーターの例
アップストリーミング URL は次のとおりです:
rtmp://demo.aliyundoc.com/liveApp****/liveStream****?callback_args1=value1&callback_myid=1231389741コールバックの内容は次のとおりです:
{ "domain": "demo.aliyundoc.com", "app": "liveApp****", "stream": "liveStream****", "uri": "liveApp****/liveStream****/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv", "file_url": "http://****.oss-****.aliyuncs.com/liveApp****/liveStream****/0_2017-03-08-23:09:46_2017-03-08-23:10:40.flv", "duration": 69.403, "start_time": 1488985786, "stop_time": 1488985840, "push_args": { "callback_args1": "value1", "callback_myid": "1231389741" } }説明上記のコールバック例は、カスタムコールバックテンプレートを持たないすべてのお客様に適用されます。
録画エラーコールバック: 異常なソースストリームまたは OSS 書き込みの失敗により、録画またはコンテナフォーマット変換 (MP4 または FLV へ) 中にエラーが発生した場合、エラーコールバックがトリガーされます。
録画エラーコールバックパラメーター
パラメーター
説明
domain
録画に使用されるストリーミングドメイン名。
app
AppName。
stream
StreamName。
event
イベント名。
record_error: 録画エラーが発生しました。
transformat_error: コンテナフォーマット変換エラーが発生しました。
error_info
JSON 形式のエラーメッセージ。次のフィールドが含まれます:
code: エラーコード。
message: エラーメッセージの説明。
file_info
ファイル情報。これはコンテナフォーマット変換エラーの場合にのみ存在し、次のフィールドが含まれます:
uri: 変換されたファイルのストレージの場所。
start_time: ファイルの録画が開始された時間。
stop_time: ファイルの録画が停止した時間。
録画エラーコールバックパラメーターの例
録画エラー
{ "domain": "example.com", "app": "live", "stream": "stream123", "event": "record_error", "error_info": { "code": "TsSegmenterFail", "message": "ts segmenter error" } }エラーコードのリスト:
コード
メッセージ
説明
BucketNotFound
Bucket not found
バケットが存在しないか、削除されました。
AccessDenied
Bucket not belong config userId
バケットは録画用に設定されたアカウント ID に属していません。
StreamFormatError
video stream format error
ライブストリームのフォーマットが無効です。
UserDisable
Unauthorized access to OSS by user
ユーザーは OSS へのアクセスを承認されていないか、承認が削除されました。
コンテナフォーマット変換エラー
{ "domain": "example.com", "app": "live", "stream": "stream123", "event": "transformat_error", "error_info": { "code": "PermissionDenied.ResourceAccess", "message": "MTS not authorized to operate on the OutputBucket" }, "file_info": { "uri": "record/live/stream123/2025-11-19-03-17-03_2025-11-19-03-28-39.flv", "start_time": 1763493420, "stop_time": 1763494119 } }エラーコードのリスト:
コード
メッセージ
説明
InvalidParameter.ResourceNotFound
The resource operated cannot be found
バケットが存在しないか、削除されました。
InvalidParameter.ResourceContentBad
The resource operated InputFile is bad
ソースストリームの品質が悪いため、コンテナフォーマットの変換に失敗しました。
PermissionDenied.ResourceAccess
MTS not authorized to operate on the OutputBucket
ユーザーは OSS へのアクセスを承認されていないか、承認が削除されました。
オンデマンド録画コールバック
オンデマンド録画コールバックを使用すると、ストリームを録画するかどうかを決定できます。録画が開始される前に、ApsaraVideo Live はストリームパラメーターを含むコールバックをお客様のサーバーに送信します。
オンデマンド録画用に Webhook アドレスを指定し、ドメイン、アプリ、またはストリームを設定できます。録画サービスがドメイン、アプリ、またはストリーム名に一致するストリームを受信すると、このストリームを録画するかどうかを判断するために、5 つのパラメーターを含むリクエストを Webhook アドレスに送信します。
リクエストパラメーター
パラメーター タイプ 説明 domain String メインのストリーミングドメイン。 app String ライブストリームが属するアプリケーションの名前。 stream String ライブストリームの名前。 codec String エンコード形式。有効な値: - h264
- h265
vbitrate String ビデオのビットレート。単位: Kbit/s。 応答パラメーター
パラメーター タイプ 必須 説明 ApiVersion String いいえ API のバージョン。デフォルトのバージョンは 1.0 です。
NeedRecord Bool はい 録画が必要かどうかを示します。 Interval JSONObject いいえ 各サイクルにおける各フォーマットの録画期間。有効な値: 5~21600。単位: 秒。 Format JSONArray いいえ 録画のフォーマット。録画は MP4、FLV、または M3U8 フォーマットにすることができます。 リクエストの例
GET /?app=seq_all&domain=demo.aliyundoc.com&stream=ondemand8&vbitrate=2000&codec=h264 HTTP/1.1 Host: pull.aliyundoc.com User-Agent: Go-http-client/1.1 Accept-Encoding: gzip応答の例
{ "ApiVersion" : "1.0", "NeedRecord" : true, "Interval" : { "Mp4": 300, "Flv": 120, "M3U8": 180 }, "Format" : ["mp4","flv"] }応答パラメーターの処理
録画サービスは、既存の設定をお客様のサーバーから返されたパラメーターで上書きします。たとえば、`Interval` を指定すると、録画サービスはデータベースの `Interval` 値を上書きします。`Format` パラメーターについては、サービスは指定されたフォーマットとデータベース内のフォーマットの共通部分を計算します。指定したフォーマットのいずれも既存の設定と一致しない場合、ストリームは録画されません。
説明200 以外の HTTP ステータスコードは、API 呼び出しの失敗と見なされます。
応答本文は 2,048 バイトに制限されています。長い応答は、悪意のある攻撃を防ぐために切り捨てられます。
ライブスナップショットコールバック
ApsaraVideo Live は、ライブスナップショット結果のコールバックをサポートしています。コンソールまたは API で Webhook アドレスを設定できます。
スナップショットコールバックの設定方法
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするドメイン名を選択します。[コールバック設定] タブで、[スナップショットコールバック] スイッチを有効にし、Webhook アドレスを追加または変更します。詳細については、「スナップショットコールバック」をご参照ください。
API
インターフェイス
説明
リファレンス
AddLiveSnapshotNotifyConfig
スナップショットコールバック設定を追加します。
詳細については、「AddLiveSnapshotNotifyConfig」をご参照ください。
UpdateLiveSnapshotNotifyConfig
スナップショットコールバック設定を変更します。
DescribeLiveSnapshotNotifyConfig
スナップショットコールバック設定をクエリします。
DeleteLiveSnapshotNotifyConfig
スナップショットコールバック設定を削除します。
スナップショットファイルコールバックパラメーター
パラメーター
説明
Event
イベント。
DomainName
スナップショットに使用されるストリーミングドメイン名。
AppName
AppName。
StreamName
StreamName。
OssBucket
スナップショットが保存されているバケットの名前。
OssEndpoint
スナップショットが保存されている OSS エンドポイント。
OssObject
スナップショットのファイル名。
CreateTime
スナップショットが撮影された時間。
SnapshotUrl
OSS バケット内のスナップショットファイルのパス。
Size
イメージサイズ。単位: バイト。
Width
イメージの幅。単位: ピクセル。
Height
イメージの高さ。単位: ピクセル。
スナップショットファイルコールバックパラメーターの例
{ "Event":"Snapshot", "DomainName":"demo.aliyundoc.com", "AppName":"liveApp****", "StreamName":"liveStream****", "OssBucket":"liveBucket****", "OssEndpoint":"oss-cn-shan****.aliyuncs.com", "OssObject":"1****.jpg", "CreateTime":"2015-12-01T17:36:00Z", "SnapshotUrl":"http://liveBucket****.oss-cn-shan****.aliyuncs.com/1****.jpg", "Size":"36291", "Width":"1280", "Height":"720" }ApsaraVideo Live は、スナップショットコールバックの認証をサポートしています。詳細については、「SetSnapshotCallbackAuth」および「スナップショットコールバック認証」をご参照ください。
自動レビューコールバック
ApsaraVideo Live は、ビデオレビューと音声レビューの結果コールバックをサポートしています。コンソールまたは API で Webhook アドレスを設定できます。
ビデオレビューコールバックの設定方法
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするドメイン名を選択します。[コールバック設定] タブで、[ビデオレビューコールバック] スイッチを有効にし、Webhook アドレスを追加または変更します。詳細については、「ビデオレビューコールバック」をご参照ください。
説明現在、自動レビュー機能は一部のライブセンターでのみ利用可能です。この機能をサポートするライブセンターの詳細については、「サービスリージョン」をご参照ください。
API
インターフェイス
説明
リファレンス
AddLiveDetectNotifyConfig
ビデオレビューコールバック設定を追加します。
詳細については、「AddLiveDetectNotifyConfig」をご参照ください。
DescribeLiveAudioAuditNotifyConfig
ビデオレビューコールバック設定をクエリします。
UpdateLiveDetectNotifyConfig
ビデオレビューコールバック設定を更新します。
詳細については、「UpdateLiveDetectNotifyConfig」をご参照ください。
DeleteLiveDetectNotifyConfig
ビデオレビューコールバック設定を削除します。
詳細については、「DeleteLiveDetectNotifyConfig」をご参照ください。
ビデオレビューコールバック
コールバックは、問題ありとフラグが立てられたビデオコンテンツに対してのみ送信されます。通知には、問題のあるビデオのスナップショットのレビュー結果とストレージ情報が含まれます。
ビデオレビューコールバックパラメーター
パラメーター
タイプ
説明
DomainName
String
ストリーミングドメイン名。
AppName
String
AppName。
StreamName
String
StreamName。
OssEndpoint
String
ストレージオブジェクトのエンドポイント。
OssBucket
String
ストレージオブジェクトのバケット。
OssObject
String
ストレージオブジェクトのファイル名。
Result
JSONArray
検出結果。詳細については、「Result」をご参照ください。
表 1. Result
パラメーター
タイプ
説明
BizType
String
ビジネスタイプ。モデルの選択に使用できます。デフォルト値はドメイン名です。
Scene
String
検出シナリオ。
porn: ポルノ検出。
terrorism: テロリズムおよび政治的に敏感なコンテンツ。
ad: テキストおよび画像の違反。
live: 望ましくないシーン。
logo: 画像ロゴ。
Label
String
検出結果の分類。分類は検出シナリオによって異なります:
画像ポルノ検出 (porn) 結果の分類:
normal: 正常。
sexy: セクシー。
porn: ポルノ。
画像のテロリズムおよび政治的に敏感なコンテンツ (terrorism) 結果の分類:
normal: 正常。
bloody: 血まみれ。
explosion: 爆発と煙。
outfit: 特殊な服装。
logo: 特殊なロゴ。
weapon: 武器。
politics: 政治的に敏感。
violence : 喧嘩。
crowd: 群衆。
parade: パレード
carcrash: 自動車事故のシーン。
flag: 旗。
location: ランドマーク。
others: その他。
テキストおよび画像の違反 (ad) 結果の分類:
normal: 正常。
ad: その他の広告。
npx: スパム広告。
qrcode: QR コードが含まれています。
programCode: Mini Program コードが含まれています。
望ましくないシーン (live) 結果の分類:
normal: 正常。
meaningless: 画像にコンテンツがありません (黒または白の画面など)。
PIP: ピクチャーインピクチャー。
smoking: 喫煙。
drivelive: 車内ストリーミング。
画像ロゴ (logo) 結果の分類:
normal: 正常。
TV: 管理されたロゴが含まれています。
trademark: 商標が含まれています。
Rate
Float
信頼度スコア。有効な値: 0 (最低信頼度) から 100 (最高信頼度)。
説明この値は参照用です。ビジネスロジックで使用しないことを強くお勧めします。コンテンツ違反を判断するには、Label の結果を使用してください。
Extent
String
予約済みフィールド。
説明デフォルトでは、新規ユーザーはこのバージョンを使用します。既存のユーザーは現在のバージョンを継続して使用します。このバージョンにアップグレードするには、チケットを送信してください。チケットの送信方法の詳細については、「お問い合わせ」をご参照ください。
ビデオレビューコールバックパラメーターの例
{ "DomainName": "demo.aliyundoc.com", "AppName": "liveApp****", "StreamName": "liveStream****", "OssEndpoint": "oss-cn-hang****.aliyuncs.com", "OssBucket": "liveBucket****", "OssObject": "example.jpg", "Result": [ { "BizType": "demo.aliyundoc.com", "Result": [ {"Label": "Porn", "Rate":11, "Suggestion": "review", "Scene":"porn", "Extent": {}}, {"Label": "Ad", "Rate":11, "Suggestion": "review", "Scene":"ad", "Extent": {}} ] } ] }
音声レビューコールバックの設定方法
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするドメイン名を選択します。[コールバック設定] タブで、[音声レビューコールバック] スイッチを有効にし、Webhook アドレスを追加または変更します。詳細については、「音声レビューコールバック」をご参照ください。
API
API 操作
説明
リファレンス
AddLiveAudioAuditNotifyConfig
音声レビューコールバック設定を追加します。
重要音声レビューコールバックの応答は JSON 文字列です。
詳細については、「AddLiveAudioAuditNotifyConfig」をご参照ください。
DeleteLiveAudioAuditNotifyConfig
音声レビューコールバック設定を削除します。
詳細については、「DeleteLiveAudioAuditNotifyConfig」をご参照ください。
UpdateLiveAudioAuditNotifyConfig
音声レビューコールバック設定を更新します。
詳細については、「UpdateLiveAudioAuditNotifyConfig」をご参照ください。
DescribeLiveAudioAuditNotifyConfig
音声レビューコールバック設定をクエリします。
詳細については、「DescribeLiveAudioAuditNotifyConfig」をご参照ください。
音声レビューコールバック
コールバックは、問題ありとフラグが立てられたオーディオコンテンツに対してのみ送信されます。通知には、問題のあるオーディオの文字起こしされたテキストと、直近 1 分間のコンテキストが含まれます。
音声レビューコールバックパラメーター
パラメーター
タイプ
説明
domain
String
ストリーミングドメイン名。
app
String
AppName。
stream
String
StreamName。
timestamp
Int
コールバックのタイムスタンプ。単位: 秒。
result
JSONArray
検出結果。詳細については、「Result」をご参照ください。
表 2. Result
パラメーター
タイプ
説明
scene
String
検出シナリオ。
label
String
検出結果の分類。有効な値:
normal: 正常なテキスト
spam: 迷惑メールまたは未承諾コンテンツ
ad: 広告
politics: 政治的に敏感
terrorism: テロリズム
abuse: 罵詈雑言
porn: ポルノ
flood: フラッディング
contraband: 禁止品
meaningless: 無意味
suggestion
String
推奨される操作。有効な値:
pass: 正常な結果です。これ以上の操作は必要ありません。
review: 結果は不確実です。手動でのレビューが必要です。
block: 結果は違反です。コンテンツを削除するか、その可視性を制限することをお勧めします。
rate
Float
信頼度スコア。有効な値: 0 (最低信頼度) から 100 (最高信頼度)。
説明この値は参照用です。ビジネスロジックで使用しないことを強くお勧めします。コンテンツ違反を判断するには、Label の結果を使用してください。
details
JSONArray
オーディオに対応するテキストの詳細。各文は 1 つの要素に対応します。1 つ以上の要素を含むことができます。各要素の構造の説明については、「Detail」をご参照ください。
表 3. Detail
パラメーター
タイプ
説明
startTime
Int
文の開始タイムスタンプ。単位: 秒。
endTime
Int
文の終了タイムスタンプ。単位: 秒。
text
String
問題のあるオーディオから変換されたテキスト。
label
String
検出結果の分類。有効な値:
normal: 正常なテキスト
spam: ジャンクコンテンツが含まれています
ad: 広告
politics: 政治的に敏感
テロリズム
abuse: 罵詈雑言
porn: ポルノ
flood: フラッディング
contraband: 禁止品
無意味: 無意味
音声レビューコールバックパラメーターの例
{ "domain": "example.aliyundoc.com", "app": "liveApp****", "stream": "5d9747eba39b44769852d276f9ff****", "timestamp": 1572248095, "result": [ { "scene": "antispam", "label": "ad", "suggestion": "block", "rate": 99.91, "details": [ { "startTime": 1572248023, "endTime": 1572248040, "text": "Free 120-day stay at Lijiang Longchuan and other hotels. The right to stay can be shared with friends and family. Come to the Yunqi She International Hotel reception center at 96 Tuanjie Street, Mangshi, next to Dengchao KTV. For inquiries, call 2285699.", "label": "ad" }, { "startTime": 1572248040, "endTime": 1572248070, "text": "Classic collection villas, enjoy Longduo Hot Spring, Lianghe Golden Pagoda, and Hot Spring Tourist Town Phase II Binjiangyuan area. Grand opening on November 2nd. Natural hot spring water piped into every home. Diverse and classic layouts, great value. You deserve it. Super value offers on the opening day. You are welcome to come and see. Address: 229 Xianfeng Road, Zhedao Town, Lianghe County. Hotline: 0692695577769***", "label": "normal" }, { "startTime": 1572248072, "endTime": 1572248077, "text": "Happy times are spent with you. Relaxed days are especially easy.", "label": "normal" }, { "startTime": 1572248078, "endTime": 1572248086, "text": "fme043 taking a break from the busy schedule for some music time, warmed by songs, and thinking of you at the cinema.", "label": "normal" } ] } ] }
デュアルストリームディザスタリカバリコールバック
このコールバックは、デュアルストリームディザスタリカバリのストリーム切り替えの結果に関する通知を提供します。
コールバックの設定方法:
コンソール
ApsaraVideo Live コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。[イベントコールバック] ページで、コールバックを有効にするアップストリーミングドメイン名を選択します。[コールバック設定] タブで、[デュアルストリームディザスタリカバリコールバック] スイッチを有効にし、Webhook アドレスを追加または変更します。
API
API 操作
説明
リファレンス
SetLiveStreamsNotifyUrlConfig
アップストリーミングコールバック通知アドレスを設定します。
詳細については、「SetLiveStreamsNotifyUrlConfig」をご参照ください。
DescribeSwitchStreamsNotifyUrlConfig
アップストリーミングコールバック設定をクエリします。
DeleteSwitchStreamsNotifyUrlConfig
アップストリーミングコールバック設定を削除します。
ストリーム切り替えコールバック:
パラメーター
説明
action
イベントタイプ:
multistream_set_master_result。ストリーム切り替えの結果を示します。domain
アップストリーミングドメイン名。
appname
AppName。
streamname
StreamName。
upstreamsequence
切り替え後のプライマリストリームの識別子。
upstreamip
切り替え後のプライマリストリームのアップストリーミングクライアントの IP アドレス。
upstreamtime
切り替え後のプライマリストリームのアップストリーミング開始時刻。これは UNIX タイムスタンプです。単位: 秒。
changereason
ストリーム切り替えをトリガーした理由。
changetime
ストリーム切り替え操作が実行された時刻。これは UNIX タイムスタンプです。単位: 秒。
time
コールバック通知が生成された時刻。これは UNIX タイムスタンプです。単位: 秒。
コールバックの例:
{ "action": "multistream_set_master_result", "domain": "demo.aliyundoc.com", "appname": "liveApp****", "streamname": "liveStream****", "upstreamsequence": "main", "upstreamip": "203.**.***.10", "upstreamtime": 17*****710, "changereason": "merge_cut_manually", "changetime": 17*****705, "time": 17*****706 }