skip to Main Content

In Amazon Connect, I create a Flow with Start Streaming Data block. I have verified that calls trigger live audio streams through Kinesis Video Streams. See the ARNs below (captured by calling AWS CLI command aws resourcegroupstaggingapi get-resources).

{
    "ResourceTagMappingList": [
        {
            "ResourceARN": "arn:aws:kinesisvideo:us-west-2:0123456789012:stream/<my-prefix>-connect-<my-username>-contact-b7443850-6b5b-4def-b3c2-d5b7d92cfc53/1691776084391",
            "Tags": [
                {
                    "Key": "connect:source-type",
                    "Value": "contact"
                },
                {
                    "Key": "connect:instance-id",
                    "Value": <my-connect-instance-id>
                }
            ]
        }
    ]
}

Here, the ARN for the stream is:

<my-prefix>-connect-<my-username>-contact-b7443850-6b5b-4def-b3c2-d5b7d92cfc53/1691776084391

where <my-prefix> and <my-username> are specific to my Amazon Connect instance.

From what I’ve gleaned, the unique contact ID here is:

b7443850-6b5b-4def-b3c2-d5b7d92cfc53/1691776084391

But notice the slash here /. That triggers issues with the AWS CLI command:

aws kinesis describe-stream --stream-name "<my-prefix>-connect-<my-username>-contact-b7443850-6b5b-4def-b3c2-d5b7d92cfc53/1691776084391"

which leads to the error:

An error occurred (ValidationException) when calling the DescribeStream operation: 1 validation error detected: Value '<prefix>-connect-<username>-contact-fdc70c90-0153-4b78-9012-00316c829524/1691776086035' at 'streamName' failed to satisfy constraint: Member must satisfy regular expression pattern: [a-zA-Z0-9_.-]+

QUESTIONS: what is the stream name here? If what I am using is correct, then why is the describe-stream command returning an error?

NOTE: my ultimate goal is to wire up a Golang app that reads the live audio stream, so somehow I need to tap into the corresponding Kinesis Video Stream when a call triggers … all of this outside of the context of AWS (IE, I am not using Lambda). In that sense, the real question is less about the naming conventions for this sort of stream and more about how my app can be fired when such streaming commences.

2

Answers


  1. It looks like the use of the forward slash is not allowed within the given Regex constraints. Run the command

    aws kinesis list-streams
    

    With the appropriate aws creds and region, and this should give you a paginated output of streams along with their names and ARNs. You can then use this to determine the correct ARN format.

    Login or Signup to reply.
  2. The stream name is <my-prefix>-connect-<my-username>-contact-b7443850-6b5b-4def-b3c2-d5b7d92cfc53, without the /1691776084391 timestamp suffix. You can check this out in the AWS console, Kinesis Video streams.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search