Messaging and Queuing Jobs
The following topics describe job attributes that work with data processing platforms and services:
Amazon SNS Job
Amazon SNS (Simple Notification Service) is a cloud-based service that follows a Pub/Sub model and enables you to send notifications across various platforms and devices.
To create an Amazon SNS job, see Creating a Job. For more information about this plug-in, see Control-M for Amazon SNS.
The following example shows how to define a JSON Message Structure for the Amazon SNS job:
"AWS SNS_Job_7":
{
"Type": "Job:AWS SNS",
"ConnectionProfile": "AWSSNS",
"Message Type": "Message To A Topic",
"Topic Type": "Standard",
"Target ARN": "Target ARN",
"Json Message Structure": "checked",
"Subject": "Subject",
"Message": "{%4E \"default\": \"A message.\",%4E \"email\": \"A message for email.\",%4E \"email-json\": \"A message for email (JSON).\",%4E \"http\": \"A message for HTTP.\",%4E \"https\": \"A message for HTTPS.\",%4E \"sqs\": \"A message for Amazon SQS.\",%4E \"lambda\": \"A message for Amazon Lambda Services.\"%4E}",
"Attributes": "checked",
"Attribute.1 Name": "Attribute1",
"Attribute.1 Data Type": "String",
"Attribute.1 Value": "Value1",
"SMS Attributes": "checked",
"Attributes": "checked",
"Attribute.1 Name": "Attribute2",
"Attribute.1 Data Type": "String",
"Attribute.1 Value": "Value2",
"Sender Identifier": "Sender ID",
"Sender ID": "BMC",
"Max Price": "1.0",
"SMS Type": "Transactional"
}
The following table describes the Amazon SNS job parameters.
|
Attribute |
Message |
Description |
|---|---|---|
|
Connection Profile |
All Types |
Determines the authorization credentials that are used to connect Control-M to Amazon SNS, as described in Amazon SNS Connection Profile Parameters. Rules:
|
|
Message Type |
NA |
Determines one of the following message types:
|
|
Topic Type |
|
Determines one of the following topic types where the message is published:
|
|
Individual Type |
|
Determines one of the following recipient types:
|
|
Target ARN |
|
Determines the Amazon Resource Name endpoint or resource where the message is published. |
|
Subject |
All Types |
Defines the message title that is used in email notifications. Rules:
|
|
Message |
All Types |
Defines the message body. Rules:
|
|
Message Deduplication ID |
|
Defines a unique identifier (token) for the message, which is used to prevent duplicate messages in the FIFO queue. |
|
Message Group ID |
|
Determines the group identifier for the messages, which is used in the FIFO queue to ensure that the messages in the same group are processed in order. |
|
JSON Message Structure |
|
Determines whether to add the structure of the message payload, in JSON format, which allows multiple message formats within a single SNS notification. |
|
Attributes |
|
Determines whether to add additional metadata or properties associated with the message, such as time-to-live (TTL), or delivery retries, or just random customized data. Provide Name, Data Type (String, Array, Number, or Binary), and Value for each attribute. |
| SMS Attributes |
|
Determines whether to add attributes to the SMS messages. |
| Sender Identifier |
|
Determines one of the following sender identities:
|
|
Max Price |
|
Determines the maximum price that you are willing to pay for an SMS message. Value Type: String that represents a decimal, such as 0.05 for $0.05 |
|
SMS Type |
|
(Optional) Determines one of the following types of SMS messages:
Default Transactional |
| Phone Number |
|
Determines the phone number of the SMS message recipient. |
|
Push Notifications Attributes |
|
Determines the predefined attributes for push notifications. |
Amazon SQS Job
AWS Simple Queue Service (SQS) is a message queuing service that enables you to exchange messages between components without losing messages.
To create an Amazon SQS job, see Creating a Job. For more information about this plug-in, see Control-M for Amazon SQS.
The following example shows how to define a Manual JSON structure, which the user can manually add to a message body or to the attributes for custom data representation.
"QueueUrl": "https://sqs.<Region>.amazonaws.com/<accountNumber>/TestQueue.fifo",
"Entries": [
{
"Id": "msg-id",
"MessageBody": "Hello",
"MessageDeduplicationId":"MDDP",
"MessageGroupId":"MGID",
"MessageAttributes":
{
"Attribute1":
{
"DataType": "String",
"StringValue": "Value1"
},
"Attribute2":
{
"DataType": "Number",
"StringValue": "123"
}
}
} ]
The following table describes the Amazon SQS job parameters.
|
Attribute |
Action |
Description |
|---|---|---|
|
Connection Profile |
All Actions |
Determines the authorization credentials that are used to connect Control-M to Amazon SQS, as described in Amazon SQS Connection Profile Parameters. Rules:
|
|
Action Type |
NA |
Determines one of the following message sending action types:
|
|
Queue Type |
Preset |
Determines one of the following SQS queue types:
|
|
Queue URL |
Preset |
Defines the unique SQS queue URL that is used to send, receive, and delete messages. https://sqs.eu-west-2.amazonaws.com/123123123/TestQueue.fifo |
|
Message Body |
Preset |
Defines the message body. Rules:
|
|
Delay Seconds |
Preset |
Determines the number of seconds to wait before making the message visible and available to proceed. |
|
Message Deduplication ID |
Preset, FIFO |
Defines a unique identifier (token) for the message, which is used to prevent duplicate messages in the FIFO queue. |
|
Message Group ID |
Preset, FIFO |
Determines the group identifier for the messages, which is used in the FIFO queue to ensure that the messages in the same group are processed in order. |
|
Message Attributes |
Preset |
Determines whether to add additional metadata or properties associated with the message, such as time-to-live (TTL), or delivery retries, or just random customized data, in the following format:
|
| Attribute name | All Actions |
Defines the message attribute name or key which is used to identify and retrieve the attribute value. |
| Attribute Data Type | All Actions |
Determines one of the following message attribute data types:
|
| Attribute Value | All Actions |
Defines the message attribute content. |
| Manual JSON | All Actions |
Defines a JSON structure, which the user can manually add to a message body or to the attributes for custom data representation. |
Azure Service Bus Job
Azure Service Bus jobs enable you to send notifications to your Azure Service Bus message queues and Pub/Sub topics.
To create an Azure Service Bus job, see Creating a Job. For more information about this plug-in, see Control-M for Azure Service Bus.
The following table describes Azure Service Bus job attributes.
|
Attribute |
Description |
|---|---|
|
Connection Profile |
Determines the authorization credentials that are used to connect Control-M to Azure Service Bus, as described in Azure Service Bus Connection Profile Parameters. |
|
Service Bus Namespace |
Defines a hierarchical graph in Azure Service Bus that contains the target message queue or target topic for this job. |
|
Queue-Topic Name |
Defines the Azure Service Bus message queue or topic that receives the Message Body. |
|
Message Format |
Determines one of the following message formats for the file in Message Body:
In addition to these values, you can type the name of any other data/messaging format. |
|
Message Body |
Loads a file that is sent to the queue or topic in the body of the message. The file must be in the format you defined in Message Format. |
RabbitMQ Job
RabbitMQ is a message broker for applications that require message delivery and routing capabilities.
To create a RabbitMQ job, see Creating a Job. For more information about this plug-in, see Control-M for RabbitMQ.
The following table describes the RabbitMQ job type attributes.
|
Attribute |
Description |
|---|---|
|
Connection profile |
Determines the authorization credentials that are used to connect Control-M to RabbitMQ, as described in RabbitMQ Connection Profile Parameters. Rules:
|
|
Action |
Determines one of the following actions to perform on RabbitMQ:
|
|
Vhost |
Defines the virtual hostname that connects to RabbitMQ. Virtual hosts do not share exchanges or queues between them. |
|
Queue |
Defines the name of the queue that contains the messages when you purge the queue. |
|
Exchange |
Defines the exchanges that take a message and route it into queues when you publish a message. |
|
Routing Key |
Defines the key that enables you to bind queues to exchanges when you publish a message. |
|
Message to Publish |
Defines the message content that you publish. |
|
Message Encoding |
Defines the encoding of the message that you publish. The encoding must be a string or Base64. |
|
Properties |
Defines the additional information that you can add to the message that you publish as comma-separated property:value pairs. {"app_id":"151515151515123",”app_name”:”Control-M} |
