Recordings
Recording calls is a useful way to monitor and improve your customer service operation. Below you can find instructions on how to setup recordings within Amazon Connect and how to give Voice Insights access to playback and transcribe your recordings, when appropriate.

Setup Recordings in Amazon Connect (Advanced)

To enable Voice Insights to playback and transcribe call recordings, you need to first set up recording storage for your Amazon Connect instance and within specific contact flows. If you want to read an in-depth guide on this setup, please review the following AWS documentation, otherwise continue below.

Create an S3 Bucket to store Recordings

Create an S3 bucket to store your call recordings. In the steps below we walk you through configuring this bucket to facilitate recordings processing in Voice Insights.
The S3 bucket must be in the same region as the Amazon Connect instance.

Create a KMS Key to encrypt Recordings

Create a new custom KMS key to use for encryption of the S3 bucket that holds your recordings. This is a recommended best practice for storing any kind of data at rest.
The KMS key must be created in the same region as the S3 bucket.
Once you created the key, add the following statements to the KMS key's policy (it gives Voice Insights permissions to use the key):
1
{
2
"Sid": "Allow use of the key",
3
"Effect": "Allow",
4
"Principal": {
5
"AWS": "arn:aws:iam::162909642603:root"
6
},
7
"Action": [
8
"kms:Encrypt",
9
"kms:Decrypt",
10
"kms:ReEncrypt*",
11
"kms:GenerateDataKey*",
12
"kms:DescribeKey"
13
],
14
"Resource": "*"
15
},
16
{
17
"Sid": "Allow attachment of persistent resources",
18
"Effect": "Allow",
19
"Principal": {
20
"AWS": "arn:aws:iam::162909642603:root"
21
},
22
"Action": [
23
"kms:CreateGrant",
24
"kms:ListGrants",
25
"kms:RevokeGrant"
26
],
27
"Resource": "*",
28
"Condition": {
29
"Bool": {
30
"kms:GrantIsForAWSResource": "true"
31
}
32
}
33
}
Copied!

Configure Amazon Connect

Go to your Amazon Connect instance and configure your call recordings to be stored in the recordings S3 bucket and set the encryption key to the KMS key created in the previous step.

Setup S3 permissions

Finally, in order for Voice Insights to access your Amazon Connect recordings, we need access to your recordings bucket.
If the recordings bucket is encrypted, make sure it's using the custom KMS key created above – otherwise Voice Insights will not be able to read objects from the bucket.
Set up (or append) the following statement to your recordings bucket policy (make sure to replace <recordings-bucket-name> with your actual bucket name):
1
{
2
"Effect": "Allow",
3
"Principal": {
4
"AWS": [
5
"arn:aws:iam::162909642603:role/nlx-vi-Datasources-1KEPJ6-StreamTriggerLambdaExecu-5ES4Z3UAA47L",
6
"arn:aws:iam::162909642603:role/nlx-vi-Lambdas-1VM33XZDHM6E-ApiLambdaExecutionRole-NBGBQ04281XO"
7
]
8
},
9
"Action": "s3:GetObject",
10
"Resource": [
11
"arn:aws:s3:::<recordings-bucket-name>",
12
"arn:aws:s3:::<recordings-bucket-name>/*"
13
]
14
}
Copied!
The policy above gives two of our IAM roles permission to read objects from your S3 bucket.
Note that Voice Insights does not copy or store audio recordings outside of your AWS account.
If the steps above were set up correctly, for any new contact that has a recording, you will be able to play the recording in Voice Insights and you will be able to see its transcript, if you set the nlx:transcription Contact Attribute to true in your Amazon Connect contact flow. See the next section, Advanced Analytics, for more details.
Last modified 1yr ago
Copy link