Amazon Connect Calls & Chat

Conversation Intelligence (CI) supports Amazon Connect Customer (previously known as AWS Connect).

The Amazon Connect service provides a cloud contact centre solution that leverages AWS resources, such as S3 Buckets and Kinesis data streaming, and supports inbound and outbound call recording & Chats/messaging  for agents and customers.

This document covers the configuration of Amazon Connect as it applies to CI, including the requirements for exporting call recordings and metadata to an AWS S3 bucket.


Create Instance

Set Identity

  • Navigate to Amazon Connect Customer in the AWS Management Console
  • Select Add an Instance
  • Select the appropriate user management option and set your preferred Access URL

  • Select Next
  • Configure an administrator account if a specific one is required for this Amazon Connect instance
  • Select Next

Set Telephony

  • Select the appropriate telephony options for your deployment

  • Select Next

Data Storage

On the Data Storage step:

  • Select Enable Customer Profiles and/or Enable Email if required
  • Select Customize data storage (advanced)
  • Select Call recordings at a minimum
    • Also select Chat transcripts if you plan to process Chats into CI.

  • Enable Select KMS key by name
  • Select the appropriate AWS KMS key

Call Recordings

  • Select Create a new S3 bucket for me (recommended)
  • Enter a desired S3 bucket Name and Path prefix
  • The resulting path format will be:
{S3 bucket name}/connect/{instance name}/{path prefix}
  • Select Enable encryption
  • Enable Select KMS key by name
  • Select aws/connect from the AWS KMS key dropdown menu

Chat Transcripts

  • Select Create a new S3 bucket for me (recommended)
  • Enter a desired S3 bucket Name and Path prefix

The resulting path format will be:

{S3 bucket name}/connect/{instance name}/{path prefix}
  • Select Enable encryption
  • Enable Select KMS key by name
  • Select aws/connect from the AWS KMS key dropdown menu

Email Messages

  • Select Create a new S3 bucket for me (recommended)
  • Enter a desired S3 bucket Name and Path prefix

The resulting path format will be:

{S3 bucket name}/connect/{instance name}/{path prefix}
  • Select Enable encryption
  • Enable Select KMS key by name
  • Select aws/connect from the AWS KMS key dropdown menu

  • Select Next
  • Review settings, then select Create instance

Contact Flow

Inbound Call Recording

The default and sample contact flows are used to illustrate call recording settings.
From the Amazon Connect instance, navigate to your Access URL.

  • Navigate to Routing >> Flows
  • Select the Sample recording behavior contact flow

This contact flow consists of the following staged components:

  • Entry point
  • Check contact attributes
  • Play prompt
  • Get customer input
  • Set recording and analytics behavior
  • Transfer to flow
  • Play prompt
  • Disconnect

In this section, the fifth stage in the contact flow will be configured to record agent and customer interaction.

  • Select the first Set recording and analytics behavior element in the fifth stage. A pop-out panel will appear with a list of configuration options
  • Within Enable recording and analytics, expand Voice and select On >> Agent and Customer
  • Configure any other appropriate settings
  • Select Confirm
  • Select Save and then Publish

Outbound Call Recording

  • Navigate back to Routing >> Flows
  • Select the Default outbound contact flow

This contact flow consists of the following staged components:

  • Entry point
  • Set recording and analytics behavior
  • Play prompt
  • End flow / Resume

In this section, the second stage in the contact flow will be configured to record agent and customer interaction.

  • Select the Set recording and analytics behavior element in the second stage. A pop-out panel will appear with a list of configuration options
  • Within Enable recording and analytics, expand Voice and select On >> Agent and Customer
  • Configure any other appropriate settings
  • Select Confirm
  • Select Save and then Publish

Call Recording Metadata: Data Streaming

Call recording metadata is exported to an AWS S3 bucket via Amazon Data Firehose, an AWS managed service for loading streaming data into storage destinations.

There are two types of Amazon Data streaming services: Kinesis Firehose and Kinesis Stream. Firehose is the only method for this integration as it supports direct delivery to an S3 bucket with minimal configuration.

Create a Firehose Delivery Stream

From the Amazon Connect Customer instance, select your instance.

  • Within Data streaming, select Enable data streaming
  • Select Kinesis Firehose

  • Select Create a new Kinesis Firehose

  • Select Amazon Data Firehose then Create Firehose stream

