AWS Public Sector Blog

Leveraging HAQM Connect to enhance community and beneficiary services

Traditionally, when a nonprofit sets up a call center, they need to set up an expensive contact center system and employ multiple agents. Even with all this effort, they still might not be able to meet high volume demands, leading to long wait times and a poor beneficiary or community experience. With HAQM Connect, nonprofits such as the LA LGBT center have been able to build a robust, scalable omnichannel cloud contact center to provide reliable, secure, and cost-effective services to their community, all without needing to provision any underlying infrastructure. In this blog, I explain to you how to leverage AWS CloudFormation templates to quickly and simply set up HAQM Connect.

I use an example of an animal shelter rescuing animals after a hurricane. There is an influx of animals within your shelter and people are calling in to locate their lost pet or to check if the animals they see online are available for adoption. You want to make sure that the callers experience low call wait times to get the animals back home or placed with adopters as quickly as possible.

In addition to using HAQM Connect for this walkthrough, I also use HAQM Lex, HAQM DynamoDB, and AWS Lambda. HAQM Lex is a service for building conversational interfaces into any application using voice and text. HAQM DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale that you’ll use for the sample database to house available animal records for adoption. And AWS Lambda is a serverless compute service that is connected between our HAQM Lex bot and HAQM DynamoDB table where the available animal data is stored. See Figure 1 for the architecture diagram of what you are building.

Figure 1: Architecture diagram

Figure 1: Architecture diagram

Prerequisites

For this walk through, you should have the following prerequisites:

Step-by-step walkthrough

In the walk through, I’ll show you how to set up a call center for the animal shelter starting off with creating a simple contact flow.

Select the Launch Stack button for the creation of the AWS CloudFormation template.

Launch Stack button

This CloudFormation template creates an HAQM Lex bot for building the conversational chatbot, it creates a sample database in HAQM DynamoDB that populates the animals that are available for adoption, and the AWS Lambda function that fulfills the HAQM Lex bot intents and searches the HAQM DynamoDB table for matching animals. Keep everything as default and select Create Stack.

Now, try launching a call center with HAQM Connect. Enter HAQM Connect in the search bar within the Console and it leads you to the service. The first thing you do is to select HAQM Connect Instance Alias to add in our HAQM Lex Chatbot. See Figure 2. The instance is named call-center-modernization.

Figure 2 HAQM Connect instance alias

Figure 2 HAQM Connect instance alias

Then select Contact flows on the left-hand side. Scroll to the HAQM Lex portion and in the correct region of US-East-1: N. Virginia, select the bot you just created via the CloudFormation template and select + Add Lex Bot. See Figure 3.

Figure 3: Add Lex Bot to our Contact Flows

Figure 3: Add Lex Bot to our Contact Flows

Now go back to the HAQM Connect service and select the link underneath Access URL which leads you into editing your contact center. See Figure 4.

Figure 4: Access URL

Figure 4: Access URL

Go to the left side and select Contact flows.

Figure 5: Select Contact Flows

Figure 5: Select Contact Flows

A contact flow defines the customer experience with your contact center from start to finish. In other words, a contact flow determines exactly what happens once your customer or constituents dial in the phone number.

Once you’ve selected Contact flows, you see numerous samples of contact flows that HAQM Connect has already created for you. Feel free to browse through these samples and see how the contact flows are built. In our example, you create your own contact flow. Select the upper right blue box that says Create contact flow.

After you select Create contact flow, give a name to your contact flow. Underneath Interact on the left side, select Play prompt – it is the first option underneath the Interact option. This introduces the caller to the contact flow. Drag and drop the Play prompt box next to the entry point and connect the arrow to the two boxes. There is no coding required for HAQM Connect; it is a drag-and-drop and connecting the arrows. See Figure 6.

Figure 6: Drag-and-drop your first Play Prompt

Figure 6: Drag-and-drop your first Play Prompt

Double-click onto the Play prompt box, select Text-to-speech or chat text and enter in a greeting of your choice. Select save.

Figure 7: "Play prompt" text edit

Figure 7: “Play prompt” text edit

Now underneath the Interact option and specifically, Get customer input:

  • Drag-and-drop this box next to our Play prompt box
  • Connect the arrows between the two.

The Get customer input option delivers an audio or chat message to solicit customer input. See Figure 8.

Figure 8: Get customer input

Figure 8: Get customer input

Double-click onto the Get customer input box and the side screen pops up for editing. Choose the HAQM Lex that you added to your contact flow in the beginning. The chatbot is called animal_shelter. See Figure 9.

Figure 9: Adding HAQM Lex bot to our contact flow

Figure 9: Adding HAQM Lex bot to our contact flow

Now that you’ve connected all three arrows within the HAQM Connect Contact Flow, select Save. See Figure 10.

Figure 10: Current Contact Flow

Figure 10: Current contact flow

There are two outputs as shown in the last “Get customer input” box:

  • With Default, you simply end route the contact flow to another Play prompt to thank the users for contacting the animal shelter.
  • Or Error, then route the flow’s traffic back to the first Play prompt.

You want to end the call once the user has received all the information they need. From the left side of the contact flow:

  • Expand Terminate / Transfer.
  • Select and drag-and-drop the Disconnect box and connect the last thank you Play prompt to it.

The final contact flow looks something like Figure 11. From the top right navigation, make sure to select Save and Publish so that your workflow is active and available.

Figure 11: Final Contact Flow

Figure 11: Final contact flow

Then claim a phone number and assign it to this contact flow to test the contact flow. On the very left side of your screen, hover over the fourth icon under Routing is Phone numbers. This allows you to assign a phone number to the contact flow. See Figure 12.

Figure 12: Phone numbers

Figure 12: Phone numbers

For this purpose, you chose a direct inward dialing number (DID) and assign it to the Animal Shelter contact flow.

Give it a couple of minutes and then you should be able to dial the number and walk through the contact flow as an end user. Here’s a recording of myself calling into my claimed DID number so you can see what the final contact flow sounds like.

Feel free to manually add new animals ready for adoption in the items section of the HAQM DynamoDB table to test populating new data into the database. You can also go into the HAQM Lex console and test out the animal_shelter bot via the chatbot, too.

Clean up

To prevent charges to your AWS account, delete the AWS CloudFormation template, delete this contact flow, and release the claimed DID phone number.

Price consideration

All of the services used in this blog utilize the pay-as-you-go pricing model, only paying for what you use.

For current pricing details and some sample pricing scenarios of each service, see HAQM Connect pricing, HAQM DynamoDB pricing, AWS Lambda pricing, and HAQM Lex pricing.

What’s next

In this blog, I showed you how to launch an AWS CloudFormation template that built out an HAQM DynamoDB table with adoptable animals, an HAQM Lex Bot that handles the conversational inputs of the end user, an AWS Lambda function that fulfills the HAQM Lex bot to look up the specific animals within the HAQM DynamoDB table, and an HAQM Connect contact flow to put all of these moving pieces together.

While your organization’s focus may not be adoptable animals, HAQM Connect can help you spend less time and money on legacy call center approaches, while providing the community you serve a seamless contact support system.

For more information on HAQM Connect, read our Getting Started with HAQM Connect and take a look at some Sample contact flows.

Han Tran

Han Tran

Han Tran is a solutions architect at HAQM Web Services (AWS) based in Seattle, WA, working with nonprofit customers and financial institutions. Han enjoys building new solutions and helping her customers. In her spare time, she can be seen outdoors and petting a dog somewhere.