In a quest to improve customer experience and lower the total cost of ownership of their contact center, enterprises frequently choose multiple vendors for telephony, Interactive Voice Response (IVR), agent routing, Natural Language Understanding (NLU) bots, recording, analytics, workforce, and management. Enterprises frequently sign multi-year contracts with their vendors to get the best prices and are accustomed to a technology refresh cycle every 7 years.
Amazon Connect is an easy-to-use, complete, end-to-end, omnichannel cloud contact center. It is a good fit for customers who want an end-to-end contact center solution. But due to multi-year contracts with their contact center vendors, enterprises cannot often make a business case to upgrade their entire contact center stack at once. Instead, these enterprises are looking for ways to upgrade individual components, like IVR or analytics, to realize immediate business benefits. For these customers, the Amazon Chime SDK offers a lot of flexibility through native AI/ML integrations (Amazon Lex, Amazon Polly) and SIP connectivity. It provides the migration path for customers to modify existing IVR, and NLU workflows and at the same time build new IVR workflows, which provides an improved customer experience.
While the Amazon Chime SDK, is an attractive alternative, many enterprise customers do not have the in-house developers to build their IVR applications using traditional programming languages. Furthermore, customers who build an IVR application using the Amazon Chime SDK don’t want to rewrite their application when they eventually migrate to Amazon Connect. Enterprises need an easy solution that solves these problems.
tekVizion’s Contact Flow to Amazon Chime SDK Translator Library is an easy-to-use, low code open-source library that gives you the ability to build Amazon Lex-powered IVR workflows and integrate them into existing contact center solutions. The library is primarily focused on IVR primitives and not routing to an agent. It enables you to build Amazon Connect contact flows in the GUI flow builder and run the resulting application in the Amazon Chime SDK. The Amazon Chime SDK Translator Library gives customers the best of both worlds (Amazon Connect and Amazon Chime SDK). It helps them build new and modify existing IVR workflows rapidly and helps them migrate to a cloud-based, unified contact center solution.
Chime SMA Translator Library Solution Flow Diagram
In the below example diagram, a customer calls a travel agency to make a travel booking.
1 – Incoming customer call lands on Amazon Chime Audio Service.
2 – Based on the called number, Amazon Chime Audio Service invokes the corresponding SMA Lambda function associated with the called number.
3 to 5 – Chime SMA Translator Library running in the context of the SMA Lambda function checks if the Amazon Connect contact IVR flow is cached in the S3 bucket. If not, it fetches from Amazon Connect and caches in the S3 bucket.
6 to 11 – Chime SMA Translator executes the first contact flow action, and the customer call is connected to Amazon Poly to play a welcome greeting to the customer.
12 to 17 – On successful completion of the welcome greeting, the Chime SMA Translator executes the next flow action, and the customer call is connected to Amazon Lex Bot to provide an interactive voice for various options like travel booking, car rental, and cancelation.
18 to 21 – Customer interacts using voice response to navigate the travel options and provide the voice intent to complete the booking.
Connect Flow Builder Example
Supported Amazon Connect Contact Flow Actions
S.No. | Contact Flow Action | Chime SDK API | Description |
1 | MessageParticipant | Play Audio
Speak Action |
Messages the participant either by playing audio or by speaking the text configured |
2 | GetParticipantInput | Play Audio and get digits
Speak and get digits |
Gets the customer’s input by playing audio or by saying the text configured |
3 | DisconnectParticipant | Hang Up | Hangs up the current call |
4 | Wait | Pause | Performs pause action |
5 | Loop | Performs the actions iteratively | |
6 | TransferToFlow | Transfers the current contact flow to another contact flow | |
7 | TransferParticipantToThirdParty | CallBridge | Transfers the call to the third-party number |
8 | ConnectParticipantWithLexBot | StartBotConversation | Start the lex bot conversation |
9 | UpdateContactRecordingBehavior | StopCallRecording
StartCallRecording |
Records the call based on the call Id |
10 | InvokeLambdaFunction | Invokes the external Lambda function with inputs and fetches the response | |
11 | UpdateContactAttributes | Stores the contact details internally and uses them as input for invoking Lambda function and text to speak | |
12 | Compare | Compares the contact attributes with comparison attributes | |
13 | Set Voice ID | Sets the voice ID, language, and engine to speak | |
14 | UpdateFlowLoggingBehavior | Enables or disables flow logging |
GitHub Code Path to tekVizion Amazon Contact Flow to Amazon Chime SDK Mapping Library
https://github.com/tekviziondev/aws-projects
About Amazon Connect Contact Flow Builder
Refer to the documentation at https://docs.aws.amazon.com/connect/latest/adminguide/tutorial1-create-contact-flow.html
About Amazon Chime SDK (Building SIP Media Application using Chime PSTN Audio service, Polly, Lex)
Refer to the documentation at https://docs.aws.amazon.com/chime-sdk/latest/dg/build-lambdas-for-sip-sdk.html