How-to AWS Tutorial

Amazon Connect and the Agent Desktop – Improving Agent and Customer Experience

Let’s take a look at the CCP in your Contact Center.  What’s that, you ask?  CCP is short for Contact Control Panel and is the user interface for making and receiving contacts within Amazon Connect. Then, using the Connect Streams API, you’re able to extend the capabilities of your Agent Desktop by quickly bringing in context from the IVR to your agents, finally rebuilding the entire UI as you require it. There is a demo for you within this Blog, so don’t go anywhere!

The Terms

Before we take a look at the different types of CCP implementation, let’s agree on some terminology. There are a couple of terms that are now referred to as “industry known”.  Once you understand the terms shown below, we can take a look at each feature in turn.

Name Description
NativeCCP: The CCP UI provided by Amazon Connect at https://<instanceAlias>
ExtendedCCP:      The Native CCP, hosted in an iFrame on a custom webpage, that uses the Connect Streams API to have additional controls/data displayed
CustomCCP: A fully re-written UI that uses the Connect Streams API to match the look and feel of the required Agent Desktop


Native CCP

CCP is a WebRTC client that runs natively within Chrome or Firefox (the last 3 versions).  This allows you to roll out to a huge number of users in a very short space of time.  The user interface is simple to handle and requires little training.



Extended CCP

The Native CCP has all the core features that you would require from a phone client. However, there are other features and capabilities that our customers ask us for on a regular basis. These include:

  • Passing Context from the IVR to the Agent Desktop
  • Setting the outbound Queue to manage multiple brands/identities
  • Specific buttons to perform actions
  • Using custom ring-tones / secondary ring tone (example provided in previous Blog)
  • Changing the UI based on the incoming brand/authentication status
  • Setting the auto-answer for X seconds

We were able to extend the capabilities of CCP to manage these other features and capabilities by using the Connect Streams API.

To use this API we first need to load the Native CCP within our own WebSite/Application.  We then load the Streams API file that exposes subscriptions for us to use. When loading the Native CCP, we do this within an iFrame, which means that we use the exact same UI as the Native CCP.

Now that we have the Streams API loaded we are able to do much more with the Agent Desktop.


The screenshot above shows the Native CCP hosted within our own webpage. We have loaded the streams API and are able to display extra information on the Agent Desktop. We can see the  Agent who is logged in, their current State and which Queue the incoming call relates to.

We are also able to display Contact Attributes that have been collected and set within the IVR. We can see the callers’ full name, their department, the city they requested the weather for (I have a lex bot that pulls in the real-time weather based on the city requested) and finally, if the caller has been authenticated by the IVR.  In this example, the caller has been authenticated.

All of this information allows the agent to be well informed about the caller and their authenticated status.  It takes the agent just a few seconds to get a huge amount of context and provides for a great customer experience.

The GIF below shows the entire journey for this simple example.

Incoming Call


Want to try this out yourself, on your own system?  The journey shown in the graphic above is available for you to try! Go to our blog post entitled Amazon Connect – Extended CCP Demo to check this out for yourself.

Other examples of the Extended CCP:

The extended CCP model is also used for CRM integrations such as Salesforce and Freshdesk.  Our website CTI page has more information on these integrations.



Custom CCP

The Custom CCP is like the extended CCP but moves away from the Native CCP UI to provide a fully custom user interface. With this model, you’re able to build integrations like VoiceFoundry’s ServiceNow integration.

As you can see, the look and feel of the phone controls now match the application.  They also provide many additional capabilities, such as screen pops and the creation of a list of recent cases.





CustomCCPWe have also built a Custom CCP that matches the look and feel of the Native CCP.  You may ask why did we bother?  It turns out our customers wanted to keep the same appearance because there would be less training required and at the same time, they wanted to add and remove some features from the Native CCP.








Other software providers have seen the value of integrating the custom CCP into their products.  Kustomer has done this:

In conclusion

The Amazon Connect Streams API provides us with huge potential to improve the Agent and Customer experience. It can automate manual processes such as Screen POPs and Contact Lookup to provide context from the IVR to the Agent Desktop or create phone controls that match your Agent CRM/Case Tool.

If you have a project and need support, please feel free to Contact Us.