Like most similar solutions, Amazon Connect offers to interact in a separate browser window called Contact Control Panel (CCP). This approach does not give advantages over the usual softphone. But, Amazon developed the Amazon Connect Streams library . This library presents an API (Application Programming Interface) for the integration with third-party applications, such as CRM systems or other.

Possibilities of Amazon Connect Streams

To integrate the call bar with the web application, Amazon Connect Streams enables you to integrate Amazon Connect into the existing web application. The developer gets an opportunity to embed CCP as a UI component on the page and handle the events from the client’s part of the application, which makes it possible to manage the call state via the event-oriented interface.

Architecturally, Amazon Connect Streams is a multi-layered approach for providing flexible, customizable integration into the existing web application. This allows you to build complex, deep, and limited surface integration, depending on the needs of the business. The library is built on the concept of streams. Threads represent the connection between each layer of the client’s part of the application. Multiple threads joint together form a conduit that events and requests are transmitted through. You can select three layers of the client application:

  1. Integration into the web application layer: this is the code of the client application itself, which initializes the work with the library. During the initialization, an iframe is inserted into the page, which the CPP from Amazon Connect is loaded in.
  2. Integration with CCP layer: represents the direct authorization of the call center operator. It also acts as an intermediary between the top layer of the integration and the shared worker (Web API Shared Worker).
  3. Shared Worker: This is HTML5 Shared Worker, which, in addition to processing the Query API, performs Long polls, thanks to which, the change of the call state data synchronizes across all open tabs.

Integration Amazon Connect into the Web Application Example

Amazon Connects Streams

This figure shows the web application window into which the CPP from Amazon Connect is inserted at the time of the incoming call. The client is currently in the queue and is waiting for the support agent to connect. The advantage of integrating a phone call with a web application is that we can interact dynamically with the database and receive information that would be useful for improving the quality of customer service. For example, even before connecting to a subscriber, we can operate with the phone number from which the client calls, and get all the information about the client from the database. This can significantly improve the quality of customer service: imagine, from the very beginning of a conversation, you can be addressed by your name, and are not asked to provide the number of your last order. In Log Messages section we can see information we are able use right after processing some events (internal call configuration data, such as attributes, queue type, etc.). In Event Messages, we can observe which events are coming and handle them accordingly.


If it is necessary to provide a flexible interaction of the call center with the existing system that has a client base in order to improve the quality of customer service, Amazon Connect Streams is a very good solution. Although this library is not mentioned in the documentation for developers due to the fact that it, like Amazon Connect itself, has not yet gained wide distribution and audience, it is a convenient tool in the hands of developers to create a managed cloud call center.