Send SMS blast to customers and allow them to request a callback

You can use the power of Amazon Connect, Amazon Pinpoint and Amazon Lambda to improve patient access and patient experience of your brand. There are many instances where our call center team has to use this.

It’s far more efficient to Send SMS blast to customers and allow them to request a callback. You can use the power of Amazon Connect, Amazon Pinpoint and Amazon Lambda to improve patient access and patient experience of your brand. There are many instances where our call center team has to use this. For appointment reminders, instead of calling patients one by one and reminding them, it is always easier to either send a personalized SMS blast or a personalized voice recording. Sometimes, patients want an option to reschedule their appointment. Usually, they call the main number, wait on hold, connect with an agent and reschedule the appointment.

We believe that this is not the most ideal customer experience. In addition to this, it also eats up your calling minutes while the customer is on hold, thereby increasing your expenses.

Instead, we send SMS blasts to patients and ask them to text a keyword (e.g. “CALL”) to get a callback from us. This immediately triggers a call to the patient to let them know that we received their SMS. In this voice recording we also let them know that one of our agents will call them back as soon as they are done with the current call. If the agent is currently on another call, they receive this customer’s number in their callback queue. 

Here’s how you get this done. 

What you will learn

  1. Add a keyword to amazon pinpoint to listen for customer intent (CALL)
  2. Send personalized SMS blast to customers using Amazon Pinpoint
  3. Set up an SNS subscription and an SQS queue
  4. Add a callback queue and callback contact flow to your amazon connect instance
  5. Trigger a lambda function to call the customer automatically
  6. Put them all together for optimal customer experience and access

Add a keyword to pinpoint

This one is already covered here (How to send SMS from pinpoint). 

That’s it – this can be anything you want it to be.

Now, if the customer texts CALL to your company’s SMS number, they will get an automated response as above.

Send personalized SMS blast to contacts

This one is covered in this blog post (how to send sms blast to patients). Do keep in mind that for large number of SMS, you really should be using a shortcode as the carriers do not look at SMS blasts from long codes (10 digit numbers) very kindly.

In your template, you just add one thing. “Reply CALL to get a callback from our staff.”. If your customers/patients want a call from your staff without having to be on hold, they will send the SMS CALL.

This triggers the autoresponse from pinpoint like this

Set up an SNS subscription and an SQS queue to listen

When you set up pinpoint (the last blog post) and enabled 2-way SMS, you had already created an SNS subscription. 

Now you are going to attach a queue to this SNS subscription so that all messages are sent to the queue and queued up for further processing.

Head over to Amazon Simple Queueing service and create a new queue.

Should you choose to, you can also encrypt the notification here

The next thing you want to do is to subscribe to the SNS subscription you are using

Once you have that set up, you get a chance to create the Lambda trigger for when the message comes in. However, before that you do need to set up your callback queue and callback contact flow in amazon connect

Add a callback queue and callback contact flow to your amazon connect instance

It is not mandatory to create a separate queue for it, but if you do, it allows your administrators to monitor the queue specifically, for queued callbacks that agents are supposed to process. In amazon connect, go ahead and create a queue dedicated to this callback functionality.

Assign this queue to the routing profile that you want. In our example, I am assigning it to the same routing profile that our current agents use.

Next step is to ensure that the agents are associated with this routing profile (if you created a new one).

Once this is done, you can now create a simple contact flow that your AWS lambda function (described in the next step) will call.

All you are really doing here

Is to set the callback number of the contact from the lambda function – 

And an error message (this helps you more than it helps the customer)

And adding this contact to the call back queue

That’s about it.

Create the Lambda function to auto dial contact

At this point, you need to set up a lambda function, give the lambda function the appropriate IAM roles to be able to call the queue you created above and also to be able to call the Amazon connect contact flow you are going to use. Hopefully you have already set up autodialing contacts/patients using Amazon Connect using the script we shared here (autodial for appt reminders).

Use something very similar in the lambda function you create like thus

You are going to use this numberToDial attribute (as you saw above in the contact flow).

Once you have tested this out, you are good to go

What you learnt

  1. How to add a keyword to amazon pinpoint to listen for customer intent (CALL)
  2. How to send personalized SMS blast to customers using Amazon Pinpoint
  3. How to set up an SNS subscription and an SQS queue
  4. How to add a callback queue and callback contact flow to your amazon connect instance
  5. How to trigger a lambda function to call the customer automatically
  6. How to put them all together for optimal customer experience and access

Learn more..