How To Send Messages to Amazon SQS Queues Using JSCAPE MFT Server
Illustrates how to configure JSCAPE MFT Server to send messages to an Amazon SQS queue
In this post, you'll learn how to configure JSCAPE MFT Server to send messages to Amazon SQS queues. Amazon SQS queues are more suitable for MFT Server messages that you want retrieved by receiving applications using a polling (or pulling) method and not pushed out to recipients as soon as the message(s) get published.
In case you found that introduction confusing, allow us to elaborate. In a previous blog post, we taught you how to send MFT Server messages to Amazon SNS. When MFT Server sends messages that way, the messages are pushed out to receiving applications, which Amazon calls subscribers, as the messages are published. In other words, not counting latency, the messages are basically received by subscribers almost right after they are sent out by MFT Server.
But not all receiving applications have the capacity or are designed to receive messages in that manner. Some applications prefer to retrieve messages from a queue at their most convenient time, using a polling or pulling method.
This is what Amazon SQS (Simple Queue Service) is built for. A SQS queue can receive messages and hold them in the queue for a certain period of time so that applications who need to consume those messages can retrieve them when they're ready to do so. SQS queues can retain messages for as long as 14 days. You'll learn how to configure JSCAPE MFT Server to send messages to an SQS queue here.
Watch the video
Would you prefer to watch a video version of this tutorial instead? You can play the video below. Otherwise, just skip it if you wish to continue reading
Prerequisites from AWS
Before you start setting anything up on JSCAPE MFT Server, there are a few things you'll need from the Amazon AWS side. This would include the following:
- Security credentials like your Access Key ID (we call this Username / Access Key on MFT Server) and its corresponding secret key (a.k.a. password)
- The AWS region at which the SQS queue is associated with
- An existing SQS queue and its corresponding URL.
So, now that you're done setting things up on the AWS side, it's time to configure your JSCAPE MFT Server instance to send out messages to that SQS queue.
The first thing you need to do is create an AWS trading partner. This trading partner will contain all the necessary details for connecting to AWS, which you can then reuse when you create various triggers that send out messages to your queues on Amazon SQS.
Creating an Amazon AWS trading partner
To create an Amazon AWS trading partner, login to your MFT Server manager, Navigate to a domain, go to the Trading Partners module, and then click the Add button.
Select Amazon AWS from the drop down list and then click the OK button. Notice that there are several other trading partner protocols in there, like: Amazon S3, Box, DropBox, Google Cloud, IBM Cloud, Azure, and many others that you can integrate MFT Server with.
Once your'e inside the Amazon AWS trading partner dialog, you can then specify this trading partner's parameters. Start by giving this trading partner a name. I'm calling mine TP-SNS-1. After that, enter your AWS Access Key and its corresponding Secret Key. You should also select the appropriate Region. You can then test this connection by clicking the Test Server button. If everything's good, you should see a message box that says the test passed. Click OK to proceed.
Now that you have your AWS trading partner ready, the next step is to create a trigger that would listen for a certain event and then publish a message to an Amazon SQS queue when that particular event occurs. Let's do that now.
Creating a trigger for posting a message on an Amazon SQS queue
Go to the Triggers module and click the Add button.
Give the trigger a name and select the event type you wish this trigger to listen for. In our case, we've selected the File Upload event type, so this trigger will listen for file uploads on MFT Server. Click Next to proceed.
The next step is to specify certain conditions that would limit the response of this trigger to specific events. I'm just going to leave this blank. That means, this trigger will respond to all file uploads. Click Next to proceed.
At this point, we're now ready to add the trigger action that will be responsible for sending out a message to an existing Amazon SQS queue. To add that trigger action, just click the Add button and then select the Amazon SQS Send Message action. Once you're done with that, click OK.
We're now in the Amazon SQS Send Message action parameters dialog. Here, you'll need to specify the following:
- Partner - Just select the AWS trading partner you created earlier.
- Queue URL - This is the URL I asked you to take note of earlier, which represents your SQS queue.
- Message - This is where you enter the contents of the message you'd like to send out to the SQS queue. You can use the Add Variable button to add properties related to the trigger event raised.
- Group ID and Deduplication ID - These fields are only required if you use a FIFO type of queue. If you're just using a standard type, which is what we're using here in this example, you may leave those fields blank.
Once you're done click the OK button.
That's it. Now you know how to configure JSCAPE MFT Server to send out messages to an Amazon SQS queue.
Try this out
Would you like to try this out yourself? Download the FREE, fully-functional Starter Edition of JSCAPE MFT Server now.