AWS Connect delivers contact trace recording very slow

0

I have setup AWS Connect -> kinesis firehose -> S3 However it took like 5-10 mins to create CTR in S3 bucket while in contact lens show the record is completed. How do we improve this siltation? Thanks

3 Answers
1
Accepted Answer

Hello, first of all here you can see when a contact record is generated: Events in the contact record. Until the agent interaction is not finished the CR won't be generated.

When the CR is generated is transmitted either to Kinesis streams or to Kinesis firehose, depending on your configuration. (See Enable data streaming for your instance).

In your case, as you are using firehose, this service introduce a buffer time between 60 and 900 seconds: Firehose data frequency delivery. You can change the buffer time and interval settings to reduce this latency to a minimun of 60 seconds.

If you need to reduce further this latency then you should use Kinesis streams as the target of your contact records stream. A possible architecture here is to use a lambda to consume each record and to write directly into S3: Using AWS Lambda with Amazon Kinesis. With this configuration you will reduce to just some seconds the total latency of the CRs appearing in your S3 bucket.

profile pictureAWS
answered a year ago
profile pictureAWS
EXPERT
reviewed a year ago
0

Thank for your reply. Any possibility to not using lambda which is from kinesis stream directly to S3 without lambda/firehose?

answered a year ago
0

Contact records are only exported using Kinesis. And for using the data in a kinesis stream you need always a consumer.

Here you can see the full list of possible Kinesis consumers: Reading Data from Amazon Kinesis Data Streams. One common alternative for using lambda would be to leverage the Kinesis Client Library in a container or instance based solution.

I would also recommend to have a look at the list of Connect APIs (specially the Get and List), where you can obtain information with just an API call (so Kinesis is not needed here). For example the Connect Real-time metrics can be obtained in real-time using the GetCurrentMetricData API. If the information that you need can be obtain from those APIs this would be a way to avoid using Kinesis and lowering the total latency.

profile pictureAWS
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions