View Source AWS.IVSRealTime (aws-elixir v1.0.0)

Introduction

The Amazon Interactive Video Service (IVS) real-time API is REST compatible, using a standard HTTP API and an AWS EventBridge event stream for responses.

JSON is used for both requests and responses, including errors.

Terminology:

A stage* is a virtual space where participants can exchange video in real time.

A participant token* is a token that authenticates a participant when they join a stage.

A participant object* represents participants (people) in the stage and contains information about them. When a token is created, it includes a participant ID; when a participant uses that token to join a stage, the participant is associated with that participant ID. There is a 1:1 mapping between participant tokens and participants.

Server-side composition: The composition* process composites participants of a stage into a single video and forwards it to a set of outputs (e.g., IVS channels). Composition endpoints support this process.

Server-side composition: A composition* controls the look of the outputs, including how participants are positioned in the video.

Resources

The following resources contain information about your IVS live stream (see Getting Started with Amazon IVS Real-Time Streaming):

*

Stage — A stage is a virtual space where participants can exchange video in real time.

Tagging

A tag is a metadata label that you assign to an AWS resource. A tag comprises a key and a value, both set by you. For example, you might set a tag as topic:nature to label a particular video category. See Tagging AWS Resources for more information, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS stages has no service-specific constraints beyond what is documented there.

Tags can help you identify and organize your AWS resources. For example, you can use the same tag for different resources to indicate that they are related. You can also use tags to manage access (see Access Tags).

The Amazon IVS real-time API has these tag-related endpoints: TagResource, UntagResource, and ListTagsForResource. The following resource supports tagging: Stage.

At most 50 tags can be applied to a resource.

Stages Endpoints

*

CreateParticipantToken — Creates an additional token for a specified stage. This can be done after stage creation or when tokens expire.

*

CreateStage — Creates a new stage (and optionally participant tokens).

*

DeleteStage — Shuts down and deletes the specified stage (disconnecting all participants).

*

DisconnectParticipant — Disconnects a specified participant and revokes the participant permanently from a specified stage.

*

GetParticipant — Gets information about the specified participant token.

*

GetStage — Gets information for the specified stage.

*

GetStageSession — Gets information for the specified stage session.

*

ListParticipantEvents — Lists events for a specified participant that occurred during a specified stage session.

*

ListParticipants — Lists all participants in a specified stage session.

*

ListStages — Gets summary information about all stages in your account, in the AWS region where the API request is processed.

*

ListStageSessions — Gets all sessions for a specified stage.

*

UpdateStage — Updates a stage’s configuration.

Composition Endpoints

*

GetComposition — Gets information about the specified Composition resource.

*

ListCompositions — Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

*

StartComposition — Starts a Composition from a stage based on the configuration provided in the request.

*

StopComposition — Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.

EncoderConfiguration Endpoints

*

CreateEncoderConfiguration — Creates an EncoderConfiguration object.

*

DeleteEncoderConfiguration — Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.

*

GetEncoderConfiguration — Gets information about the specified EncoderConfiguration resource.

*

ListEncoderConfigurations — Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

StorageConfiguration Endpoints

*

CreateStorageConfiguration — Creates a new storage configuration, used to enable recording to Amazon S3.

*

DeleteStorageConfiguration — Deletes the storage configuration for the specified ARN.

*

GetStorageConfiguration — Gets the storage configuration for the specified ARN.

*

ListStorageConfigurations — Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Tags Endpoints

*

ListTagsForResource — Gets information about AWS tags for the specified ARN.

*

TagResource — Adds or updates tags for the AWS resource with the specified ARN.

*

UntagResource — Removes tags from the resource with the specified ARN.

Summary

Functions

Creates an EncoderConfiguration object.

Creates an additional token for a specified stage.

Creates a new stage (and optionally participant tokens).

Creates a new storage configuration, used to enable recording to Amazon S3.

Deletes an EncoderConfiguration resource.

Shuts down and deletes the specified stage (disconnecting all participants).

Deletes the storage configuration for the specified ARN.

Disconnects a specified participant and revokes the participant permanently from a specified stage.

Get information about the specified Composition resource.

Gets information about the specified EncoderConfiguration resource.

Gets information about the specified participant token.

Gets information for the specified stage.

Gets information for the specified stage session.

Gets the storage configuration for the specified ARN.

Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

Lists events for a specified participant that occurred during a specified stage session.

Lists all participants in a specified stage session.

Gets all sessions for a specified stage.

Gets summary information about all stages in your account, in the AWS region where the API request is processed.

Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Gets information about AWS tags for the specified ARN.

