The Amazon SQS communication point enables you to connect to an Amazon Simple Queue Service (Amazon SQS), a message queuing service.

Supported Operational Modes: InputOutput.

Input Mode Properties

Property Description

Input Queue URL

The URL of the AWS SQS queue that this communication point will receive messages from.

AWS Access Key Id

The AWS access key identifier to use to receive messages from the queue. This can be left blank if this is running in EC2 with an IAM role that grants the required permissions.

AWS Secret Key

The AWS access secret key to use to receive messages from the queue. This can be left blank if this is running in EC2 with an IAM role that grants the required permissions.

Refresh Delay (ms)

The delay, in milliseconds, between each SQS queue polling attempt when the previous attempt found no available messages. If long polling is enabled this is the delay between when the previous polling attempt completes and when the next attempt starts.

SQS Wait Time (s)

Enables long polling if configured to a non-zero value. If no message is available when long polling is enabled then SQS will hold onto the polling request for up to the specified number of seconds while waiting for a new message to arrive. The maximum allowed value is 20 seconds.

Receive Body As

Determines how the message body is received:

  • String - receive the message body as a UTF-8 encoded string.
  • Hex Encoded Binary - decode the received message as hex and save it as a binary value.
  • Base64 Encoded Binary - decode the received message as base64 and save it as a binary value.
On Body Decode Error

Determines the action to take if decoding the incoming message body as either hex or base64 fails:

  • Treat as Connection Error - the message will be retried and likely will eventually be sent to the appropriate SQS dead letter queue.
  • Discard Message - the message is logged and discarded by Rhapsody.
  • Receive Message - the message is received by Rhapsody but sets a message property called sqs:BodyDecodeFailed so that it can be handled in the route.
Message Attributes

Names of SQS message attributes that should be retrieved and stored as message properties in Rhapsody. If present, each of these message attributes is stored as a Rhapsody message property with a name prefixed with sqs:attrib:. Each message can have up to 10 attributes.

  • Name.
  • Value.
  • Type: String / Number.

Connection Timeout (ms)

The connection timeout, in milliseconds, to use when attempting to connect to the Amazon SQS queue.

Read Timeout (ms)

The read timeout, in milliseconds, to use when waiting for a response from an Amazon SQS queue.

Output Mode Properties

Property Description

Output Queue URL

The URL of the AWS SQS queue that this communication point will deliver messages to.

AWS Access Key Id

The AWS access key identifier to use to send messages to the queue. This can be left blank if this is running in EC2 with an IAM role that grants the required permissions.

AWS Secret Key

The AWS access secret key to use to send messages to the queue. This can be left blank if this is running in EC2 with an IAM role that grants the required permissions.

Send Body As


Determines how the message body is sent:

  • String - load the message body as a string using its current character encoding and transmit it as a string.
  • Hex Encoded Binary - load the message body as a binary blob and transmits it using hex encoding.
  • Base64 Encoded Binary - load the message body as a binary blob and transmits it using base64 encoding.

SQS Message Attributes

SQS message attributes can be set on the outgoing message using either literal values, or values retrieved from Rhapsody message properties. Prefix the value with $ to indicate that a message property should be used. Attributes for message properties are only added if the message property is present and has a non-empty value. Each message can have up to 10 attributes.

  • Name.
  • Value.
  • Type: String / Number.

Connection Timeout (ms)

The connection timeout, in milliseconds, to use when attempting to connect to the Amazon SQS queue.

Read Timeout (ms)

The read timeout, in milliseconds, to use when waiting for a response from an Amazon SQS queue.