Technical Overview

Prev Next
Warning

This is an internal document and is for Sestek employees only, and will not be accessible if shared with other parties.

Thanks to the Five9 Virtual Contact Center (VCC)-Knovvu Analytics integration, call centers using Five9 VCC as their call center application, can have all the conversations between agents and customers analyzed in Knovvu Analytics.

All Five9 admin needs to do is gather the agents whose calls will be analyzed into a group. When an agent in this group makes a call, Knovvu Analytics captures it; and as soon as the call ends, it automatically imports the call into Knovvu Analytics to be analyzed.

It is further explained how Knovvu Analytics works integrated with Five9 and technical details.

Five9 Services

Five9 Producer

One of the services written for Knovvu Analytics-Five9 VCC integration is Five9 Producer. Five9 Producer has 3 main jobs:
1. Getting the user group and the users in it whose calls will be analyzed, and create these users in Knovvu Analytics as agents.
2. Starting an event listening for these added users. With this request, Five9 understands that if these users receive an event, it will notify Five9 Producer. If Five9 Producer catches an event about a call being ended belonging to these users, it sends the conversation ID of the relevant call to RabbitMQ.
3. Checking if there is an event missed that day with a job that runs every night. This job works by comparing the calls in Five9 with those in Knovvu Analytics for the last 24 hours.

Conversation Consumer

The other service written for Five9 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 Five9 API. Conversation Consumer then saves the metadata into Knovvu Analytics' database and sends the call recording to MinIO.

Integration Flow

  1. Deployment
    Deployment of the integration services to the desired environment should be done by Sestek DevOps Support team.
    More details on the deployments steps.

  2. The event URL of the deployed Five9 Producer service should be send to the customer. This URL will be entered in the customers Five9 admin portal to configure Five9-Knovvu Analytics integration.
    More details on the configuration steps.

  3. Configuration
    Required settings for the integration to work should be made by the Knovvu Analytics' host.
    More details on the configuration steps.

  4. With the tenantID entered into Five9 Producer's settings during the configuration, the service becomes aware of which tenant it works for. Using this tenantID, Five9 Producer reads the Five9 settings of the relevant tenant kept in Knovvu Analytics' database, such as:

    • which organization this tenant corresponds to in Five9,
    • which users in this organization will be added to Knovvu Analytics,
    • which users' calls will be analyzed, etc.

  5. When Five9 Producer receives an event coming from Five9 Event Subscriptions (Five9 API), it sends the conversation ID of the relevant call to RabbitMQ.

  6. Conversation Consumer gets the conversationID from RabbitMQ, and again uses Five9 Event Subscriptions to get the metadata and download the recording of the call.

  7. Conversation Consumer saves the metadata received into Knovvu Analytics' database and sends the call recording to MinIO.

  8. As the final step, the call enters the analysis queue and is analyzed when its turn comes.