Intelligent Media Services(IMS)のメディアアセットのアップロード、メディア処理、オンライン編集などの機能を使用する場合、コールバックイベントを設定して、タスクの進捗状況とステータスをできるだけ早く取得できます。 この方法で、イベントに基づいて他のビジネス操作を実行できます。 このトピックでは、コールバック方法とコールバックイベントの基本情報について説明します。
コールバック方法
概要
IMS は、イベント通知を取得するために、HTTP リクエストと Simple Message Queue(SMQ)キューのコールバック方法をサポートしています。
HTTP リクエスト:HTTP コールバックは、IMS でイベント通知を取得するために自動的に返されます。 コールバックメッセージを受信する HTTP サービスをデプロイし、IMS コンソールまたは API オペレーションの呼び出し時にコールバック URL を指定する必要があります。 イベントが発生すると、IMS はコールバック URL に HTTP POST リクエストを送信します。 通知内容は HTTP レスポンス本文で返されます。
SMQ キュー:IMS から SMQ コールバックを手動で取得する必要があります。 IMS が SMQ にアクセスすることを承認し、SMQ コンソールでキューを作成するか既存のキューを使用してから、IMS コンソールまたは API オペレーションの呼び出し時に SMQ キューの名前を設定する必要があります。 イベントが発生すると、IMS はコールバックメッセージをキューにプッシュします。 SMQ で受信したメッセージを確認する必要があります。
コールバック方法の比較
項目 | HTTP リクエスト | SMQ キュー |
信頼性 | HTTP メッセージ受信サービスが異常な場合、メッセージが失われる可能性があります。 たとえば、サービスが中断または再起動された場合、メッセージが失われる可能性があります。 | SMQ キュー方式は、HTTP リクエスト方式よりも信頼性が高くなっています。 適切に設定されていれば、ほぼすべての SMQ コールバックは成功します。 |
セキュリティ | HTTP リクエスト方式を使用する場合、すべてのユーザーが指定されたコールバック URL にコールバックリクエストを送信できます。 ただし、コールバック認証を使用して無効なリクエストを除外し、HTTP リクエスト方式のセキュリティを強化できます。 詳細については、コールバック認証 をご参照ください。 | SMQ キュー方式は、承認されたユーザーのみがメッセージキューの読み取りと書き込みを実行できるため、HTTP リクエスト方式よりも安全です。 |
利便性 | HTTP リクエスト方式は、メッセージ受信サービスをデプロイするだけでよいため、SMQ キュー方式よりも便利です。 | SMQ キュー方式を使用するには、SMQ をアクティブ化して設定し、メッセージを消費するプログラムを開発してデプロイする必要があります。 |
コールバックプロトコル
コールバック方法 | 説明 |
HTTP リクエスト |
|
SMQ キュー | コールバックメッセージは JSON 形式です。 サンプルメッセージ本文と対応するパラメーターの説明については、イベントリスト をご参照ください。 |
コールバックの判定と再試行
コールバック方法 | コールバック結果 | コールバック再試行の説明 |
HTTP リクエスト | HTTP リクエストが送信されると、IMS は HTTP メッセージ受信サービスから返されたレスポンスの HTTP ステータスコードを確認します。 HTTP ステータスコード 200 が返された場合、コールバックは成功です。 200 以外の HTTP ステータスコードが返された場合、または 3 秒以内にレスポンスが返されない場合、コールバックは失敗します。 IMS はレスポンス本文を無視し、HTTP ステータスコードのみでコールバックが成功したかどうかを判断します。 | コールバック URL が正しくない、HTTP メッセージ受信サービスの障害など、設定が正しくないためにコールバックリクエストの送信に失敗した場合、IMS は 1 秒間隔でさらに 2 回コールバックリクエストの送信を再試行します。 3 回試行してもコールバックリクエストの送信に失敗した場合、IMS はリクエストを破棄します。 |
SMQ キュー | SMQ キュー方式を使用する場合、メッセージが SMQ キューにプッシュされると、IMS は SMQ コールバックが成功したと判断します。 | 設定が正しくないためにメッセージをキューにプッシュできなかった場合、IMS は 1 秒間隔でさらに 2 回メッセージのプッシュを再試行します。 たとえば、IMS が SMQ にアクセスすることを承認されていない場合、キューエンドポイントがパブリックエンドポイントでない場合、またはキュー名が正しくない場合、コールバックメッセージの送信は失敗します。 3 回試行してもメッセージのプッシュに失敗した場合、IMS はメッセージを破棄します。 |
SMQ キュー方式を使用することをお勧めします。 SMQ キュー方式は、HTTP リクエスト方式よりも信頼性が高くなっています。 適切に設定されていれば、ほぼすべての SMQ コールバックは成功します。
コールバックイベントタイプ
IMS は、メディアアセットのアップロード、メディア処理、オンライン編集などの機能に関連するコールバックイベントを提供します。 特定のコールバックイベントを設定して、タスクの進捗状況とステータスをできるだけ早く取得できます。 詳細については、イベントリスト をご参照ください。