
A Deep Dive into Amazon Timestream
Amazon Timestream is AWS’s newest addition to their storage offerings. It’s a fast, scalable, and serverless time series dat...
Read MorePublished on Jul 14, 2020 by jhole89 on serverless, aws, cloud-native, remote teams, digital workplace
This is a step by step guide on how to set up Amazon Connect in under 30 mins
Amazon Connect enables you to have your own virtual call centre, where agents can log into and receive calls from clients via a web portal using only a pair of headphones. If this is the first time you’ve heard of Amazon Connect then I suggest you checkout my recent high level summary on it first.
This demo does require you to already have an AWS account set up, ideally with admin level permissions to provision the required services.
If you’ve got that then login to the AWS Console and head to the Amazon Connect page and we’ll get started. If not, you will need to create an account here.
If you want to manage your agents within Amazon Connect use the first option “Store users with Amazon Connect”, and personalise the URL. If you already have and wish to use Active-Directory, you can use the second two options; to manage users via AWS AD, or non-AWS AD via SAML, respectively.
This stage will also provide you with the URL for your agents to login with.
I suggest skipping this step for this walkthrough as you can use your IAM user instead, however you can use this opportunity to add other administrators here if you wish.
I’ve selected both options here as I want to receive and make calls.
By default Amazon Connect generates its own S3 buckets and KMS keys to use for secure data encryption, but you can set this to use pre-existing buckets and keys should you wish to.
This can be from any country Amazon Connect supports, regardless of which region our instance is located in.
I’m currently in Canada, so I chose a North American number, and opted for ‘Toll free’.
It advises you to dial the number, however from my experience with Amazon Connect all configuration changes can take up to 15 minutes to be pushed out. If you were to call at this stage you might not get through, but that doesn’t stop you continuing the setup.
You can have multiple hours of operation if you want to represent multiple groups or group remote teams by time zones. I set all of my operational hours in Pacific Standard Time, and extended the hours into the evening a little. If your call centre isn’t operational at the weekend, you can remove these from the operational hours.
A queue here is not a queue in terms of a waiting queue, but rather a workflow queue that callers will transit through.
As with the hours of operation, you can have multiple queues per call centre, for different workflows, and callers can be transferred between queues in the same way you might traditionally transfer callers between departments.
If your call centre requires more than one workflow, add additional queues with the “add new queue” button. I created an additional queue called “VanQueue”.
I didn’t want to use any custom audio prompts, so I skipped this stage but feel to check them out, or add your own and apply them in your contact flow, speaking of which…
This is how you design the flow that a customer may take, and that can be a complete end to end flow, or a small flow which can be composed into a larger flow.
In this way you can use Software Engineering principles of composition and DRY (Don’t Repeat Yourself) to create reusable flow elements. As an example, I have created a single end to end flow.
Here I’ve just set up a very simple flow whereby I check those basic settings I’ve configured (opening hours, staff availability, and queue availability) and try to transfer the customer to an agent.
If any of these fail, the system responds to the customer letting them know why (e.g. outside of opening hours) prior to terminating the call. If they can’t be immediately transferred due to the queue being at capacity, I’ve implemented a loop to wait 5 minutes and try again.
In this way I’ve been able to set up a very simple complete end to end flow for a call center, using a simple drag and drop UI. Flows can become a lot more complex, and I could have used things such as keypad entry, Lex skills, and even trigger an AWS Lambda (which in turn can be used to trigger many other AWS services via an SDK call).
Routing profiles act as the link between our agents and answer queues.
When creating an agent/user you need to assign them both a routing profile (which we just spoke about above) and a security profile. Security profiles dictate the access control the agent has within AWS Connect, and can be selected from default options of Admin, Agent, CallCenterManager, or QualityAnalyst.
Alternatively you can create our own Security Profiles and assign agents to them.
The reason to do this last is to ensure that everything related to that contact flow is set up and agents are available before making the flow live. If you switched the number onto the flow at the start, but hadn’t yet created agents to answer, or the correct operational hours, then clients may start calling in and receiving unexpected responses or be left waiting for an agent.
We do this simply by going back to the phone number management screen and attaching it to our new contact flow.
For instance, I switched it from ‘Sample inbound flow’ to ‘Demo’ which is the name I gave my demo contact flow.
You have successfully set up a virtual call centre in (hopefully) under 30 minutes. Clients can now dial in, and after making their way through our contact flow they’ll be passed to an available agent.
You’ll be able to log onto your virtual call centre by clicking the phone logo in the top right.
This was just a simple quick walkthrough of setting up Amazon Connect.
Amazon Connect is a powerful tool and it can become complex when we start using some of the more interesting features such as AWS Lex and Lambda support.
If you find yourself in need of some advice or just want to find out more, then feel free to reach out to me on Twitter (@joellutman), email joel@manta-innovations.co.uk or via my site.
Amazon Timestream is AWS’s newest addition to their storage offerings. It’s a fast, scalable, and serverless time series dat...
Read MoreAWS is huge. With its multitude of services and continuous updates AWS is a playground for developers, but the sheer scale ...
Read MoreThis is a step by step guide on how to set up Amazon Connect in under 30 mins Amazon Connect enables you to have your own v...
Read More