---
schema_version: "1"
id: 821d2e0970afd5711d9e9640f4a934f7644fc702b9a5ab275273b228519eb80f
title: IBM MQ メッセージのコンシューム方法
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/ibm-mq-connector/1.6/ibm-mq-consume.md
canonical_url: https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-consume
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 5135c7152235b80ad56a59a977226899eedcf63deb3b5f508dd83779171ea354
description: MuleSoft Documentation Site
release: "1.6"
latest: false
---
# IBM MQ メッセージのコンシューム方法

IBM MQ Connector の Consume 操作では、フローにおける特定の時間に、特定の宛先からのメッセージをコンシュームできます。

## [](#メッセージのコンシューム)メッセージのコンシューム

キューからメッセージをコンシュームするための構文は次のとおりです。

```xml
<ibm-mq:consume config-ref="IBM_MQ_config" destination="#[vars.destination]"/>
```

上の操作では、宛先によって識別されるキューにある最初のメッセージをコンシュームしてから、次の構造の Mule メッセージに変換します。

- ペイロードとしてのメッセージのコンテンツ。
- メッセージ属性に含まれるメッセージのメタデータ。

メッセージは、デフォルトでは受信されるとすぐに肯定応答されます。何らかの処理を行った後でメッセージの肯定応答を制御する場合は、​`ackMode`​ を ​`MANUAL`​ に設定します。 メッセージの肯定応答については、​[「メッセージ肯定応答の処理」](https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-ack)​を参照してください。

## [](#メッセージの待機)メッセージの待機

デフォルトの最大待機時間は 10 秒に設定されており、その間にメッセージが受信できなければ ​`IBM-MQ:TIMEOUT`​ エラーが発生します。 実際の状況に合わせてタイムアウトを適切に設定するには、​`maximumWait`​ パラメーターと ​`maximumWaitUnit`​ パラメーターをカスタマイズします。

メッセージの到着を無期限に待機するには、​`maximumWait`​ 値を ​`-1`​ に設定する必要があります。この場合は TIMEOUT エラーは発生しません。

## [](#受信メッセージの絞り込み)受信メッセージの絞り込み

IBM MQ Connector は、標準の ​**JMS セレクター言語**​に基づいた、コンシュームするメッセージの絞り込みを完全にサポートします。

たとえば、他のメッセージよりも先に処理する必要のあるメッセージが登録される優先キューがある場合は、次のように絞り込みを行うことができます。

```xml
<ibm-mq:consume config-ref="IBM_MQ_config"
destination="openTickets"
selector="JMSPriority=8"/>
```

セレクターを設定すると、一致するメッセージのみが受信され、宛先にある他のメッセージはすべて無視されます。

## [](#mime-タイプおよび文字コード)MIME タイプおよび文字コード

IBM MQ Connector は、MM\_MESSAGE\_CONTENT\_TYPE プロパティに基づいて、できる限り正確にメッセージの MIME タイプ (​`contentType`​) を自動的に判断します。しかしながら、最良の判断が間違っていることもあり、その場合は、メッセージのコンテンツに関する情報を提供する必要があります。

このような場合には、​`contentType`​ パラメーターを使用して、コンテンツタイプを特定の値に設定します。

同じプロセスが文字コードでも機能します。デフォルトでは、他の情報が提供されていない場合、コレクターは Mule ランタイムのデフォルトエンコードがメッセージのエンコードと一致するものと想定します。これは ​`encoding`​ パラメーターで設定できます。

<table><tbody><tr><td class="icon"><i class="fa icon-warning" title="Warning"></i></td><td class="content">この MIME タイプの伝播は、IBM MQ 対象クライアントが ​<code>JMS_COMPLIANT</code>​ として選択されている場合にのみ機能します。</td></tr></tbody></table>

## [](#トピックサブスクリプションを使用したメッセージのコンシューム)トピックサブスクリプションを使用したメッセージのコンシューム

トピックの宛先からのメッセージのコンシュームは、キューからのコンシュームと非常によく似ていますが、トピックサブスクリプションを使用してコンシューマー間で状態を共有できるという追加の機能があります。

トピックからメッセージをコンシュームするための構文は次の通りです。

```xml
<ibm-mq:consume config-ref="IBM_MQ_config" destination="#[vars.destination]">
    <ibm-mq:consumer-type>
        <ibm-mq:topic-consumer/>
    </ibm-mq:consumer-type>
</ibm-mq:consume>
```

コンシューム操作のパラメーターは同じですが、​`topic-consumer`​ パラメーターでサブスクリプション設定を定義できます。

トピックサブスクリプションの設定方法についての詳細は、​[「トピックサブスクリプションの使用」](https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-topic-subscription)​を参照してください。

## [](#受信メッセージのメタデータ)受信メッセージのメタデータ

受信する各メッセージは 2 つの部分から構成されます。

- ペイロード: メッセージのコンテンツ。
- 属性: メッセージに関するメタデータ。

このメタデータは、3 つの部分から構成され、すべて JMS メッセージで使用できる情報にマップされます。

- AckId
- ヘッダー
- Properties (プロパティ)

属性の構造については、​[「JMS リファレンス」](https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-xml-ref)​を参照してください。

## [](#関連情報)関連情報

- [トピックサブスクリプションの使用](https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-topic-subscription)
- [新規メッセージのリスン方法](https://docs.mulesoft.com/jp/ibm-mq-connector/1.6/ibm-mq-listener)