This is an internal document and is for Sestek employees only, and will not be accessible if shared with other parties.
Thanks to the Amazon Connect-Knovvu Analytics integration, call centers using Amazon Connect as their call center application, can have all the conversations between agents and customers analyzed in Knovvu Analytics.
It is further explained how Knovvu Analytics works integrated with Amazon Connect, required servcies for the integration and technical details.
Amazon Connect Services
Amazon Producer
One of the services written for Knovvu Analytics-Amazon Connect integration is Amazon Producer. Amazon Producer has 3 main jobs:
1. Getting the users in the Amazon account and create these users in Knovvu Analytics as agents.
2. Getting the call end events of the calls to be analyzed.
3. Getting the metadata of these calls, coming from Amazon Kinesis via a Firehose with http endpoint.
Conversation Consumer
The other service written for Amazon Connect integration is Conversation Consumer. Its job is to get the conversationID from RabbitMQ, and get the metadata and download the recordings of the call with this conversationID using Amazon API. Conversation Consumer then saves the metadata into Knovvu Analytics' database and sends the call recording to MinIO.
Integration Flow
When a user wants to use Amazon Connect-Knovvu Analytics integration, the first step is to make the required deployments in the desired environment.
-
Deployment
Deployment of the integration services to the desired environment should be done by Sestek DevOps Support team.
More details on the deployments steps. -
Configuration
Required settings for the integration to work should be made by the Knovvu Analytics' host.
More details on the required settings. -
With the tenantID entered into Amazon Producer's settings during the configuration, the service becomes aware of which tenant it works for. Using this tenantID, Amazon Producer reads the Genesys settings of the relevant tenant kept in Knovvu Analytics' database, such as:
- which organization this tenant corresponds to in Amazon,
- the user's Amazon region,
- which users in this organization will be added to Knovvu Analytics etc.
Amazon keeps the recordings and metadata of calls made via Amazon Connect in S3 buckets. Knovvu Analytics-Amazon Connect integration is provided using the S3 bucket structure.
-
Amazon allows call metadata to be sent to any desired and defined endpoint. For this routing, Amazon's Kinesis tool is used. First, a Data Stream must be created in Kinesis. This created Data Stream is then defined in Amazon Connect as the point, where the call metadata will be sent. Learn more about Amazon Kinesis.
-
A Data Stream can feed multiple Firehoses. For Knovvu Analytics-Amazon Connect integration, two firehoses are defined in the Data Stream.
- The first one takes the events and call metadata and sends them to the desired endpoint. The endpoint defined here is the Amazon Producer service deployed for the relevant tenant in Knovvu Analytics.
- The second one ensures that the recordings of the calls are written to the relevant Amazon S3 bucket. The relevant S3 bucket information is entered into this firehose as the destination URL.
-
If a call is made via Amazon Connect, the recording of the call is saved in Amazon's S3 bucket as soon as the call ends. For this, a firehose defined in Kinesis Stream and whose destination type is Amazon S3, is used.
-
Again, as soon as the call ends, the metadata of the call is simultaneously sent to the Kinesis Stream defined in Amazon Connect.
-
Call events and metadata are transmitted to the Amazon Producer service in Knovvu Analytics using firehose, which is defined in the Kinesis stream and whose destination type is http endpoint.
-
When Amazon Producer receives an event coming from Amazon Kinesis Stream, it sends the conversation ID of the relevant call to RabbitMQ.
-
Conversation Consumer gets the conversationID from RabbitMQ, and gets the recording and metadat of the call from Amazon S3 buckets using conversationID.
-
Conversation Consumer saves the metadata received into Knovvu Analytics' database and sends the call recording to MinIO.
-
As the final step, the call enters the analysis queue and is analyzed when its turn comes.