AMQPReceiveMessage

You can start a process with the AMQPReceiveMessage activity. The process is triggered when the plug-in receives a message from a specified AMQP broker queue.

General

The following table lists the configurations on the General tab of the AMQPReceiveMessage activity.

Field Module Property? Description
Name No The name of the activity displayed in the process. The default value is AMQPReceiveMessage.
Connection Yes Click to select an AMQP Connection shared resource. The AMQP Connection shared resource creates a connection between the plug-in and an AMQP server.

If no matching AMQP Connection shared resources are found, click Create Shared Resource to create one. For more details, see Creating an AMQP Connection.

Entity Type No

Select an entity type from the following:

  • Queue
  • Topic
Note: This field is available only when AzureSB-1-0 is selected from the Broker Type list of the used AMQP Connection shared resource.
Entity Name Yes Enter the name of the queue or topic entity from where the message is received.
Note: This field is available only when AzureSB-1-0 is selected from the Broker Type list of the used AMQP Connection resource.
Subscription Name Yes Enter the name of the subscription from where the message is received.
Note: This field is available only when AzureSB-1-0 is selected from the Broker Type list of the used AMQP Connection resource and the Entity Type field on the General tab is Topic.
Message Type No Select one of the following message types:

  • TextMessage: the message is in the string format.
  • BytesMessage: the message is in the byte stream format.
  • Simple: the message does not have a message body.
  • Any: Both text and byte type messages are allowed.
  • Note: Any field is available only when Qpid-1-0 broker is selected from the Broker Type list of the used AMQP Connection shared resource.

MaxMessages Yes

The maximum number of messages that can be fetched by the AMQPReceiveMessage activity for each request submitted to the Azure Service Bus server. The default value is 1.

Note: This field is available only when AzureSB-1-0 is selected from the Broker Type list of the used AMQP Connection shared resource.
Acknowledge Mode No Select one of the following acknowledge modes:

  • Auto: the message is automatically acknowledged when being received.
  • Client: the message is acknowledged after being received by the Confirm activity.
    Note: Ensure that the message can be confirmed when you use the Client mode. If the message is not confirmed before the process instance ends, the message is kept as Unacked status and is still in the queue.

The default value is Auto.

Description

On the Description tab, you can add a short description for the AMQPReceiveMessage activity.

Advanced

The following table describes the configurations on the Advanced tab of the AMQPReceiveMessage activity.

Field Module Property? Description
Session Enabled No The Session Enabled checkbox is displayed only when AzureSB-1-0 is chosen as the Broker Type in the selected shared resource for this receiver. Select the Session Enabled checkbox to receive messages from a session enabled queue or topic.
Receive Type No

The Receive Type field is available only when the Session Enabled checkbox is selected. The messages can be received from the queue or topic in one of the following methods:

  • First Available Session

  • Specific Session

  • All Available Sessions

Max Concurrent Sessions Yes

The Max Concurrent Sessions field is available only when All Available Sessions is selected in the Receive Type field. The Max Concurrent Sessions field has the following properties:

  • The Max Concurrent Sessions field can be set to any number greater than 0. The Max Concurrent Sessions field value specifies the number of sessions from which the AMQP ReceiveMessage activity can receive messages.

  • The AMQP ReceiveMessage activity receives messages from the first available session. If there are no new messages in the session for a specific duration, the receiver lock on the session expires. The receiver acquires a lock on the next available session and receives messages from that session. The lock expire duration can be set in the shared resource under the ConnectionTimeout(msec) field.

  • It is not advisable to set the flow limit when the Max Concurrent Sessions field is set to more than 1. It may lead to the session lock expired error.

Session Id Yes The Session Id field is available only when Single Session is selected in the Receive Type field. Provide the session Id of the session from where you want to receive messages.
Sequence Key No This field contains an XPath expression that specifies the order in which the process runs. Process instances with sequencing keys that have the same value are run sequentially in the order in which the process instances are created.

For more details, see the TIBCO ActiveMatrix BusinessWorks documentation.

Custom Job Id No This field contains an XPath expression that specifies a custom job ID for every job in the process instance.

For more details, see the TIBCO ActiveMatrix BusinessWorks documentation.

Conversations

On the Conversations tab, you can click the Add New Conversation icon to initiate a conversation. A conversation represents two or more related message exchanges in the same process that are correlated by the BusinessWorks engine.

Output

The following table describes the output elements on the Output tab of the AMQPReceiveMessage activity.

Output Item Data Type Description
UserProperties Complex The message header consists of the following user properties:
  • name (a String value): the name of the user property.
  • type: the property data type. The valid data types include String, Number, Boolean.
  • value (a String value): the value of the user property.
    Note: If the property data type is Boolean, any other value except for true or True or TRUE is considered false.
MessageProperties Complex The message properties are listed as follows:
  • deliveryMode (a Boolean value): the delivery mode of the messages. If the value is set to true, the messages are stored before forwarding. If the value is set to false, the messages are not stored before forwarding. In this case, if the transmission failed, the messages might be lost.
  • messageID (a String value): the message ID of the received message.
  • timestamp (an Integer value): the time when the message is sent to the queue.
  • expiration (an Integer value): the time of the message remains active (in milliseconds).
    Note: For Qpid-1-0, AMQ-1-0, AzureSB-1-0, and ActiveMQ-1-0, displays the point in time of the expiration. For RabbitMQ, displays the active time length.
  • priority (an Integer value): the delivery priority of the message.
  • type (a String value): the event type or command type the message represents.
  • contentType (a String value): value indicating the message content type.
  • correlationID (a String value): value enabling an application to specify the context for the message for correlation.
    Note: Displayed only when AzureSB-1-0 is chosen as the Broker Type in the selected shared resource for this receiver.
  • sessionID: session ID of the Queue or Topic entity depending on whether the receiver is listening for messages from an Azure Service Bus Queue or Topic.

    Note: Displayed only when AzureSB-1-0 is chosen as the Broker Type in the selected shared resource for this receiver.

  • entityPath: relative path of the Queue or Topic entity depending on whether the receiver is listening for messages from an Azure Service Bus Queue or Topic.
    Note: Displayed only when AzureSB-1-0 is chosen as the Broker Type in the selected shared resource for this receiver. If Queue is chosen as the Entity Type, the value would be the Queue name. If Topic is chosen as the Entity Type, the value would be of the form <topicname>/subscriptions/<subscriptionname>
body String/Byte The message body of the received message:
  • If TextMessage is selected from the Message Type list of the General tab, the message is in the String format.
  • If BytesMessage is selected from the Message Type list of the General tab, the message is in the Binary format.
  • If Any is selected from the Message Type list of the General tab, the message is in the String or Binary format.
Note: If Simple is selected from the Message Type list of the General tab, the body field is unavailable.