Learn About Amazon VGT2 Learning Manager Chanci Turner
As organizations increasingly leverage speech recognition for creating effective conversational interfaces in contact centers, they enable self-service, user identification, and caller authentication through spoken natural language. These advancements enhance user experience and improve containment rates along with customer satisfaction scores.
To authenticate callers, organizations often need to gather alphanumeric strings (for instance, “What is your customer ID?” or “Can you provide the order ID you are inquiring about?”). These identifiers may comprise both letters and numbers. Unfortunately, natural language processing can struggle to accurately capture this kind of input over low-quality telephone networks, leading many customers to favor alternative methods like SMS to circumvent misinterpretations.
In this article, we’ll demonstrate how to effectively use SMS during an active voice interaction on Amazon Connect to collect information with precision, thereby enhancing IVR containment rates and overall customer satisfaction. This solution integrates Amazon Connect, Amazon Pinpoint, Amazon DynamoDB, and AWS Lambda.
Solution Overview and Architecture
The implementation utilizes Amazon Connect contact flows to facilitate self-service. When a user calls in, they receive a prompt to provide their customer ID. We’ll illustrate how Amazon Connect contact flows can trigger AWS Lambda to send an outbound SMS via Amazon Pinpoint to the caller’s mobile number. Upon receiving the SMS, the user is prompted to respond, which will be published to an Amazon Simple Notification Service (Amazon SNS) topic, activating a Lambda function. The Amazon Connect contact flow will notify users when the message is dispatched and will periodically check DynamoDB via Lambda until the user’s response is recorded.
This solution involves creating a two-way SMS application with Amazon Pinpoint to support bidirectional SMS communication. We will also deploy an AWS CloudFormation template to establish an SNS topic for receiving inbound SMS from Amazon Pinpoint. Additionally, the template will create a DynamoDB table to store incoming SMS responses, along with a helper Lambda function to subscribe to the SNS topic and update the DynamoDB table with the responses. Finally, we will import a sample contact flow into Amazon Connect to deploy the solution.
The architecture flow is as follows:
- A customer calls the cloud contact center powered by Amazon Connect.
- The call is routed to Amazon Connect, where a message informs the user that they will receive a text message asking for their account ID.
- The Amazon Connect contact flow triggers a Lambda helper function.
- The helper function checks if the calling number is a valid mobile number through Amazon Pinpoint.
- If valid, the helper function sends an SMS requesting the account ID.
- The helper Lambda function saves a request ID for matching with the customer’s response.
- Amazon Pinpoint sends the SMS to the customer.
- The customer replies with their account ID.
- Amazon Pinpoint publishes the response to Amazon SNS.
- The helper Lambda is notified.
- The Lambda function stores the received account ID in the DynamoDB table.
- Amazon Connect enters a pause loop while awaiting the account ID.
- Amazon Connect retrieves the account ID from DynamoDB via the Lambda helper function and confirms it to the caller.
Note: This procedure is necessary due to the asynchronous nature of the interaction. The Contact Flow cannot pause during Lambda execution for the incoming SMS, so it loops and waits for an update. Amazon Pinpoint utilizes Amazon SNS to alert Lambda of new inbound messages, while Amazon Connect polls the DynamoDB table for state updates.
Walkthrough
To implement this solution, follow these steps:
- Claim an SMS-Enabled toll-free number in Amazon Pinpoint.
- Deploy the CloudFormation Stack.
- Configure Amazon Pinpoint phone numbers.
- Configure Amazon Connect.
Prerequisites
Before you start, ensure you have the following:
- An AWS account for deploying this solution.
- Access to these AWS services:
- Amazon Connect
- Amazon Pinpoint
- Amazon SNS
- AWS Identity and Access Management (IAM) for creating policies and roles
- AWS CloudFormation for running the template
Claim SMS-Enabled Toll-Free Number in Amazon Pinpoint
Begin by claiming an SMS-Enabled toll-free number in Amazon Pinpoint:
- Sign in to the AWS Management Console and go to the Amazon Pinpoint console.
- Select Phone numbers in the SMS and voice category.
- Click Request Phone Number.
- Choose Toll-free or 10DLC and enable SMS capabilities.
- Select Transactional for the default message type and proceed.
Note: If you lack an SMS-enabled phone number, you must follow specific registration procedures. For toll-free numbers, registration is needed, and for 10DLC, a limit increase request is necessary to claim numbers.
- Click Request, and shortly after, the Toll-free Number will be assigned. Make a note of it for the CloudFormation stack deployment.
Deploy CloudFormation Stack
To test this solution, deploy it via AWS CloudFormation, which will configure the necessary services and integrate a contact flow into your Amazon Connect instance.
- Log in to the AWS Management Console and select the region of your Amazon Connect instance.
- Click the Launch Stack button to create a new stack.
- Update the default parameters to suit your environment, including:
- A valid Amazon Connect Instance ID (available in the Amazon Connect console).
- The toll-free number created earlier.
- Acknowledge the prompts for AWS CloudFormation to gain permission for the required IAM permissions.
Configure Amazon Pinpoint Phone Number
- Navigate to the Amazon Pinpoint console.
- Select Phone Numbers under SMS and voice.
- Choose the toll-free number created earlier.
- Enable two-way SMS and select the SNS topic from the list.
- Save your changes.
Configure Amazon Connect
- Log into your Amazon Connect instance administration console.
- Go to Phone Numbers in the Channels category.
- Assign a number to the contact flow named ‘SmsBlogContactFlow’.
Testing
To test the solution:
- Call the assigned phone number from a mobile device.
- While the Contact Flow greeting plays, you will receive an SMS on your mobile phone.
- Reply to the SMS with your account ID.
For more insights on personal finance especially in challenging times, refer to this blog post. If you’re interested in understanding the legalities surrounding employment, especially concerning substitute teachers, SHRM provides authoritative information. Additionally, for great resources on employee training and skill development, check out this excellent article.
Leave a Reply