channels
Creates, updates, deletes or gets a channel resource or lists channels in a region
Overview
| Name | channels |
| Type | Resource |
| Description | Resource Type definition for AWS::IVS::Channel |
| Id | awscc.ivs.channels |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
arn | string | Channel ARN is automatically generated on creation and assigned as the unique identifier. |
name | string | Channel |
authorized | boolean | Whether the channel is authorized. |
insecure_ingest | boolean | Whether the channel allows insecure ingest. |
latency_mode | string | Channel latency mode. |
type | string | Channel type, which determines the allowable resolution and bitrate. If you exceed the allowable resolution or bitrate, the stream probably will disconnect immediately. |
tags | array | A list of key-value pairs that contain metadata for the asset model. |
playback_url | string | Channel Playback URL. |
ingest_endpoint | string | Channel ingest endpoint, part of the definition of an ingest server, used when you set up streaming software. |
recording_configuration_arn | string | Recording Configuration ARN. A value other than an empty string indicates that recording is enabled. Default: "" (recording is disabled). |
preset | string | Optional transcode preset for the channel. This is selectable only for ADVANCED_HD and ADVANCED_SD channel types. For those channel types, the default preset is HIGHER_BANDWIDTH_DELIVERY. For other channel types (BASIC and STANDARD), preset is the empty string (""). |
multitrack_input_configuration | object | |
container_format | string | Indicates which content-packaging format is used (MPEG-TS or fMP4). If multitrackInputConfiguration is specified and enabled is true, then containerFormat is required and must be set to FRAGMENTED_MP4. Otherwise, containerFormat may be set to TS or FRAGMENTED_MP4. Default: TS. |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
arn | string | Channel ARN is automatically generated on creation and assigned as the unique identifier. |
region | string | AWS region. |
For more information, see AWS::IVS::Channel.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | channels | INSERT | , region |
delete_resource | channels | DELETE | Identifier, region |
update_resource | channels | UPDATE | Identifier, PatchDocument, region |
list_resources | channels_list_only | SELECT | region |
get_resource | channels | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual channel.
SELECT
region,
arn,
name,
authorized,
insecure_ingest,
latency_mode,
type,
tags,
playback_url,
ingest_endpoint,
recording_configuration_arn,
preset,
multitrack_input_configuration,
container_format
FROM awscc.ivs.channels
WHERE
region = '{{ region }}' AND
Identifier = '{{ arn }}';
Lists all channels in a region.
SELECT
region,
arn
FROM awscc.ivs.channels_list_only
WHERE
region = '{{ region }}';
INSERT example
Use the following StackQL query and manifest file to create a new channel resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.ivs.channels (
,
region
)
SELECT
'{{ }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
/*+ create */
INSERT INTO awscc.ivs.channels (
Name,
Authorized,
InsecureIngest,
LatencyMode,
Type,
Tags,
RecordingConfigurationArn,
Preset,
MultitrackInputConfiguration,
ContainerFormat,
region
)
SELECT
'{{ name }}',
'{{ authorized }}',
'{{ insecure_ingest }}',
'{{ latency_mode }}',
'{{ type }}',
'{{ tags }}',
'{{ recording_configuration_arn }}',
'{{ preset }}',
'{{ multitrack_input_configuration }}',
'{{ container_format }}',
'{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: channel
props:
- name: name
value: '{{ name }}'
- name: authorized
value: '{{ authorized }}'
- name: insecure_ingest
value: '{{ insecure_ingest }}'
- name: latency_mode
value: '{{ latency_mode }}'
- name: type
value: '{{ type }}'
- name: tags
value:
- key: '{{ key }}'
value: '{{ value }}'
- name: recording_configuration_arn
value: '{{ recording_configuration_arn }}'
- name: preset
value: '{{ preset }}'
- name: multitrack_input_configuration
value:
enabled: '{{ enabled }}'
maximum_resolution: '{{ maximum_resolution }}'
policy: '{{ policy }}'
- name: container_format
value: '{{ container_format }}'
UPDATE example
Use the following StackQL query and manifest file to update a channel resource, using stack-deploy.
/*+ update */
UPDATE awscc.ivs.channels
SET PatchDocument = string('{{ {
"Name": name,
"Authorized": authorized,
"InsecureIngest": insecure_ingest,
"LatencyMode": latency_mode,
"Type": type,
"Tags": tags,
"RecordingConfigurationArn": recording_configuration_arn,
"Preset": preset,
"MultitrackInputConfiguration": multitrack_input_configuration,
"ContainerFormat": container_format
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ arn }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
DELETE example
/*+ delete */
DELETE FROM awscc.ivs.channels
WHERE
Identifier = '{{ arn }}' AND
region = '{{ region }}'
RETURNING
ErrorCode,
EventTime,
Identifier,
Operation,
OperationStatus,
RequestToken,
ResourceModel,
RetryAfter,
StatusMessage,
TypeName
;
Additional Parameters
Mutable resources in the Cloud Control provider support additional optional parameters which can be supplied with INSERT, UPDATE, or DELETE operations. These include:
| Parameter | Description |
|---|---|
ClientToken | A unique identifier to ensure the idempotency of the resource request.This allows the provider to accurately distinguish between retries and new requests.A client token is valid for 36 hours once used. After that, a resource request with the same client token is treated as a new request. If you do not specify a client token, one is generated for inclusion in the request. |
RoleArn | The ARN of the IAM role used to perform this resource operation.The role specified must have the permissions required for this operation.If you do not specify a role, a temporary session is created using your AWS user credentials. |
TypeVersionId | For private resource types, the type version to use in this resource operation.If you do not specify a resource version, the default version is used. |
Permissions
To operate on the channels resource, the following permissions are required:
- Create
- Read
- Update
- Delete
- List
ivs:CreateChannel,
ivs:TagResource
ivs:GetChannel,
ivs:ListTagsForResource
ivs:GetChannel,
ivs:UpdateChannel,
ivs:TagResource,
ivs:UntagResource,
ivs:ListTagsForResource
ivs:DeleteChannel,
ivs:UntagResource
ivs:ListChannels,
ivs:ListTagsForResource