AWS::IVS::IngestConfiguration - AWS CloudFormation

AWS::IVS::IngestConfiguration

The AWS::IVS::IngestConfiguration resource specifies an ingest protocol to be used for a stage. For more information, see Stream Ingest in the Amazon IVS Real-Time Streaming User Guide.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IVS::IngestConfiguration", "Properties" : { "IngestProtocol" : String, "InsecureIngest" : Boolean, "Name" : String, "StageArn" : String, "Tags" : [ Tag, ... ], "UserId" : String } }

YAML

Type: AWS::IVS::IngestConfiguration Properties: IngestProtocol: String InsecureIngest: Boolean Name: String StageArn: String Tags: - Tag UserId: String

Properties

IngestProtocol

Type of ingest protocol that the user employs for broadcasting.

Required: No

Type: String

Allowed values: RTMP | RTMPS

Update requires: Replacement

InsecureIngest

Whether the channel allows insecure RTMP ingest. Default: false.

Required: No

Type: Boolean

Update requires: Replacement

Name

Ingest name.

Required: No

Type: String

Pattern: ^[a-zA-Z0-9-_]*$

Minimum: 0

Maximum: 128

Update requires: Replacement

StageArn

ARN of the stage with which the IngestConfiguration is associated.

Required: No

Type: String

Pattern: ^arn:aws:ivs:[a-z0-9-]+:[0-9]+:stage/[a-zA-Z0-9-]+$

Minimum: 0

Maximum: 128

Update requires: No interruption

Tags

An array of key-value pairs to apply to this resource.

Required: No

Type: Array of Tag

Maximum: 50

Update requires: No interruption

UserId

Customer-assigned name to help identify the participant using the IngestConfiguration; this can be used to link a participant to a user in the customer’s own systems. This can be any UTF-8 encoded text. This field is exposed to all stage participants and should not be used for personally identifying, confidential, or sensitive information.

Required: No

Type: String

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the ingest configuration ARN. For example:

{ "Ref": "myIngestConfiguration" }

For the Amazon IVS ingest configuration myIngestConfiguration, Ref returns the ingest configuration ARN.

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

The ingest-configuration ARN. For example: arn:aws:ivs:us-west-2:123456789012:ingest-configuration/abcdABCDefgh

ParticipantId

ID of the participant within the stage. For example: abCDEf12GHIj

State

State of the ingest configuration. It is ACTIVE if a publisher currently is publishing to the stage associated with the ingest configuration. Valid values: ACTIVE | INACTIVE.

StreamKey

Ingest-key value for the RTMP(S) protocol. For example: skSKABCDefgh

Examples

Ingest Configuration Template Examples

The following examples specify an Amazon IVS ingest configuration.

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Resources": { "Stage": { "Type": "AWS::IVS::Stage", "Properties": { "Name": "myStage", "Tags": [ { "Key": "MyKey", "Value": "MyValue" } ] } }, "IngestConfiguration": { "Type": "AWS::IVS::IngestConfiguration", "Properties": { "Name": "myIngest", "StageArn": {"Ref": "Stage"}, "IngestProtocol": "RTMPS", "InsecureIngest": false, "UserId": "myUser", "Tags": [ { "Key": "MyKey", "Value": "MyValue" } ] } } }, "Outputs": { "IngestConfigurationArn": { "Value": {"Ref": "IngestConfiguration"} }, "IngestConfigurationState": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "State" ] } }, "IngestConfigurationStreamKey": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "StreamKey" ] } }, "IngestConfigurationParticipantId": { "Value": { "Fn::GetAtt": [ "IngestConfiguration", "ParticipantId" ] } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Resources: Stage: Type: AWS::IVS::Stage Properties: Name: MyStage Tags: - Key: MyKey Value: MyValue IngestConfiguration: Type: AWS::IVS::IngestConfiguration Properties: Name: myIngestName IngestProtocol: RTMPS InsecureIngest: false UserId: myUser StageArn: !Ref Stage Tags: - Key: MyKey Value: MyValue Outputs: IngestConfigurationArn: Value: !Ref IngestConfiguration IngestConfigurationState: Value: !GetAtt IngestConfiguration.State IngestConfigurationStreamKey: Value: !GetAtt IngestConfiguration.StreamKey IngestConfigurationParticipantId: Value: !GetAtt IngestConfiguration.ParticipantId

See also