AWS.IVSRealTime — AWS SDK for JavaScript (original) (raw)
We recommend that you migrate to AWS SDK for JavaScript v3. For dates, additional details, and information on how to migrate, please refer to the linked announcement.
Overview
Constructs a service interface object. Each API operation is exposed as a function on service.
Service Description
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.
Key Concepts
- Stage — A virtual space where participants can exchange video in real time.
- Participant token — A token that authenticates a participant when they join a stage.
- 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.
For server-side composition:
- 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.
- Composition — Controls the look of the outputs, including how participants are positioned in the video.
For more information about your IVS live stream, also see Getting Started with Amazon IVS Real-Time Streaming.
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.
Sending a Request Using IVSRealTime
var ivsrealtime = new AWS.IVSRealTime();
ivsrealtime.createEncoderConfiguration(params, function (err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
Locking the API Version
In order to ensure that the IVSRealTime object uses this specific API, you can construct the object by passing the apiVersion
option to the constructor:
var ivsrealtime = new AWS.IVSRealTime({apiVersion: '2020-07-14'});
You can also set the API version globally in AWS.config.apiVersions
using the ivsrealtime service identifier:
AWS.config.apiVersions = {
ivsrealtime: '2020-07-14',
// other service API versions
};
var ivsrealtime = new AWS.IVSRealTime();
Constructor Summarycollapse
- new AWS.IVSRealTime(options = {}) ⇒ Object constructor
Constructs a service object.
Property Summarycollapse
- endpoint ⇒ AWS.Endpoint readwrite
An Endpoint object representing the endpoint URL for service requests.
Properties inherited from AWS.Service
Method Summarycollapse
- createEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Creates an EncoderConfiguration object.
. - createParticipantToken(params = {}, callback) ⇒ AWS.Request
Creates an additional token for a specified stage. - createStage(params = {}, callback) ⇒ AWS.Request
Creates a new stage (and optionally participant tokens).
. - createStorageConfiguration(params = {}, callback) ⇒ AWS.Request
Creates a new storage configuration, used to enable recording to Amazon S3. - deleteEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Deletes an EncoderConfiguration resource. - deletePublicKey(params = {}, callback) ⇒ AWS.Request
Deletes the specified public key used to sign stage participant tokens. - deleteStage(params = {}, callback) ⇒ AWS.Request
Shuts down and deletes the specified stage (disconnecting all participants).
. - deleteStorageConfiguration(params = {}, callback) ⇒ AWS.Request
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). - disconnectParticipant(params = {}, callback) ⇒ AWS.Request
Disconnects a specified participant and revokes the participant permanently from a specified stage.
. - getComposition(params = {}, callback) ⇒ AWS.Request
Get information about the specified Composition resource.
. - getEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Gets information about the specified EncoderConfiguration resource. - getParticipant(params = {}, callback) ⇒ AWS.Request
Gets information about the specified participant token.
. - getPublicKey(params = {}, callback) ⇒ AWS.Request
Gets information for the specified public key.
. - getStage(params = {}, callback) ⇒ AWS.Request
Gets information for the specified stage.
. - getStageSession(params = {}, callback) ⇒ AWS.Request
Gets information for the specified stage session.
. - getStorageConfiguration(params = {}, callback) ⇒ AWS.Request
Gets the storage configuration for the specified ARN.
. - importPublicKey(params = {}, callback) ⇒ AWS.Request
Import a public key to be used for signing stage participant tokens.
. - listCompositions(params = {}, callback) ⇒ AWS.Request
Gets summary information about all Compositions in your account, in the AWS region where the API request is processed. - listEncoderConfigurations(params = {}, callback) ⇒ AWS.Request
Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.
. - listParticipantEvents(params = {}, callback) ⇒ AWS.Request
Lists events for a specified participant that occurred during a specified stage session.
. - listParticipants(params = {}, callback) ⇒ AWS.Request
Lists all participants in a specified stage session.
. - listPublicKeys(params = {}, callback) ⇒ AWS.Request
Gets summary information about all public keys in your account, in the AWS region where the API request is processed.
. - listStages(params = {}, callback) ⇒ AWS.Request
Gets summary information about all stages in your account, in the AWS region where the API request is processed.
. - listStageSessions(params = {}, callback) ⇒ AWS.Request
Gets all sessions for a specified stage.
. - listStorageConfigurations(params = {}, callback) ⇒ AWS.Request
Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.
. - listTagsForResource(params = {}, callback) ⇒ AWS.Request
Gets information about AWS tags for the specified ARN.
. - startComposition(params = {}, callback) ⇒ AWS.Request
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. - stopComposition(params = {}, callback) ⇒ AWS.Request
Stops and deletes a Composition resource. - tagResource(params = {}, callback) ⇒ AWS.Request
Adds or updates tags for the AWS resource with the specified ARN.
. - untagResource(params = {}, callback) ⇒ AWS.Request
Removes tags from the resource with the specified ARN.
. - updateStage(params = {}, callback) ⇒ AWS.Request
Updates a stage’s configuration.
. - waitFor(state, params = {}, callback) ⇒ AWS.Request
Waits for a given IVSRealTime resource.
Methods inherited from AWS.Service
makeRequest, makeUnauthenticatedRequest, setupRequestListeners, defineService
Constructor Details
new AWS.IVSRealTime(options = {}) ⇒ Object
Constructs a service object. This object has one method for each API operation.
Property Details
endpoint ⇒ AWS.Endpoint
Returns an Endpoint object representing the endpoint URL for service requests.
Method Details
createEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Creates an EncoderConfiguration object.
createParticipantToken(params = {}, callback) ⇒ AWS.Request
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.
createStage(params = {}, callback) ⇒ AWS.Request
Creates a new stage (and optionally participant tokens).
createStorageConfiguration(params = {}, callback) ⇒ AWS.Request
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.
deleteEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.
deletePublicKey(params = {}, callback) ⇒ AWS.Request
Deletes the specified public key used to sign stage participant tokens. This invalidates future participant tokens generated using the key pair’s private key.
deleteStage(params = {}, callback) ⇒ AWS.Request
Shuts down and deletes the specified stage (disconnecting all participants).
deleteStorageConfiguration(params = {}, callback) ⇒ AWS.Request
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.
disconnectParticipant(params = {}, callback) ⇒ AWS.Request
Disconnects a specified participant and revokes the participant permanently from a specified stage.
getComposition(params = {}, callback) ⇒ AWS.Request
Get information about the specified Composition resource.
getEncoderConfiguration(params = {}, callback) ⇒ AWS.Request
Gets information about the specified EncoderConfiguration resource.
getParticipant(params = {}, callback) ⇒ AWS.Request
Gets information about the specified participant token.
getPublicKey(params = {}, callback) ⇒ AWS.Request
Gets information for the specified public key.
getStage(params = {}, callback) ⇒ AWS.Request
Gets information for the specified stage.
getStageSession(params = {}, callback) ⇒ AWS.Request
Gets information for the specified stage session.
getStorageConfiguration(params = {}, callback) ⇒ AWS.Request
Gets the storage configuration for the specified ARN.
importPublicKey(params = {}, callback) ⇒ AWS.Request
Import a public key to be used for signing stage participant tokens.
listCompositions(params = {}, callback) ⇒ AWS.Request
Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.
listEncoderConfigurations(params = {}, callback) ⇒ AWS.Request
Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.
listParticipantEvents(params = {}, callback) ⇒ AWS.Request
Lists events for a specified participant that occurred during a specified stage session.
listParticipants(params = {}, callback) ⇒ AWS.Request
Lists all participants in a specified stage session.
listPublicKeys(params = {}, callback) ⇒ AWS.Request
Gets summary information about all public keys in your account, in the AWS region where the API request is processed.
listStages(params = {}, callback) ⇒ AWS.Request
Gets summary information about all stages in your account, in the AWS region where the API request is processed.
listStageSessions(params = {}, callback) ⇒ AWS.Request
Gets all sessions for a specified stage.
listStorageConfigurations(params = {}, callback) ⇒ AWS.Request
Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.
listTagsForResource(params = {}, callback) ⇒ AWS.Request
Gets information about AWS tags for the specified ARN.
startComposition(params = {}, callback) ⇒ AWS.Request
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.
stopComposition(params = {}, callback) ⇒ AWS.Request
Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.
tagResource(params = {}, callback) ⇒ AWS.Request
Adds or updates tags for the AWS resource with the specified ARN.
untagResource(params = {}, callback) ⇒ AWS.Request
Removes tags from the resource with the specified ARN.
updateStage(params = {}, callback) ⇒ AWS.Request
Updates a stage’s configuration.
waitFor(state, params = {}, callback) ⇒ AWS.Request
Waits for a given IVSRealTime resource. The final callback or'complete' event will be fired only when the resource is either in its final state or the waiter has timed out and stopped polling for the final state.