IBM MQ Listener Trigger
Use this trigger to listen for new messages on a queue. The user defined for the listener must have input access to the configured queue. The trigger operates by adding MQ Get a call in the loop, for the configured queue. The duration of each call is controlled by the wait interval. The channel or queue manager fails if the listener indefinitely attempts to access the call.
Configuration
The Configuration tab has the following fields:
Field | Description |
---|---|
Explicit Client Commit | Select
true to create a unit of work for each message retrieved from the queue. The message is committed through the commit activity when it is executed otherwise the message is withdrawn.
Note: Ensure to observe the backout count and move the message to a recovery queue in case of a large backout count.
|
Polling Interval | Enter the time in milliseconds each Get request blocks on the queue.
Longer polling intervals reduce the load on the server, particularly for zOS based queue managers but shorter intervals allow the application to shut down faster. |
Connection | Choose the connection from the dropdown list. |
Queue | Enter the name of the queue |
Value Deserializer | Select one of the options:
String or
JSON.
If JSON is selected an entry area for the JSON schema is provided. |
Schema for JSON Value | Enter the JSON schema in this field, if the value deserializer is selected as JASON. |
Properties Schema | Click
Add Row button to add a field to the dialog for each property that the trigger is expected to retrieve from the message. The properties which are not defined here but are present in the message are ignored.
Note: The string properties are only supported in this release.
|
Output
The Output tab displays the schema in a tree format. The output is read-only. The Output tab displays fields of the MQMD message header and optionally displays a MessageProperties schema which is either a string message schema or a JSON schema depending on how the listener has been configured.
Field | Description |
---|---|
MsgType | The type of message displayed: Request, Reply, Report, Datagram |
MsgId | The binary fields are mapped to the output as base64 strings. They are unique when generated by the queue manager but can also be specified by the sender. |
CorrelId | The binary fields are mapped to the output as base64 strings. They are unique when generated by the queue manager but can also be specified by the sender. |
Encoding | Specifies the encoding of floating point data in the message. |
CodedCharSetId | Specifies the encoding for string data in the message and its properties. |
Format | A free form of a string variable that describes the format of the message. The default value is MQSTR. |
Priority | An integer field describing the queue manager's delivery priority. The default value is 4 but it can be overridden by the sending application. |
BackoutCount | The number of times the message withdrew. The backout count is incremented every time a subscriber withdraws a message when the confirmed activity is not encountered in the flow. |
ReplyToQ | The name of the queue to which a reply may be sent. |
ReplyToQmgr | The name of the queue manager hosting the reply to the queue. This is only applicable to clustered queue managers. |
UserIdentifier | The identity of the user. Normally, it is set to the user ID of the sending application but can be overridden by the sending application if it has access to change the identity context fields. |
AccountingToken | It contains accounting information relevant to the processing of the message unless overridden by the sending application. |
ApplIdentityData | It is set to any string value by the sending application. The maximum length is 32 bytes. |
PutApplType | It is set to a value describing the sending application. For more information about this field on various platforms, see IBM MQMD documentation. |
PutDate | The date on which the message was sent. |
PutTime | The time at which the message was sent. |
ApplOriginData | Set by the sending application to provide additional information about the nature of the sending application. |
MessageProperties | Displays the properties which were mapped. If the message does not contain the named property, it remains blank. |
Message | The contents of the message are mapped either as a simple string or as a JSON object based on the value of the Value Deserializer field. |