AMQP UDRs

The AMQP UDR types include the following UDRs:

The UDR types in AMQP

The following describes the the properties used in each UDR type in the AMQP agent:

BasicProperties

The BasicProperties UDR contains the different basic properties used in the Publish and Received UDRs. See the AMQP specification for further information about these properties. The following fields are included in the BasicProperties UDR:

Field

Description

appId (string)This field contains the creating application ID.
contentEncoding (string)This field contains the MIME content encoding.
contentType (string)This field contains the MIME message type.
correlationId (string)This field contains the application correlation identifier.
deliveryMode (int)This field indicates the delivery mode; 1 - Non-persistent or 2 - Persistent.
expiration (string)This field contains the message expiration specification.

headers (map<string, any>)


This field contains the message header field table.
messageId (string)This field contains the message application identifier.
priority (int)This field contains the message priority, 0-9.
replyTo (string)This filed contains the address to send replies to.
timestamp (date)This field contains the message timestamp.
type (string)This field contains the message type name.
userId (string)This field contains the creating user id.

ConnectionEstablished

The ConnectionEstablished UDR indicates that the connection with the broker has been established. The following fields are included in the ConnectionEstablished UDR:

Field

Description

sessionId (long)This field contains the id for the session in long format.

Envelope

The Envelope UDR is included in the Received UDR. The following fields are included in the Envelope UDR:

Field

Description

deliveryTag (long)This field contains the server-assigned and channel-specific delivery tag.
exchange (string)This fields contains the name of the exchange used.
isRedeliver (boolean)This field indicates that the message has been previously delivered to this or another client.
routingKey (string)This field contains the routing key.

Error

The Error UDR can be configured to be sent out from the AMQP agent in case of any specified errors. The following fields are included in the Error UDR:

Field

Description

affectedUDR (DRUDR)

This field contains the UDR that was affected by the error.

message (string)This field contains the error message in string format.

LoginInfo

The LoginInfo UDR is used to provide authentication credentials via UDRs instead of the AMQP agent configuration. The following fields are included in the LoginInfo UDR:

Field

Description

password (string)

This field contains the password associated with the user.

user (string)This field contains the username to be used for broker connections.

For further information about how to enable authentication via LoginInfo UDRs, see AMQP Agent Configuration.

Publish

The Publish UDR is contained in the RequestCycle UDR. The following fields are included in the Publish UDR:

Field

Description

basicProperties (BasicProperties (AMPQ))

This field contains the BasicProperties UDR associated with the Publish UDR.

body (bytearray)This field contains the message body to be sent in bytearray format.
exchange (string)This fields contains the name of the exchange used.
routingKey (string)This field contains the routing key for the binding.

Received

The Received UDR is contained in the RequestCycle UDR. The following fields are included in the Publish UDR:

Field

Description

basicProperties (BasicProperties (AMPQ))

This field contains the BasicProperties UDR associated with the Publish UDR.

body (bytearray)This field contains the message body in bytearray format.
consumerTag (string)This field contains the consumer tag specified by the client or provided by the server.
envelope (Envelope (AMQP))This field contains the Envelope UDR associated with the Publish UDR.
queue (string)This field contains the queue name.

RequestCycle

The RequestCycle UDR is used for receiving and publishing messages. This UDR should be routed to the AMQP agent when you want to send an RPC call as specified in the AMQP standard. It can contain Received and Publish UDRs. The following fields are included in the RequestCycle UDR:

Field

Description

answer (Received (AMPQ))

This field contains the Received UDR associated with the Publish UDR.

context (any)

This field can be used in the workflow configuration to keep track of, and use, internal workflow information related to a RequestCycle UDR.

For instance, before you route a RequestCycle UDR to the AMQP agent, store the TCPIPUDR from a TCP/IP collection agent in the Context field. You can then read the TCPIPUDR from the Context field in the RequestCycle UDR that contains the answer, and use it to send back a response to the TCP/IP collection agent.

request (Publish (AMQP))This field contains the Publish UDR.

Subscribe

The Subscribe UDR is sent to the AMQP agent to initiate a subscription or to check if a queue exists. If the subscription operation is successful, the agent will route a SubscriptionOk UDR to the workflow. If the operation fails the agent will send an Error UDR. The following fields are included in the Subscribe UDR:

Field

Description

declareQueue (boolean)

When this field is set to true, the queue will be created, if it does not already exist.

When this field is set to false and the queue does not exist, the subscription will fail.

If the operation is successful, the isSubscribed field in the corresponding SubscriptionOk UDR will be set to true.

passive (boolean)Use this field to check if a queue exists without subscribing. If the operation is successful, the isSubscribed field in the corresponding SubscriptionOk UDR will be set to false.
queueName (string)This field contains the name of the queue in string format.
tagName (string)This field contains the tag name in string format.

SubscribeOk

The SubscribeOk UDR is sent out from the AMQP agent to acknowledge the subscription.

The following fields are included in the SubscribeOk UDR:

Field

Description

isSubscribed (string)This field reflects the value of the passive field in the Subscribe UDR. For instance, if passive is set to true isSubscribe will be set to false.
queueName (string)

This field contains the queue name in string format.

tagName (string)This field contains the tag name in string format.