4.3. フローの途中で AMQP へメッセージをパブリッシュまたは AMQP へメッセージをパブリッシュしてインテグレーションを終了
フローの途中で AMQP ブローカーへメッセージをパブリッシュしたり、AMQP ブローカーへメッセージをパブリッシュしてシンプルなインテグレーションを終了することができます。これには、AMQP コネクションをフローの途中に追加するか、AMQP コネクションをシンプルなインテグレーションの最後のコネクションとして追加します。
前提条件
- メッセージの公開先となる AMQP ブローカーへのコネクションが作成されている必要があります。
- フローを作成または編集することになり、Fuse Online でインテグレーションに追加するよう要求されます。または、Fuse Online でシンプルなインテグレーションの最後のコネクションを選択するよう要求されます。
手順
- Add to Integration ページで、コネクションの追加先のプラス記号をクリックします。Fuse Online が最後のコネクションを選択するよう要求する場合は、このステップをスキップします。
- メッセージの公開に使用する AMQP コネクションをクリックします。
Choose an action ページで、以下のアクションの 1 つを選択します。
Publish messages で応答を受信せずに、指定するキューまたはトピックへメッセージを公開します。このアクションを設定するには、以下を行います。
- Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
- Destination type では Queue を許可するか、Topic を選択します。
- Persistent を選択し、コネクションが失敗した場合でもメッセージが確実に送信されるようにします。
Request response using messages で、指定するキューまたはトピックへメッセージをパブリッシュし、応答を受信します。
注記シンプルなインテグレーションの最後のコネクションが Request response using messages アクションを実行する AMQP コネクションである場合、コネクションはメッセージをパブリッシュしますが、応答は破棄されます。応答を保持するには、Request response using messages アクションを実行する途中のコネクションとして AMQP コネクションを追加し、ログステップでシンプルなインテグレーションを終了します。
このアクションを設定するには、以下を行います。
- Destination name フィールドに、メッセージの送信先となるキューまたはトピックの名前を入力します。
- Destination type では Queue を許可するか、Topic を選択します。
- メッセージを見逃さずにコネクションを開閉できるようにするため、Durable subscription ID フィールドに永続サブスクリプション ID を入力します。宛先のタイプはトピックにする必要があります。
特定の条件を満たす応答のみを受信する場合は、Message selector フィールドにフィルター式を入力します。
メッセージセレクターは式が含まれる文字列です。式の構文は、SQL92 条件式構文のサブセットを基にしています。以下の例のメッセージセレクターは、値が
Sports
またはOpinion
に設定されたNewsType
プロパティーがあるメッセージをすべて選択します。NewsType = 'Sports' OR NewsType = 'Opinion'
メッセージコンシューマーは、ヘッダーとプロパティーがメッセージセレクターの式と一致するメッセージのみを受信します。メッセージセレクターは、メッセージのボディー部の内容を基にしてメッセージを選択することはできません。
- Next をクリックし、アクションの入力および出力タイプを指定します。
データタイプの認識が必要がない場合は、Select Type フィールドに Type specification not required を使用し、Next をクリックします。残りの手順を行う必要はありません。
ただし、構造化データタイプが推奨されます。たとえば、コネクションの入出力をデータマッパーステップでマップする場合、データタイプを指定する必要があります。データマッパーは、非構造化データのフィールドを表示できません。
データタイプを指定するには、Select Type フィールドをクリックし、以下の 1 つをスキーマタイプとして選択します。
-
JSON schema は JSON データの構造を記述するドキュメントです。ドキュメントのメディアタイプは
application/schema+json
です。 -
JSON instance は JSON データが含まれるドキュメントです。ドキュメントのメディアタイプは
application/json
です。 -
XML schema は XML データの構造を記述するドキュメントです。ドキュメントのファイル拡張子は
.xsd
です。 -
XML instance は XML データが含まれるドキュメントです。このドキュメントのファイル拡張子は
.xml
です。
-
JSON schema は JSON データの構造を記述するドキュメントです。ドキュメントのメディアタイプは
-
Definition 入力ボックスに、選択したスキーマタイプに準拠する定義を貼り付けます。たとえば、JSON schema を選択した場合は、メディアタイプが
application/schema+json
の JSON スキーマファイルの内容を貼り付けます。 Data Type Name フィールドにはデータタイプに選択した名前を入力します。たとえば、ベンダーの JSON スキーマを指定する場合は、
Vendor
をデータタイプ名として指定することができます。このタイプを指定するコネクションを使用するインテグレーションを作成または編集するときにこのデータタイプ名が表示されます。Fuse Online では、インテグレーションビジュアライゼーションとデータマッパーにタイプ名が表示されます。
- Data Type Description フィールドには、このタイプを区別するのに便利な情報を提供します。データマッパーでこのタイプを処理するステップにカーソルを合わせると、この説明が表示されます。
- Next をクリックします。
結果
インテグレーションビジュアライゼーションで追加した場所にコネクションが表示されます。