IBM MQ Subscriber Trigger

Use this trigger to subscribe to an IBM MQ topic or an administratively defined subscription to receive messages as part of the Publisher/Subscriber distributed application. The connection used must have access to the topic and the topic must be available for input. This trigger operates by adding MQ GET a call in the loop for the configured topic. The duration of each call is controlled by the wait interval. The channel or queue manager fails if the subscriber 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 topic. The message is committed through the commit activity when it is executed otherwise the message is withdrawn.
Note: Ensure to check the backout count of the messages when confirming the activity is not encountered in a flow and the message repeatedly withdraws.
Polling Interval Enter the time in milliseconds for which each Get request should wait before the time is elapsed. After the time is elapsed, the listener immediately calls the Get request.

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.
Durable Subscription Select to use a durable subscription. This enables the Subscription Name field.
Subscription Name The name of the administratively defined subscription.
Topic (Optional) Enter the name of the administratively defined topic. For an indication of the actual topic string to which it relates, see the topic definition on the server.
Note: It is mandatory to provide either theTopic field or the Topic Dynamic field.

The topic string from the administratively defined topic and the topic dynamic string are concatenated to make the real topic string to which the trigger subscribes.

Topic Dynamic (Optional) Enter the dynamic part of the topic name. The contents of this field are appended to the topic string represented by the Topic field.
Note: It is mandatory to provide either the Topic field or the Topic Dynamic field.

The topic string from the administratively defined topic and the topic dynamic string are concatenated to make the real topic string to which the trigger subscribes.

New Pubs Only An indicator for new publishing messages.
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 that 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 three, tree type entries: MQMD for all the properties present in the MQMD header, MessageProperties if the properties are mapped for this trigger, and either a JSON value for complex message structures or a String value for simple messages depending upon the settings of Value Deserializer field in the Configuration tab.

MQMD Message Header
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 string variable that describes the format of the message. The default value is MQSTR.
Priority An integer field that describes the priority of the queue manager's delivery. 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.