@ThreadSafe @Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AmazonIVSRealTimeClient extends AmazonWebServiceClient implements AmazonIVSRealTime
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.
LOGGING_AWS_REQUEST_METRIC
ENDPOINT_PREFIX
Modifier and Type | Method and Description |
---|---|
static AmazonIVSRealTimeClientBuilder |
builder() |
CreateEncoderConfigurationResult |
createEncoderConfiguration(CreateEncoderConfigurationRequest request)
Creates an EncoderConfiguration object.
|
CreateParticipantTokenResult |
createParticipantToken(CreateParticipantTokenRequest request)
Creates an additional token for a specified stage.
|
CreateStageResult |
createStage(CreateStageRequest request)
Creates a new stage (and optionally participant tokens).
|
CreateStorageConfigurationResult |
createStorageConfiguration(CreateStorageConfigurationRequest request)
Creates a new storage configuration, used to enable recording to Amazon S3.
|
DeleteEncoderConfigurationResult |
deleteEncoderConfiguration(DeleteEncoderConfigurationRequest request)
Deletes an EncoderConfiguration resource.
|
DeletePublicKeyResult |
deletePublicKey(DeletePublicKeyRequest request)
Deletes the specified public key used to sign stage participant tokens.
|
DeleteStageResult |
deleteStage(DeleteStageRequest request)
Shuts down and deletes the specified stage (disconnecting all participants).
|
DeleteStorageConfigurationResult |
deleteStorageConfiguration(DeleteStorageConfigurationRequest request)
Deletes the storage configuration for the specified ARN.
|
DisconnectParticipantResult |
disconnectParticipant(DisconnectParticipantRequest request)
Disconnects a specified participant and revokes the participant permanently from a specified stage.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful, request, typically used for debugging issues
where a service isn't acting as expected.
|
GetCompositionResult |
getComposition(GetCompositionRequest request)
Get information about the specified Composition resource.
|
GetEncoderConfigurationResult |
getEncoderConfiguration(GetEncoderConfigurationRequest request)
Gets information about the specified EncoderConfiguration resource.
|
GetParticipantResult |
getParticipant(GetParticipantRequest request)
Gets information about the specified participant token.
|
GetPublicKeyResult |
getPublicKey(GetPublicKeyRequest request)
Gets information for the specified public key.
|
GetStageResult |
getStage(GetStageRequest request)
Gets information for the specified stage.
|
GetStageSessionResult |
getStageSession(GetStageSessionRequest request)
Gets information for the specified stage session.
|
GetStorageConfigurationResult |
getStorageConfiguration(GetStorageConfigurationRequest request)
Gets the storage configuration for the specified ARN.
|
ImportPublicKeyResult |
importPublicKey(ImportPublicKeyRequest request)
Import a public key to be used for signing stage participant tokens.
|
ListCompositionsResult |
listCompositions(ListCompositionsRequest request)
Gets summary information about all Compositions in your account, in the AWS region where the API request is
processed.
|
ListEncoderConfigurationsResult |
listEncoderConfigurations(ListEncoderConfigurationsRequest request)
Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request
is processed.
|
ListParticipantEventsResult |
listParticipantEvents(ListParticipantEventsRequest request)
Lists events for a specified participant that occurred during a specified stage session.
|
ListParticipantsResult |
listParticipants(ListParticipantsRequest request)
Lists all participants in a specified stage session.
|
ListPublicKeysResult |
listPublicKeys(ListPublicKeysRequest request)
Gets summary information about all public keys in your account, in the AWS region where the API request is
processed.
|
ListStagesResult |
listStages(ListStagesRequest request)
Gets summary information about all stages in your account, in the AWS region where the API request is processed.
|
ListStageSessionsResult |
listStageSessions(ListStageSessionsRequest request)
Gets all sessions for a specified stage.
|
ListStorageConfigurationsResult |
listStorageConfigurations(ListStorageConfigurationsRequest request)
Gets summary information about all storage configurations in your account, in the AWS region where the API
request is processed.
|
ListTagsForResourceResult |
listTagsForResource(ListTagsForResourceRequest request)
Gets information about AWS tags for the specified ARN.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
StartCompositionResult |
startComposition(StartCompositionRequest request)
Starts a Composition from a stage based on the configuration provided in the request.
|
StopCompositionResult |
stopComposition(StopCompositionRequest request)
Stops and deletes a Composition resource.
|
TagResourceResult |
tagResource(TagResourceRequest request)
Adds or updates tags for the AWS resource with the specified ARN.
|
UntagResourceResult |
untagResource(UntagResourceRequest request)
Removes tags from the resource with the specified ARN.
|
UpdateStageResult |
updateStage(UpdateStageRequest request)
Updates a stage’s configuration.
|
addRequestHandler, addRequestHandler, configureRegion, getClientConfiguration, getEndpointPrefix, getMonitoringListeners, getRequestMetricsCollector, getServiceName, getSignerByURI, getSignerOverride, getSignerRegionOverride, getTimeOffset, makeImmutable, removeRequestHandler, removeRequestHandler, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
public static AmazonIVSRealTimeClientBuilder builder()
public CreateEncoderConfigurationResult createEncoderConfiguration(CreateEncoderConfigurationRequest request)
Creates an EncoderConfiguration object.
createEncoderConfiguration
in interface AmazonIVSRealTime
createEncoderConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
PendingVerificationException
public CreateParticipantTokenResult createParticipantToken(CreateParticipantTokenRequest 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.
createParticipantToken
in interface AmazonIVSRealTime
createParticipantTokenRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
ServiceQuotaExceededException
PendingVerificationException
public CreateStageResult createStage(CreateStageRequest request)
Creates a new stage (and optionally participant tokens).
createStage
in interface AmazonIVSRealTime
createStageRequest
- ValidationException
AccessDeniedException
ServiceQuotaExceededException
PendingVerificationException
public CreateStorageConfigurationResult createStorageConfiguration(CreateStorageConfigurationRequest 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.
createStorageConfiguration
in interface AmazonIVSRealTime
createStorageConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
PendingVerificationException
public DeleteEncoderConfigurationResult deleteEncoderConfiguration(DeleteEncoderConfigurationRequest request)
Deletes an EncoderConfiguration resource. Ensures that no Compositions are using this template; otherwise, returns an error.
deleteEncoderConfiguration
in interface AmazonIVSRealTime
deleteEncoderConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public DeletePublicKeyResult deletePublicKey(DeletePublicKeyRequest 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.
deletePublicKey
in interface AmazonIVSRealTime
deletePublicKeyRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
ConflictException
PendingVerificationException
public DeleteStageResult deleteStage(DeleteStageRequest request)
Shuts down and deletes the specified stage (disconnecting all participants).
deleteStage
in interface AmazonIVSRealTime
deleteStageRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
ConflictException
PendingVerificationException
public DeleteStorageConfigurationResult deleteStorageConfiguration(DeleteStorageConfigurationRequest 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.
deleteStorageConfiguration
in interface AmazonIVSRealTime
deleteStorageConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public DisconnectParticipantResult disconnectParticipant(DisconnectParticipantRequest request)
Disconnects a specified participant and revokes the participant permanently from a specified stage.
disconnectParticipant
in interface AmazonIVSRealTime
disconnectParticipantRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
PendingVerificationException
public GetCompositionResult getComposition(GetCompositionRequest request)
Get information about the specified Composition resource.
getComposition
in interface AmazonIVSRealTime
getCompositionRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public GetEncoderConfigurationResult getEncoderConfiguration(GetEncoderConfigurationRequest request)
Gets information about the specified EncoderConfiguration resource.
getEncoderConfiguration
in interface AmazonIVSRealTime
getEncoderConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public GetParticipantResult getParticipant(GetParticipantRequest request)
Gets information about the specified participant token.
getParticipant
in interface AmazonIVSRealTime
getParticipantRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
public GetPublicKeyResult getPublicKey(GetPublicKeyRequest request)
Gets information for the specified public key.
getPublicKey
in interface AmazonIVSRealTime
getPublicKeyRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
public GetStageResult getStage(GetStageRequest request)
Gets information for the specified stage.
getStage
in interface AmazonIVSRealTime
getStageRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
public GetStageSessionResult getStageSession(GetStageSessionRequest request)
Gets information for the specified stage session.
getStageSession
in interface AmazonIVSRealTime
getStageSessionRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
public GetStorageConfigurationResult getStorageConfiguration(GetStorageConfigurationRequest request)
Gets the storage configuration for the specified ARN.
getStorageConfiguration
in interface AmazonIVSRealTime
getStorageConfigurationRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public ImportPublicKeyResult importPublicKey(ImportPublicKeyRequest request)
Import a public key to be used for signing stage participant tokens.
importPublicKey
in interface AmazonIVSRealTime
importPublicKeyRequest
- ValidationException
AccessDeniedException
ServiceQuotaExceededException
ConflictException
PendingVerificationException
public ListCompositionsResult listCompositions(ListCompositionsRequest request)
Gets summary information about all Compositions in your account, in the AWS region where the API request is processed.
listCompositions
in interface AmazonIVSRealTime
listCompositionsRequest
- ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public ListEncoderConfigurationsResult listEncoderConfigurations(ListEncoderConfigurationsRequest request)
Gets summary information about all EncoderConfigurations in your account, in the AWS region where the API request is processed.
listEncoderConfigurations
in interface AmazonIVSRealTime
listEncoderConfigurationsRequest
- ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public ListParticipantEventsResult listParticipantEvents(ListParticipantEventsRequest request)
Lists events for a specified participant that occurred during a specified stage session.
listParticipantEvents
in interface AmazonIVSRealTime
listParticipantEventsRequest
- ValidationException
AccessDeniedException
public ListParticipantsResult listParticipants(ListParticipantsRequest request)
Lists all participants in a specified stage session.
listParticipants
in interface AmazonIVSRealTime
listParticipantsRequest
- ValidationException
AccessDeniedException
public ListPublicKeysResult listPublicKeys(ListPublicKeysRequest request)
Gets summary information about all public keys in your account, in the AWS region where the API request is processed.
listPublicKeys
in interface AmazonIVSRealTime
listPublicKeysRequest
- ValidationException
AccessDeniedException
public ListStageSessionsResult listStageSessions(ListStageSessionsRequest request)
Gets all sessions for a specified stage.
listStageSessions
in interface AmazonIVSRealTime
listStageSessionsRequest
- ValidationException
AccessDeniedException
public ListStagesResult listStages(ListStagesRequest request)
Gets summary information about all stages in your account, in the AWS region where the API request is processed.
listStages
in interface AmazonIVSRealTime
listStagesRequest
- ValidationException
AccessDeniedException
ConflictException
public ListStorageConfigurationsResult listStorageConfigurations(ListStorageConfigurationsRequest request)
Gets summary information about all storage configurations in your account, in the AWS region where the API request is processed.
listStorageConfigurations
in interface AmazonIVSRealTime
listStorageConfigurationsRequest
- ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request)
Gets information about AWS tags for the specified ARN.
listTagsForResource
in interface AmazonIVSRealTime
listTagsForResourceRequest
- ResourceNotFoundException
ValidationException
InternalServerException
public StartCompositionResult startComposition(StartCompositionRequest 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.
startComposition
in interface AmazonIVSRealTime
startCompositionRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
PendingVerificationException
public StopCompositionResult stopComposition(StopCompositionRequest request)
Stops and deletes a Composition resource. Any broadcast from the Composition resource is stopped.
stopComposition
in interface AmazonIVSRealTime
stopCompositionRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
InternalServerException
ServiceQuotaExceededException
ConflictException
public TagResourceResult tagResource(TagResourceRequest request)
Adds or updates tags for the AWS resource with the specified ARN.
tagResource
in interface AmazonIVSRealTime
tagResourceRequest
- ResourceNotFoundException
ValidationException
InternalServerException
public UntagResourceResult untagResource(UntagResourceRequest request)
Removes tags from the resource with the specified ARN.
untagResource
in interface AmazonIVSRealTime
untagResourceRequest
- ResourceNotFoundException
ValidationException
InternalServerException
public UpdateStageResult updateStage(UpdateStageRequest request)
Updates a stage’s configuration.
updateStage
in interface AmazonIVSRealTime
updateStageRequest
- ResourceNotFoundException
ValidationException
AccessDeniedException
ServiceQuotaExceededException
ConflictException
PendingVerificationException
public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.
getCachedResponseMetadata
in interface AmazonIVSRealTime
request
- The originally executed requestpublic void shutdown()
AmazonWebServiceClient
shutdown
in interface AmazonIVSRealTime
shutdown
in class AmazonWebServiceClient