Source and Destination

  • Within Source select Direct PUT
  • Within Destination select Amazon S3
  • Enter a Firehose stream name

Transform and Convert Records

  • Within Process records, disable Record transformation and Record format conversion

Destination Settings

  • Within Destination settings, select Create then select Browse to choose the bucket.

  • Enter an S3 bucket prefix. In this example the prefix metadata is used.

Service Access

  • Within Service access, select Create or update IAM role
  • Select Create Firehose stream

Connect the Stream to Amazon Connect

  • Go back to Data Streaming within the Amazon Connect instance.
  • Within Contact Trace Records, ensure that the newly created Firehose stream is selected from the dropdown menu.

  • Select Save

Granting Capacity Access to Your S3 Buckets

Once your call recordings and CTR metadata files are being delivered to S3, CI's ingestor retrieves them from your bucket(s) for processing. To enable this, you need to grant Capacity read access to those buckets. Optionally, if you enable automated file cleanup, delete permissions are also required.

Please see this article for access and permission setup


What to Share with Capacity

Once your IAM role or user is configured, provide the following details to your Capacity onboarding contact. The required fields depend on whether you are using Contact Lens only, or Contact Lens together with AWS Transcribe.

Scenario 1 — Contact Lens (Capacity transcription)

Use this scenario if you are using Contact Lens for call recording and metadata, and Capacity will handle transcription.

ItemWhere to find it
AWS RegionThe AWS region your Amazon Connect instance and S3 buckets are deployed in, e.g. us-east-1, eu-west-2.
AWS Assume Role ARN (if applicable)IAM > Roles > [role name] > ARN field. Format: arn:aws:iam::ACCOUNT-ID:role/ROLE-NAME. Only required if using Option A (AssumeRole).
Access Key ID (if applicable)IAM > Users > [user name] > Security credentials > Access keys. Only required if using Option B (IAM User).
Key Secret (if applicable)Generated at the same time as the Access Key ID. Store securely and share via a secure channel only.
Audio bucket nameS3 > Buckets. The bucket where call recordings (.wav files) are stored, created during the Data Storage setup in this guide.
Metadata bucket nameS3 > Buckets. The bucket receiving Contact Trace Record (CTR) output from the Firehose stream. May be the same as the audio bucket.
Bucket prefixes (if not in the root)The S3 folder prefixes under which files are stored, e.g. CallRecordings/, connect/INSTANCE-ID/ctr/. Leave blank if files are delivered to the root of the bucket.

Scenario 2 — Contact Lens with AWS Transcribe (AWS transcription)

Use this scenario if you are using Contact Lens and AWS Transcribe, and you want Creovai to access the transcript produced by AWS rather than transcribing the audio itself. In addition to the IAM permissions for audio and metadata buckets, ensure the role or user also has s3:GetObject access to the bucket and prefix where Contact Lens transcripts are stored.

ItemWhere to find it
AWS RegionThe AWS region your Amazon Connect instance and S3 buckets are deployed in, e.g. us-east-1, eu-west-2.
AWS Assume Role ARN (if applicable)IAM > Roles > [role name] > ARN field. Format: arn:aws:iam::ACCOUNT-ID:role/ROLE-NAME. Only required if using Option A (AssumeRole).
Access Key ID (if applicable)IAM > Users > [user name] > Security credentials > Access keys. Only required if using Option B (IAM User).
Key Secret (if applicable)Generated at the same time as the Access Key ID. Store securely and share via a secure channel only.
Audio bucket nameS3 > Buckets. The bucket where call recordings (.wav files) are stored, created during the Data Storage setup in this guide.
Metadata bucket nameS3 > Buckets. The bucket receiving Contact Trace Record (CTR) output from the Firehose stream. May be the same as the audio bucket.
Bucket prefixes (if not in the root)The S3 folder prefixes under which files are stored, e.g. CallRecordings/, connect/INSTANCE-ID/ctr/. Leave blank if files are delivered to the root of the bucket.
Transcript path (CTR attribute name)The name of the Contact Attribute in the CTR that contains the path to the Contact Lens transcript file. Provide this in the format used in the CTR, e.g. {Attributes.ContactLensTranscriptionPath}. This is set in your Contact Flow.

Was this article helpful?