Starts a Composition from a stage based on the configuration provided in the request.

Stops and deletes a Composition resource.

Adds or updates tags for the AWS resource with the specified ARN.

Removes tags from the resource with the specified ARN.

Updates a stage’s configuration.

Functions

Link to this function

create_encoder_configuration(client, input, options \\ [])

View Source

Creates an EncoderConfiguration object.

Link to this function

create_participant_token(client, input, options \\ [])

View Source

Creates an additional token for a specified stage.

This can be done after stage creation or when tokens expire. Tokens always are scoped to the stage for which they are created.

Encryption keys are owned by Amazon IVS and never used directly by your application.

Link to this function

create_stage(client, input, options \\ [])

View Source

Creates a new stage (and optionally participant tokens).

Link to this function

create_storage_configuration(client, input, options \\ [])

View Source

Creates a new storage configuration, used to enable recording to Amazon S3.

When a StorageConfiguration is created, IVS will modify the S3 bucketPolicy of the provided bucket. This will ensure that IVS has sufficient permissions to write content to the provided bucket.

Link to this function

delete_encoder_configuration(client, input, options \\ [])

View Source

Deletes an EncoderConfiguration resource.

Ensures that no Compositions are using this template; otherwise, returns an error.

Link to this function

delete_stage(client, input, options \\ [])

View Source

Shuts down and deletes the specified stage (disconnecting all participants).

Link to this function

delete_storage_configuration(client, input, options \\ [])

View Source

Deletes the storage configuration for the specified ARN.

If you try to delete a storage configuration that is used by a Composition, you will get an error (409 ConflictException). To avoid this, for all Compositions that reference the storage configuration, first use StopComposition and wait for it to complete, then use DeleteStorageConfiguration.

Link to this function

disconnect_participant(client, input, options \\ [])

View Source

Disconnects a specified participant and revokes the participant permanently from a specified stage.

Link to this function

get_composition(client, input, options \\ [])

View Source

Get information about the specified Composition resource.

Link to this function

get_encoder_configuration(client, input, options \\ [])

View Source

Gets information about the specified EncoderConfiguration resource.

Link to this function

get_participant(client, input, options \\ [])

View Source

Gets information about the specified participant token.

Link to this function

get_stage(client, input, options \\ [])

View Source

Gets information for the specified stage.

Link to this function

get_stage_session(client, input, options \\ [])

View Source

Gets information for the specified stage session.

Link to this function

get_storage_configuration(client, input, options \\ [])

View Source

Gets the storage configuration for the specified ARN.

Link to this function

list_compositions(client, input, options \\ [])

View Source

Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.

Link to this function

list_encoder_configurations(client, input, options \\ [])

View Source

Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.

Link to this function

list_participant_events(client, input, options \\ [])

View Source

Lists events for a specified participant that occurred during a specified stage session.

Link to this function

list_participants(client, input, options \\ [])

View Source

Lists all participants in a specified stage session.

Link to this function

list_stage_sessions(client, input, options \\ [])

View Source

Gets all sessions for a specified stage.

Link to this function

list_stages(client, input, options \\ [])

View Source

Gets summary information about all stages in your account, in the AWS region where the API request is processed.

Link to this function

list_storage_configurations(client, input, options \\ [])

View Source

Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.

Link to this function

list_tags_for_resource(client, resource_arn, options \\ [])

View Source

Gets information about AWS tags for the specified ARN.

Link to this function

start_composition(client, input, options \\ [])

View Source

Starts a Composition from a stage based on the configuration provided in the request.

A Composition is an ephemeral resource that exists after this endpoint returns successfully. Composition stops and the resource is deleted:

* When StopComposition is called.

* After a 1-minute timeout, when all participants are disconnected from the stage.

* After a 1-minute timeout, if there are no participants in the stage when StartComposition is called.

* When broadcasting to the IVS channel fails and all retries are exhausted.

* When broadcasting is disconnected and all attempts to reconnect are exhausted.

Link to this function

stop_composition(client, input, options \\ [])

View Source

Stops and deletes a Composition resource.

Any broadcast from the Composition resource is stopped.

Link to this function

tag_resource(client, resource_arn, input, options \\ [])

View Source

Adds or updates tags for the AWS resource with the specified ARN.

Link to this function

untag_resource(client, resource_arn, input, options \\ [])

View Source

Removes tags from the resource with the specified ARN.

Link to this function

update_stage(client, input, options \\ [])

View Source

Updates a stage’s configuration.