To follow on from my colleague Faraz’s announcement and excellent article on our push into Amazon Connect, it’s my turn to chime in and give it a more technical follow up which it deserves. I was lucky enough to have attended the partner training session Amazon carried out in June this year in Seattle. It was my first trip to the US in a while and I thoroughly enjoyed Seattle as a city, heck I even recognised the landmarks on the remake of Death Note on Netflix. But more than that I was fortunate enough to have been parted with some real insight and knowledge around the Amazon Connect proposition courtesy of the Amazon team.
The session lasted the whole day but it was at a pretty breakneck speed which left me suffering from whiplash. Luckily for you, this blog is not aiming to cause you mental strain by trying to say too much in a short space of time. Instead my plan is to break this blog into two parts. This first part will stay at a high level and talk about the Amazon Connect cloud solution and what it entails to deploy and use it. Some considerations to keep in mind regarding service limits, geographic availability and their implications. The second part will be going into more detail around the Amazon Connect Console and Agent Desktop client, as well as what you can configure from inside there.
During the session there was something that the presenter said which resonated with me. He said that when it comes to Contact Centres, we tend to have our own world view on how things should work from our previous experiences using another vendor’s solution. Now no doubt a lot of the terminology and design elements in contact centres is the same, but for Connect you would do well to put those pre-dispositions aside and ask yourself “How can I do things differently in Amazon Connect?”. Well, let’s say that hopefully after then end of part two, you will be left thinking along those same lines.
Where can I provision Connect?
If it isn’t already clear by now, Amazon Connect is a cloud only offering, meaning you don’t need any specialised hardware, bundled minutes packages or capex investments to get you up and running. All you need is an AWS account and you are ready to go. I am sure many are already familiar of the Regions model where AWS Services can be deployed currently, and AWS works in the same way. However it is currently available to deploy in a few regions only, and furthermore, the really exciting possibilities that Lex opens up are only possible in US East (N.Virginia) as of now.
|US East (N. Virginia)
Asia Pacific (Sydney)
|US East (N. Virginia)
Now personally, the Lex integration with Amazon Connect and the possibilities it opens up for natural speech enabled IVRs is pretty exciting and like me you might be struggling to decide where is the best place to provision your Connect instance. Having said that, don’t stress too much as with all things Amazon the landscape is always changing rapidly, so expect the above Services to be available in other regions very soon.
Before I jump into the process of provisioning an instance, here are some out the box service limits you should be aware of which I have pulled straight from the admin guide.
|Amazon Connect instances per account||3|
|Users per instance||500|
|Phone numbers per instance||10|
|Queues per instance||50|
|Queues per routing profile||50|
|Routing profiles per instance||100|
|Hours of operation per instance||100|
|Quick connects per instance||100|
|Prompts per instance||500|
|Agent status per instance||50|
|Security profiles per instance||100|
|Contact flows per instance||100|
|Groups per level||50|
|Reports per instance||500|
|Scheduled reports per instance||50|
|Active calls per instance||100|
|Sustained incoming call rate per second||1|
|Dialable outbound destination countries||US|
Beware that these are the defaults and Amazon is open to changing these upon request.
How do I provision it?
Well it’s quite simple actually. Login to your AWS Console and you will see it listed under Contact Centre in the Services page.
What follows from there is a set of screens where you are able to adjust your connect instance settings to suit your needs.
In the Identity management section you can choose to store your users in Connect directly, or use an Existing Directory in your AWS account. As for as Directories go, AWS supports simple AD or Microsoft Active Directory. The point here being that you don’t have to spend time creating users in Connect directly, instead use your existing Directory environment to define your contact centre admins and agents. If like me you choose to store your users in Connect directly, please make sure to bookmark your Access URL as it from there you can access the dashboard to run reports and create contact flows and agents.
The second step allows you to create your connect instance admin user but again this is optional.
You can now select whether your Connect instance will support Incoming and outgoing calls. Granted you will always enable incoming calls, but you may want to deselect outbound calls to limit costs.
In step 4 you start to configure the data storage options. What is the storage used for? Well as part of Amazon Connect’s out of the box solution you get options to enable call recordings for your customers as well as the ability to run reports against your contact centre. The output of both these need an S3 bucket to store the data. Yes that is right, the solution has call recordings functionality built into it out of the box. You can let Connect set up a new dedicated S3 bucket for this, or maybe you prefer to use an existing S3 bucket. The data in the bucket is encrypted by default and again you can choose your own KMS store to manage the encryption keys.
A simple review page of your choices before you instruct AWS to create your Amazon Connect Contact Centre instance. It takes a few minutes so be patient – its a good time to top up on coffee.
Welcome to Amazon Connect
You are then greeted with a welcome screen as below:
Claim a phone number
Click ‘Let’s go’ and the first thing you do is Claim some phone numbers.
So you will now ask me, which regions can I claim phone numbers for in AWS?
Currently you can claim a phone number in the regions below:
|Republic of Korea||+82|
Again this list is growing and you can always port your number in the above regions into Amazon Connect by opening up a support ticket. Pretty good region support for a product that went public only 5 months ago don’t you think?
Can I use my own SIP Trunks?
This was asked in the training session and if you haven’t already guessed, this a pure cloud solution. There is no option to select your own SIP trunk provider in your region or your own SBC to act as a gateway for your calls terminating for your agents. Amazon have their own SIP provider which supports the regions offered when claiming a phone number. All centralised call billing is done through them. It really is as simple as that.
How do I add users to it?
This is done via accessing the URL for connect instance home page which I told you to write down from Step1. This will be covered in more detail in part 2 of this blog so watch this space.
What about the agents?
Agents are provisioned in the same way as normal users, only difference being they are assigned to a routing profile, and again, all of this will be in part 2 of this blog.
What technologies does the Agent Client use?
Now this is the interesting part. Your agents need to login to the contact centre via WebRTC enabled browser before they can receive or make calls. This is called the Amazon Connect Contact Control Panel (CCP). Currently the browser support for the CCP is as below.
|Google Chrome||Most recent version|
|Mozilla Firefox/ESR||Most recent version|
As previously mentioned, the CCP is WebRTC enabled softphone client running in the browser, and you can use your PC headset to make and receive your calls. A good headset always goes a long way whenever you are using Real Time Communications on computers, trust me. You can alternatively configure the CCP to use a Desk Phone, however don’t get excited because it doesn’t mean you can use your existing Polycom or AudioCodes handset in this setting. All it means is that you can specify another number where calls should be forward to you. Do keep in mind that the calls you receive and make, will be charged in this case along with any other charges for the minutes used when the customer dials into the contact centre.
What about ports and protocols?
The WebRTC Client in the browser registers a connection back to the Amazon Connect instance in the region you have provisioned. This login of the client is all done over https port 443. Once connected, you make and receive calls via RTP and you use port 3478 for that. I did a quick Wireshark trace to verify this much. The audio is encoded with the Opus protocol which is very resilient to jitter and packet loss.
How can I guarantee QoS and reduce latency?
This is an important consideration for most architects designing contact centres, and connect is no different. Given that the regions where you can currently deploy connect is just US East, Frankfurt and Sydney, you need to plan your network connectivity if your Agents are going to be centralised in a few locations. Regardless of the size of your company, in order to get QoS and Low latency, your connection to the AWS Data Centres should have the least hops and most direct route possible. Amazon Direct Connect will go a long way towards reducing latency and improving your QoS and call experience. It provides direct low latency connection from your office or MPLS network into the Amazon Data Centres. It does come at a cost however. You can also prioritise traffic on your network for port 443 and 3478 as well to give it that extra push.
That was easy! So what next?
OK, that about wraps up this Part 1. It is actually very easy to have your basic contact centre configured in minutes. In a fortnight I will be publishing Part 2 of this blog where I will be taking a deeper dive into how you create your IVRs, as well as how the call flows and the data is stored hierarchically in Amazon Connect. I hope you found this high level overview useful. There is lots more good stuff to come so stay tuned!!
If you require any help in setting up your Amazon Connect contact centre then feel free to drop me an email on firstname.lastname@example.org. My team of Amazon Connect professionals will be happy to assist.