このトピックでは、Simple Message Queue (SMQ) を使用して、Intelligent Media Management (IMM) からの非同期タスクのステータス通知を受信する方法について説明します。
SMQ リソースの作成
ステップ 1: SMQ トピックの作成
-
SMQ コンソールにログインします。
-
左側のナビゲーションペインで、[トピックリスト] を選択し、[トピックの作成] をクリックします。
-
[トピックの作成] パネルで、tf-test-mns-topic という名前のトピックを作成します。
[最大メッセージ長] を 64 KB に設定し、[ログ記録を有効にする] を [いいえ] に設定します。
-
[OK] をクリックします。
ステップ 2: SMQ キューの作成
-
SMQ コンソールにログインします。
-
左側のナビゲーションペインで、[キューリスト] を選択し、[キューの作成] をクリックします。
-
[キューの作成] パネルで、tf-test-mns-queue という名前のキューを作成します。
キューパラメーターを次のように設定します。[最大メッセージ長] を 64 KB に、[ロングポーリング時間] を 0 秒 (ロングポーリングは無効になります) に、[可視性タイムアウト] を 30 秒に、[メッセージ保持期間] を 4 日に、[メッセージ遅延] を 0 秒に設定します。[ログ記録を有効にする] は無効のままにします。
-
[OK] をクリックします。
ステップ 3: SMQ トピックとキューの関連付け
-
SMQ コンソールにログインします。
-
左側のナビゲーションペインで [トピックリスト] を選択し、ステップ 1: SMQ トピックの作成 で作成したトピック、[tf-test-mns-topic] をクリックします。
-
[サブスクリプション一覧] タブを選択し、[サブスクリプションの作成] をクリックします。
-
[サブスクリプションの作成] パネルで、[tf-test-mns-subscription] という名前のサブスクリプションを次の設定で作成します。
-
サブスクリプションタイプ: [キュー] を選択します。
-
受信者エンドポイント: ステップ 2: SMQ キューを作成するで作成したキュー tf-test-mns-queue を選択します。
-
メッセージ形式: [JSON] を選択します。
-
-
[OK] をクリックします。
オプション: Object Storage Service (OSS) リソースの作成
Object Storage Service (OSS) に必要なリソースがすでにある場合は、このセクションをスキップして、IMM 呼び出しの開始に進んでください。
ステップ 1: バケットの作成
-
OSS コンソールにログインします。
-
左側のナビゲーションペインでバケットを選択し、バケットの作成をクリックします。
-
バケットの作成 パネルで、tf-test-oss-bucket という名前のバケットを作成します。
ステップ 2: ファイルのアップロード
-
OSS コンソールにログインします。
-
左側のナビゲーションペインでバケットを選択し、手順 1: バケットの作成で作成した tf-test-oss-bucket をクリックします。
-
アップロード をクリックし、画面の指示に従って 1.docx ファイルをアップロードします。
IMM 呼び出しの開始
ステップ 1: プロジェクトの作成
-
IMM コンソールにログインします。
-
左側のナビゲーションペインで、プロジェクト一覧を選択し、プロジェクトを作成をクリックします。
-
プロジェクトを作成 パネルで、tf-test-imm-project という名前のプロジェクトを作成し、サービスリンクロールを AliyunIMMDefaultRole に設定します。
重要カスタムサービスロールを使用する場合は、プロジェクトのサービスロールの設定を参照して、アクセス許可の設定方法を確認してください。
-
確定 をクリックします。
ステップ 2: IMM 呼び出しの開始
-
OpenAPI Explorer にログインします。
-
左側の API 一覧で、[ドキュメント処理] > [CreateOfficeConversionTask] を選択します。
-
次のパラメーター値を入力します。
-
プロジェクト名: 手順 1: プロジェクトの作成 で作成したプロジェクトである tf-test-imm-project を入力します。
-
SourceURI: 「ステップ 2: ファイルをアップロードする」でアップロードしたソースファイルのパスである oss://tf-test-oss-bucket/1.docx、またはバケット内の別のドキュメントを入力します。
-
ターゲット URI プレフィックス:変換後の出力ファイルのストレージパスプレフィックスとして、oss://tf-test-oss-bucket/output を入力します。
-
TargetType: 変換後の出力のファイル形式である [png] を入力します。
-
トピック名: ステップ 1: SMQ トピックの作成で作成した SMQ トピックである tf-test-mns-topic を入力します。
-
-
[通話の開始] をクリックします。
SMQ メッセージの受信
-
SMQ コンソールにログインします。
-
左側のナビゲーションペインで、[キューリスト] を選択し、「ステップ 2: SMQ キューの作成」で作成した [tf-test-mns-queue] をクリックします。
-
[キュー詳細] ページの右上隅で、[メッセージの送受信] をクリックします。
-
[メッセージの送受信] ページで、[メッセージの受信] をクリックします。ページに新しいメッセージが表示されます。
受信したメッセージレコードには、[メッセージ ID]、[取得回数]、[初回取得時刻]、[メッセージ作成時刻]、[操作] ([詳細]、[削除]) の各列が含まれます。
-
メッセージの [操作] 列で [詳細] をクリックすると、メッセージの詳細が表示されます。
メッセージの詳細ダイアログボックスには、基本情報 ([メッセージ ID]、[取得回数]、[初回取得時刻]、[メッセージ作成時刻]、[次回可視時刻]、[メッセージハンドル]) と [元のメッセージ内容] エリアが含まれます。メッセージタイプは
imm:Task:OfficeConversion、ソースはacs.immであり、IMM ドキュメント変換タスクが正常にトリガーされたことを示しています。ダイアログボックスには、[Base64 デコード済みメッセージ内容] と [メッセージ MD5 内容] も表示されます。
よくある質問
SMQ メッセージを受信できない場合
SMQ メッセージを受信できない場合は、次の点を確認してください。
-
SMQ トピックと IMM プロジェクトが同じリージョンにあるかどうかを確認してください。
-
SMQ キューがトピックにサブスクライブされており、サブスクリプションの [メッセージ形式] が [JSON] に設定されていることを確認します。
-
複数のコンシューマーが同時にキューからメッセージを取得しているかどうかを確認してください。
-
IMM プロジェクトのサービスロールに、SMQ へのメッセージ送信権限があるかどうかを確認してください。詳細については、「プロジェクトのサービスロールの設定」をご参照ください。