Interface KinesisVideoWebRtcStorageAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface KinesisVideoWebRtcStorageAsyncClient extends AwsClient
Service client for accessing Amazon Kinesis Video WebRTC Storage asynchronously. This can be created using the static builder() method.The asynchronous client performs non-blocking I/O when configured with any SdkAsyncHttpClient supported in the SDK. However, full non-blocking is not guaranteed as the async client may perform blocking calls in some cases such as credentials retrieval and endpoint discovery as part of the async API call.

  • Field Details

  • Method Details

    • joinStorageSession

      default CompletableFuture<JoinStorageSessionResponse> joinStorageSession(JoinStorageSessionRequest joinStorageSessionRequest)

      Join the ongoing one way-video and/or multi-way audio WebRTC session as a video producing device for an input channel. If there’s no existing session for the channel, a new streaming session needs to be created, and the Amazon Resource Name (ARN) of the signaling channel must be provided.

      Currently for the SINGLE_MASTER type, a video producing device is able to ingest both audio and video media into a stream, while viewers can only ingest audio. Both a video producing device and viewers can join the session first, and wait for other participants.

      While participants are having peer to peer conversations through webRTC, the ingested media session will be stored into the Kinesis Video Stream. Multiple viewers are able to playback real-time media.

      Customers can also use existing Kinesis Video Streams features like HLS or DASH playback, Image generation, and more with ingested WebRTC media.

      Assume that only one video producing device client can be associated with a session for the channel. If more than one client joins the session of a specific channel as a video producing device, the most recent client request takes precedence.

      Parameters:
      joinStorageSessionRequest -
      Returns:
      A Java Future containing the result of the JoinStorageSession operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ClientLimitExceededException Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.
      • InvalidArgumentException The value for this input parameter is invalid.
      • AccessDeniedException You do not have required permissions to perform this operation.
      • ResourceNotFoundException The specified resource is not found.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • KinesisVideoWebRtcStorageException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • joinStorageSession

      default CompletableFuture<JoinStorageSessionResponse> joinStorageSession(Consumer<JoinStorageSessionRequest.Builder> joinStorageSessionRequest)

      Join the ongoing one way-video and/or multi-way audio WebRTC session as a video producing device for an input channel. If there’s no existing session for the channel, a new streaming session needs to be created, and the Amazon Resource Name (ARN) of the signaling channel must be provided.

      Currently for the SINGLE_MASTER type, a video producing device is able to ingest both audio and video media into a stream, while viewers can only ingest audio. Both a video producing device and viewers can join the session first, and wait for other participants.

      While participants are having peer to peer conversations through webRTC, the ingested media session will be stored into the Kinesis Video Stream. Multiple viewers are able to playback real-time media.

      Customers can also use existing Kinesis Video Streams features like HLS or DASH playback, Image generation, and more with ingested WebRTC media.

      Assume that only one video producing device client can be associated with a session for the channel. If more than one client joins the session of a specific channel as a video producing device, the most recent client request takes precedence.


      This is a convenience which creates an instance of the JoinStorageSessionRequest.Builder avoiding the need to create one manually via JoinStorageSessionRequest.builder()

      Parameters:
      joinStorageSessionRequest - A Consumer that will call methods on JoinStorageSessionRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the JoinStorageSession operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ClientLimitExceededException Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.
      • InvalidArgumentException The value for this input parameter is invalid.
      • AccessDeniedException You do not have required permissions to perform this operation.
      • ResourceNotFoundException The specified resource is not found.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • KinesisVideoWebRtcStorageException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default KinesisVideoWebRtcStorageServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration
    • create

      Create a KinesisVideoWebRtcStorageAsyncClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      Create a builder that can be used to configure and create a KinesisVideoWebRtcStorageAsyncClient.