このチュートリアルでは、「通常のコールバック」と「信頼できるコールバック」という2つのメソッドをはじめとするVODのイベント通知の使用方法について、詳しくご説明します。
通常のコールバック を使用してイベント通知を取得するには、パブリックIPのあるサーバーにコールバック受信サービスをデプロイする必要があります。ここでは例としてCVMインスタンスにこのサービスをデプロイする方法をご説明します。
python NotificationReceiveServer.py
コマンドが実行された後、CVMの標準出力で Started httpserver on port 8080
が出力されます。サービスプロセスが開始されてポート8080を監視していることを意味します。http://134.XXX.XXX.167:8080
と入力すると、CVMの標準出力で次のHTTPリクエスト情報が出力されます。http://134.XXX.XXX.167:8080
を入力します。デモビデオ をローカルにダウンロードして、手引きとしてご利用ください。
Type
がTranscode
の場合)やカバー生成時点のスクリーンキャプチャの結果(Type
がCoverBySnapshot
の場合)が含まれます。
この時点で、ビデオをアップロードしてトランスコードタスク実行が完了しています。アップロードとトランスコードが完了すると、コールバック受信サービスは「ビデオのアップロードの完了」と「タスクフロー状態の変更」通知を受信します。
左側メニューバーの【メディア資産管理】をクリックし、【アップロード済み】を選択して、【ビデオのアップロード】をクリックします。
「ビデオのアップロード」ダイアログボックスが表示されたら、【ローカルからのアップロード】を選択し、【ビデオの選択】をクリックしてデモビデオをVODプラットフォームにアップロードします。
アップロードを実行すると、“アップロード中”バーにビデオアップロードの進行状況が表示されます。
アップロードが完了すると、“アップロード済み”バーのビデオリストに、アップロードされたビデオとビデオに対応するID(FileId)が表示されます。
【メディア資産管理】の「アップロード済み」バーで、先ほどアップロードしたビデオにチェックを入れ、【ビデオ処理】 をクリックします。【処理タイプ】で「トランスコードテンプレートの手動選択」オプションを選択し、【トランスコードテンプレート】の「**MP4-LD-FLU (10)**」にチェックを入れ、【ビデオカバー】にチェックを入れたまま、【OK】をクリックします。
この時点で、ビデオは再度アップロードされ、ビデオのトランスコードタスクが開始されました。これらの操作によりイベント通知がトリガーされます。
イベント通知がトリガーされたら、信頼できるコールバックを自発的にプルする必要があります。APIツールを介してPullEvents
コマンドを実行し、消費されていないイベント通知をクエリーすることができます。具体的な手順は次のとおりです。
リクエストを送信した後、もどってきた結果の中のイベントリストEventSet
を見ます。イベントリストの中には2つのイベント通知が含まれ、タイプは「ビデオアップロード完了」と「タスクフロー状態の変更」で、対応するイベントハンドラはそれぞれ8078360634045903972
と8078360634045903972
です。
この時点で、信頼できるコールバックの方式で、「ビデオアップロード完了」と「タスクフロー状態の変更」の2つの通知をプルしました。続いて、プルしたイベント通知をすみやかに確認する必要があります。
プルした信頼できるコールバックは、30秒以内に確認を終える必要があります。そうでない場合、
APIツールを使用してConfirmEvents
コマンドを実行し、消費されていないイベント通知をクエリーすることができます。具体的な手順は次のとおりです。
VOD ConfirmEvents コマンドのAPI 3.0 Explorerに入り、お客様の「パーソナルキー」を入力します。
「EventHandles.N」の入力ボックスに、イベント通知をプルした時に取得したイベントハンドラを入力します。
右側のバーの中から【オンラインコール】を選択し、【リクエスト送信】をクリックします。
リクエストに成功すると、次の情報が返ってきます。
レスポンスに失敗した場合は、次をご確認ください。
5分経ってから、再びAPIツールを使用してPullEvents
コマンドを実行し、イベント通知をプルします。
ResourceNotFoundのエラーが戻ってきた場合は、プルできる通知がすでにないことを意味します。
この記事はお役に立ちましたか?