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
-
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
-
IngestConfiguration data type
-
CreateIngestConfiguration API endpoint
-
DeleteIngestConfiguration API endpoint
-
GetIngestConfiguration API endpoint
-
ListIngestConfigurations API endpoint
-
UpdateIngestConfiguration API endpoint