/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the ivs-2020-07-14.normal.json service model.
*/
using System;
using System.Runtime.ExceptionServices;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Net;
using Amazon.IVS.Model;
using Amazon.IVS.Model.Internal.MarshallTransformations;
using Amazon.IVS.Internal;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
using Amazon.Runtime.Internal.Transform;
namespace Amazon.IVS
{
///
/// Implementation for accessing IVS
///
/// Introduction
///
///
///
/// The Amazon Interactive Video Service (IVS) API is REST compatible, using a standard
/// HTTP API and an Amazon Web Services EventBridge event stream for responses. JSON is
/// used for both requests and responses, including errors.
///
///
///
/// The API is an Amazon Web Services regional service. For a list of supported regions
/// and Amazon IVS HTTPS service endpoints, see the Amazon
/// IVS page in the Amazon Web Services General Reference.
///
///
///
/// All API request parameters and URLs are case sensitive.
///
///
///
/// For a summary of notable documentation changes in each release, see
/// Document History.
///
///
///
/// Allowed Header Values
///
/// -
///
///
Accept:
application/json
///
/// -
///
///
Accept-Encoding:
gzip, deflate
///
/// -
///
///
Content-Type:
application/json
///
///
///
/// Resources
///
///
///
/// The following resources contain information about your IVS live stream (see
/// Getting Started with Amazon IVS):
///
/// -
///
/// Channel — Stores configuration data related to your live stream. You first
/// create a channel and then use the channel’s stream key to start your live stream.
/// See the Channel endpoints for more information.
///
///
-
///
/// Stream key — An identifier assigned by Amazon IVS when you create a channel,
/// which is then used to authorize streaming. See the StreamKey endpoints for more information.
/// Treat the stream key like a secret, since it allows anyone to stream to the
/// channel.
///
///
-
///
/// Playback key pair — Video playback may be restricted using playback-authorization
/// tokens, which use public-key encryption. A playback key pair is the public-private
/// pair of keys used to sign and validate the playback-authorization token. See the PlaybackKeyPair
/// endpoints for more information.
///
///
-
///
/// Recording configuration — Stores configuration related to recording a live
/// stream and where to store the recorded content. Multiple channels can reference the
/// same recording configuration. See the Recording Configuration endpoints for more information.
///
///
///
/// Tagging
///
///
///
/// A tag is a metadata label that you assign to an Amazon Web Services 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
/// Amazon Web Services Resources for more information, including restrictions that
/// apply to tags and "Tag naming limits and requirements"; Amazon IVS has no service-specific
/// constraints beyond what is documented there.
///
///
///
/// Tags can help you identify and organize your Amazon Web Services 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 API has these tag-related endpoints: TagResource, UntagResource,
/// and ListTagsForResource. The following resources support tagging: Channels,
/// Stream Keys, Playback Key Pairs, and Recording Configurations.
///
///
///
/// At most 50 tags can be applied to a resource.
///
///
///
/// Authentication versus Authorization
///
///
///
/// Note the differences between these concepts:
///
/// -
///
/// Authentication is about verifying identity. You need to be authenticated to
/// sign Amazon IVS API requests.
///
///
-
///
/// Authorization is about granting permissions. Your IAM roles need to have permissions
/// for Amazon IVS API requests. In addition, authorization is needed to view Amazon
/// IVS private channels. (Private channels are channels that are enabled for "playback
/// authorization.")
///
///
///
/// Authentication
///
///
///
/// All Amazon IVS API requests must be authenticated with a signature. The Amazon Web
/// Services Command-Line Interface (CLI) and Amazon IVS Player SDKs take care of signing
/// the underlying API calls for you. However, if your application calls the Amazon IVS
/// API directly, it’s your responsibility to sign the requests.
///
///
///
/// You generate a signature using valid Amazon Web Services credentials that have permission
/// to perform the requested action. For example, you must sign PutMetadata requests with
/// a signature generated from a user account that has the ivs:PutMetadata
/// permission.
///
///
///
/// For more information:
///
///
///
/// Amazon Resource Names (ARNs)
///
///
///
/// ARNs uniquely identify AWS resources. An ARN is required when you need to specify
/// a resource unambiguously across all of AWS, such as in IAM policies and API calls.
/// For more information, see Amazon
/// Resource Names in the AWS General Reference.
///
///
///
/// Channel Endpoints
///
/// -
///
/// CreateChannel — Creates a new channel and an associated stream key to start
/// streaming.
///
///
-
///
/// GetChannel — Gets the channel configuration for the specified channel ARN.
///
///
-
///
/// BatchGetChannel — Performs GetChannel on multiple ARNs simultaneously.
///
///
-
///
/// ListChannels — Gets summary information about all channels in your account,
/// in the Amazon Web Services region where the API request is processed. This list can
/// be filtered to match a specified name or recording-configuration ARN. Filters are
/// mutually exclusive and cannot be used together. If you try to use both filters, you
/// will get an error (409 Conflict Exception).
///
///
-
///
/// UpdateChannel — Updates a channel's configuration. This does not affect an
/// ongoing stream of this channel. You must stop and restart the stream for the changes
/// to take effect.
///
///
-
///
/// DeleteChannel — Deletes the specified channel.
///
///
///
/// StreamKey Endpoints
///
/// -
///
/// CreateStreamKey — Creates a stream key, used to initiate a stream, for the
/// specified channel ARN.
///
///
-
///
/// GetStreamKey — Gets stream key information for the specified ARN.
///
///
-
///
/// BatchGetStreamKey — Performs GetStreamKey on multiple ARNs simultaneously.
///
///
-
///
/// ListStreamKeys — Gets summary information about stream keys for the specified
/// channel.
///
///
-
///
/// DeleteStreamKey — Deletes the stream key for the specified ARN, so it can
/// no longer be used to stream.
///
///
///
/// Stream Endpoints
///
/// -
///
/// GetStream — Gets information about the active (live) stream on a specified
/// channel.
///
///
-
///
/// GetStreamSession — Gets metadata on a specified stream.
///
///
-
///
/// ListStreams — Gets summary information about live streams in your account,
/// in the Amazon Web Services region where the API request is processed.
///
///
-
///
/// ListStreamSessions — Gets a summary of current and previous streams for a
/// specified channel in your account, in the AWS region where the API request is processed.
///
///
-
///
/// StopStream — Disconnects the incoming RTMPS stream for the specified channel.
/// Can be used in conjunction with DeleteStreamKey to prevent further streaming
/// to a channel.
///
///
-
///
/// PutMetadata — Inserts metadata into the active stream of the specified channel.
/// At most 5 requests per second per channel are allowed, each with a maximum 1 KB payload.
/// (If 5 TPS is not sufficient for your needs, we recommend batching your data into a
/// single PutMetadata call.) At most 155 requests per second per account are allowed.
///
///
///
/// Private Channel Endpoints
///
///
///
/// For more information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// -
///
/// ImportPlaybackKeyPair — Imports the public portion of a new key pair and returns
/// its
arn
and fingerprint
. The privateKey
can
/// then be used to generate viewer authorization tokens, to grant viewers access to private
/// channels (channels enabled for playback authorization).
///
/// -
///
/// GetPlaybackKeyPair — Gets a specified playback authorization key pair and
/// returns the
arn
and fingerprint
. The privateKey
/// held by the caller can be used to generate viewer authorization tokens, to grant viewers
/// access to private channels.
///
/// -
///
/// ListPlaybackKeyPairs — Gets summary information about playback key pairs.
///
///
-
///
/// DeletePlaybackKeyPair — Deletes a specified authorization key pair. This invalidates
/// future viewer tokens generated using the key pair’s
privateKey
.
///
/// -
///
/// StartViewerSessionRevocation — Starts the process of revoking the viewer session
/// associated with a specified channel ARN and viewer ID. Optionally, you can provide
/// a version to revoke viewer sessions less than and including that version.
///
///
-
///
/// BatchStartViewerSessionRevocation — Performs StartViewerSessionRevocation
/// on multiple channel ARN and viewer ID pairs simultaneously.
///
///
///
/// RecordingConfiguration Endpoints
///
/// -
///
/// CreateRecordingConfiguration — Creates a new recording configuration, used
/// to enable recording to Amazon S3.
///
///
-
///
/// GetRecordingConfiguration — Gets the recording-configuration metadata for
/// the specified ARN.
///
///
-
///
/// ListRecordingConfigurations — Gets summary information about all recording
/// configurations in your account, in the Amazon Web Services region where the API request
/// is processed.
///
///
-
///
/// DeleteRecordingConfiguration — Deletes the recording configuration for the
/// specified ARN.
///
///
///
/// Amazon Web Services Tags Endpoints
///
/// -
///
/// TagResource — Adds or updates tags for the Amazon Web Services resource with
/// the specified ARN.
///
///
-
///
/// UntagResource — Removes tags from the resource with the specified ARN.
///
///
-
///
/// ListTagsForResource — Gets information about Amazon Web Services tags for
/// the specified ARN.
///
///
///
public partial class AmazonIVSClient : AmazonServiceClient, IAmazonIVS
{
private static IServiceMetadata serviceMetadata = new AmazonIVSMetadata();
private IIVSPaginatorFactory _paginators;
///
/// Paginators for the service
///
public IIVSPaginatorFactory Paginators
{
get
{
if (this._paginators == null)
{
this._paginators = new IVSPaginatorFactory(this);
}
return this._paginators;
}
}
#region Constructors
///
/// Constructs AmazonIVSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
public AmazonIVSClient()
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonIVSConfig()) { }
///
/// Constructs AmazonIVSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The region to connect.
public AmazonIVSClient(RegionEndpoint region)
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonIVSConfig{RegionEndpoint = region}) { }
///
/// Constructs AmazonIVSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The AmazonIVSClient Configuration Object
public AmazonIVSClient(AmazonIVSConfig config)
: base(FallbackCredentialsFactory.GetCredentials(config), config){}
///
/// Constructs AmazonIVSClient with AWS Credentials
///
/// AWS Credentials
public AmazonIVSClient(AWSCredentials credentials)
: this(credentials, new AmazonIVSConfig())
{
}
///
/// Constructs AmazonIVSClient with AWS Credentials
///
/// AWS Credentials
/// The region to connect.
public AmazonIVSClient(AWSCredentials credentials, RegionEndpoint region)
: this(credentials, new AmazonIVSConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonIVSClient with AWS Credentials and an
/// AmazonIVSClient Configuration object.
///
/// AWS Credentials
/// The AmazonIVSClient Configuration Object
public AmazonIVSClient(AWSCredentials credentials, AmazonIVSConfig clientConfig)
: base(credentials, clientConfig)
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonIVSConfig())
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The region to connect.
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonIVSConfig() {RegionEndpoint=region})
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonIVSClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The AmazonIVSClient Configuration Object
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonIVSConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, clientConfig)
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonIVSConfig())
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The region to connect.
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonIVSConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonIVSClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonIVSClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The AmazonIVSClient Configuration Object
public AmazonIVSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonIVSConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig)
{
}
#endregion
#region Overrides
///
/// Creates the signer for the service.
///
protected override AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
///
/// Customize the pipeline
///
///
protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
{
pipeline.RemoveHandler();
pipeline.AddHandlerAfter(new AmazonIVSEndpointResolver());
}
///
/// Capture metadata for the service.
///
protected override IServiceMetadata ServiceMetadata
{
get
{
return serviceMetadata;
}
}
#endregion
#region Dispose
///
/// Disposes the service client.
///
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
#endregion
#region BatchGetChannel
///
/// Performs GetChannel on multiple ARNs simultaneously.
///
/// Container for the necessary parameters to execute the BatchGetChannel service method.
///
/// The response from the BatchGetChannel service method, as returned by IVS.
/// REST API Reference for BatchGetChannel Operation
public virtual BatchGetChannelResponse BatchGetChannel(BatchGetChannelRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetChannelResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Performs GetChannel on multiple ARNs simultaneously.
///
/// Container for the necessary parameters to execute the BatchGetChannel service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchGetChannel service method, as returned by IVS.
/// REST API Reference for BatchGetChannel Operation
public virtual Task BatchGetChannelAsync(BatchGetChannelRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetChannelResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region BatchGetStreamKey
///
/// Performs GetStreamKey on multiple ARNs simultaneously.
///
/// Container for the necessary parameters to execute the BatchGetStreamKey service method.
///
/// The response from the BatchGetStreamKey service method, as returned by IVS.
/// REST API Reference for BatchGetStreamKey Operation
public virtual BatchGetStreamKeyResponse BatchGetStreamKey(BatchGetStreamKeyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetStreamKeyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Performs GetStreamKey on multiple ARNs simultaneously.
///
/// Container for the necessary parameters to execute the BatchGetStreamKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchGetStreamKey service method, as returned by IVS.
/// REST API Reference for BatchGetStreamKey Operation
public virtual Task BatchGetStreamKeyAsync(BatchGetStreamKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchGetStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchGetStreamKeyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region BatchStartViewerSessionRevocation
///
/// Performs StartViewerSessionRevocation on multiple channel ARN and viewer ID
/// pairs simultaneously.
///
/// Container for the necessary parameters to execute the BatchStartViewerSessionRevocation service method.
///
/// The response from the BatchStartViewerSessionRevocation service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for BatchStartViewerSessionRevocation Operation
public virtual BatchStartViewerSessionRevocationResponse BatchStartViewerSessionRevocation(BatchStartViewerSessionRevocationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchStartViewerSessionRevocationRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchStartViewerSessionRevocationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Performs StartViewerSessionRevocation on multiple channel ARN and viewer ID
/// pairs simultaneously.
///
/// Container for the necessary parameters to execute the BatchStartViewerSessionRevocation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchStartViewerSessionRevocation service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for BatchStartViewerSessionRevocation Operation
public virtual Task BatchStartViewerSessionRevocationAsync(BatchStartViewerSessionRevocationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = BatchStartViewerSessionRevocationRequestMarshaller.Instance;
options.ResponseUnmarshaller = BatchStartViewerSessionRevocationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateChannel
///
/// Creates a new channel and an associated stream key to start streaming.
///
/// Container for the necessary parameters to execute the CreateChannel service method.
///
/// The response from the CreateChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateChannel Operation
public virtual CreateChannelResponse CreateChannel(CreateChannelRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateChannelResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a new channel and an associated stream key to start streaming.
///
/// Container for the necessary parameters to execute the CreateChannel service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateChannel Operation
public virtual Task CreateChannelAsync(CreateChannelRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateChannelResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateRecordingConfiguration
///
/// Creates a new recording configuration, used to enable recording to Amazon S3.
///
///
///
/// Known issue: In the us-east-1 region, if you use the Amazon Web Services CLI
/// to create a recording configuration, it returns success even if the S3 bucket is in
/// a different region. In this case, the state
of the recording configuration
/// is CREATE_FAILED
(instead of ACTIVE
). (In other regions,
/// the CLI correctly returns failure if the bucket is in a different region.)
///
///
///
/// Workaround: Ensure that your S3 bucket is in the same region as the recording
/// configuration. If you create a recording configuration in a different region as your
/// S3 bucket, delete that recording configuration and create a new one with an S3 bucket
/// from the correct region.
///
///
/// Container for the necessary parameters to execute the CreateRecordingConfiguration service method.
///
/// The response from the CreateRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateRecordingConfiguration Operation
public virtual CreateRecordingConfigurationResponse CreateRecordingConfiguration(CreateRecordingConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateRecordingConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a new recording configuration, used to enable recording to Amazon S3.
///
///
///
/// Known issue: In the us-east-1 region, if you use the Amazon Web Services CLI
/// to create a recording configuration, it returns success even if the S3 bucket is in
/// a different region. In this case, the state
of the recording configuration
/// is CREATE_FAILED
(instead of ACTIVE
). (In other regions,
/// the CLI correctly returns failure if the bucket is in a different region.)
///
///
///
/// Workaround: Ensure that your S3 bucket is in the same region as the recording
/// configuration. If you create a recording configuration in a different region as your
/// S3 bucket, delete that recording configuration and create a new one with an S3 bucket
/// from the correct region.
///
///
/// Container for the necessary parameters to execute the CreateRecordingConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateRecordingConfiguration Operation
public virtual Task CreateRecordingConfigurationAsync(CreateRecordingConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateRecordingConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateStreamKey
///
/// Creates a stream key, used to initiate a stream, for the specified channel ARN.
///
///
///
/// Note that CreateChannel creates a stream key. If you subsequently use CreateStreamKey
/// on the same channel, it will fail because a stream key already exists and there is
/// a limit of 1 stream key per channel. To reset the stream key on a channel, use DeleteStreamKey
/// and then CreateStreamKey.
///
///
/// Container for the necessary parameters to execute the CreateStreamKey service method.
///
/// The response from the CreateStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateStreamKey Operation
public virtual CreateStreamKeyResponse CreateStreamKey(CreateStreamKeyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateStreamKeyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a stream key, used to initiate a stream, for the specified channel ARN.
///
///
///
/// Note that CreateChannel creates a stream key. If you subsequently use CreateStreamKey
/// on the same channel, it will fail because a stream key already exists and there is
/// a limit of 1 stream key per channel. To reset the stream key on a channel, use DeleteStreamKey
/// and then CreateStreamKey.
///
///
/// Container for the necessary parameters to execute the CreateStreamKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for CreateStreamKey Operation
public virtual Task CreateStreamKeyAsync(CreateStreamKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateStreamKeyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteChannel
///
/// Deletes the specified channel and its associated stream keys.
///
///
///
/// If you try to delete a live channel, you will get an error (409 ConflictException).
/// To delete a channel that is live, call StopStream, wait for the Amazon EventBridge
/// "Stream End" event (to verify that the stream's state is no longer Live), then call
/// DeleteChannel. (See
/// Using EventBridge with Amazon IVS.)
///
///
/// Container for the necessary parameters to execute the DeleteChannel service method.
///
/// The response from the DeleteChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteChannel Operation
public virtual DeleteChannelResponse DeleteChannel(DeleteChannelRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteChannelResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the specified channel and its associated stream keys.
///
///
///
/// If you try to delete a live channel, you will get an error (409 ConflictException).
/// To delete a channel that is live, call StopStream, wait for the Amazon EventBridge
/// "Stream End" event (to verify that the stream's state is no longer Live), then call
/// DeleteChannel. (See
/// Using EventBridge with Amazon IVS.)
///
///
/// Container for the necessary parameters to execute the DeleteChannel service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteChannel Operation
public virtual Task DeleteChannelAsync(DeleteChannelRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteChannelResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeletePlaybackKeyPair
///
/// Deletes a specified authorization key pair. This invalidates future viewer tokens
/// generated using the key pair’s privateKey
. For more information, see
/// Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the DeletePlaybackKeyPair service method.
///
/// The response from the DeletePlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeletePlaybackKeyPair Operation
public virtual DeletePlaybackKeyPairResponse DeletePlaybackKeyPair(DeletePlaybackKeyPairRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeletePlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeletePlaybackKeyPairResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes a specified authorization key pair. This invalidates future viewer tokens
/// generated using the key pair’s privateKey
. For more information, see
/// Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the DeletePlaybackKeyPair service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeletePlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeletePlaybackKeyPair Operation
public virtual Task DeletePlaybackKeyPairAsync(DeletePlaybackKeyPairRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeletePlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeletePlaybackKeyPairResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteRecordingConfiguration
///
/// Deletes the recording configuration for the specified ARN.
///
///
///
/// If you try to delete a recording configuration that is associated with a channel,
/// you will get an error (409 ConflictException). To avoid this, for all channels that
/// reference the recording configuration, first use UpdateChannel to set the recordingConfigurationArn
/// field to an empty string, then use DeleteRecordingConfiguration.
///
///
/// Container for the necessary parameters to execute the DeleteRecordingConfiguration service method.
///
/// The response from the DeleteRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteRecordingConfiguration Operation
public virtual DeleteRecordingConfigurationResponse DeleteRecordingConfiguration(DeleteRecordingConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRecordingConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the recording configuration for the specified ARN.
///
///
///
/// If you try to delete a recording configuration that is associated with a channel,
/// you will get an error (409 ConflictException). To avoid this, for all channels that
/// reference the recording configuration, first use UpdateChannel to set the recordingConfigurationArn
/// field to an empty string, then use DeleteRecordingConfiguration.
///
///
/// Container for the necessary parameters to execute the DeleteRecordingConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteRecordingConfiguration Operation
public virtual Task DeleteRecordingConfigurationAsync(DeleteRecordingConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteRecordingConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteStreamKey
///
/// Deletes the stream key for the specified ARN, so it can no longer be used to stream.
///
/// Container for the necessary parameters to execute the DeleteStreamKey service method.
///
/// The response from the DeleteStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteStreamKey Operation
public virtual DeleteStreamKeyResponse DeleteStreamKey(DeleteStreamKeyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteStreamKeyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the stream key for the specified ARN, so it can no longer be used to stream.
///
/// Container for the necessary parameters to execute the DeleteStreamKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteStreamKey Operation
public virtual Task DeleteStreamKeyAsync(DeleteStreamKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteStreamKeyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetChannel
///
/// Gets the channel configuration for the specified channel ARN. See also BatchGetChannel.
///
/// Container for the necessary parameters to execute the GetChannel service method.
///
/// The response from the GetChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetChannel Operation
public virtual GetChannelResponse GetChannel(GetChannelRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetChannelResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets the channel configuration for the specified channel ARN. See also BatchGetChannel.
///
/// Container for the necessary parameters to execute the GetChannel service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetChannel Operation
public virtual Task GetChannelAsync(GetChannelRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetChannelResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetPlaybackKeyPair
///
/// Gets a specified playback authorization key pair and returns the arn
/// and fingerprint
. The privateKey
held by the caller can be
/// used to generate viewer authorization tokens, to grant viewers access to private channels.
/// For more information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the GetPlaybackKeyPair service method.
///
/// The response from the GetPlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetPlaybackKeyPair Operation
public virtual GetPlaybackKeyPairResponse GetPlaybackKeyPair(GetPlaybackKeyPairRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetPlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetPlaybackKeyPairResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets a specified playback authorization key pair and returns the arn
/// and fingerprint
. The privateKey
held by the caller can be
/// used to generate viewer authorization tokens, to grant viewers access to private channels.
/// For more information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the GetPlaybackKeyPair service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetPlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetPlaybackKeyPair Operation
public virtual Task GetPlaybackKeyPairAsync(GetPlaybackKeyPairRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetPlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetPlaybackKeyPairResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetRecordingConfiguration
///
/// Gets the recording configuration for the specified ARN.
///
/// Container for the necessary parameters to execute the GetRecordingConfiguration service method.
///
/// The response from the GetRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetRecordingConfiguration Operation
public virtual GetRecordingConfigurationResponse GetRecordingConfiguration(GetRecordingConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRecordingConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets the recording configuration for the specified ARN.
///
/// Container for the necessary parameters to execute the GetRecordingConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetRecordingConfiguration service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetRecordingConfiguration Operation
public virtual Task GetRecordingConfigurationAsync(GetRecordingConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetRecordingConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetRecordingConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetStream
///
/// Gets information about the active (live) stream on a specified channel.
///
/// Container for the necessary parameters to execute the GetStream service method.
///
/// The response from the GetStream service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStream Operation
public virtual GetStreamResponse GetStream(GetStreamRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets information about the active (live) stream on a specified channel.
///
/// Container for the necessary parameters to execute the GetStream service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetStream service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStream Operation
public virtual Task GetStreamAsync(GetStreamRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetStreamKey
///
/// Gets stream-key information for a specified ARN.
///
/// Container for the necessary parameters to execute the GetStreamKey service method.
///
/// The response from the GetStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStreamKey Operation
public virtual GetStreamKeyResponse GetStreamKey(GetStreamKeyRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamKeyResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets stream-key information for a specified ARN.
///
/// Container for the necessary parameters to execute the GetStreamKey service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetStreamKey service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStreamKey Operation
public virtual Task GetStreamKeyAsync(GetStreamKeyRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamKeyRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamKeyResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region GetStreamSession
///
/// Gets metadata on a specified stream.
///
/// Container for the necessary parameters to execute the GetStreamSession service method.
///
/// The response from the GetStreamSession service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStreamSession Operation
public virtual GetStreamSessionResponse GetStreamSession(GetStreamSessionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamSessionRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamSessionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets metadata on a specified stream.
///
/// Container for the necessary parameters to execute the GetStreamSession service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetStreamSession service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetStreamSession Operation
public virtual Task GetStreamSessionAsync(GetStreamSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = GetStreamSessionRequestMarshaller.Instance;
options.ResponseUnmarshaller = GetStreamSessionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ImportPlaybackKeyPair
///
/// Imports the public portion of a new key pair and returns its arn
and
/// fingerprint
. The privateKey
can then be used to generate
/// viewer authorization tokens, to grant viewers access to private channels. For more
/// information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the ImportPlaybackKeyPair service method.
///
/// The response from the ImportPlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for ImportPlaybackKeyPair Operation
public virtual ImportPlaybackKeyPairResponse ImportPlaybackKeyPair(ImportPlaybackKeyPairRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ImportPlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = ImportPlaybackKeyPairResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Imports the public portion of a new key pair and returns its arn
and
/// fingerprint
. The privateKey
can then be used to generate
/// viewer authorization tokens, to grant viewers access to private channels. For more
/// information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the ImportPlaybackKeyPair service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ImportPlaybackKeyPair service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for ImportPlaybackKeyPair Operation
public virtual Task ImportPlaybackKeyPairAsync(ImportPlaybackKeyPairRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ImportPlaybackKeyPairRequestMarshaller.Instance;
options.ResponseUnmarshaller = ImportPlaybackKeyPairResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListChannels
///
/// Gets summary information about all channels in your account, in the Amazon Web Services
/// region where the API request is processed. This list can be filtered to match a specified
/// name or recording-configuration ARN. Filters are mutually exclusive and cannot be
/// used together. If you try to use both filters, you will get an error (409 ConflictException).
///
/// Container for the necessary parameters to execute the ListChannels service method.
///
/// The response from the ListChannels service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListChannels Operation
public virtual ListChannelsResponse ListChannels(ListChannelsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListChannelsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListChannelsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets summary information about all channels in your account, in the Amazon Web Services
/// region where the API request is processed. This list can be filtered to match a specified
/// name or recording-configuration ARN. Filters are mutually exclusive and cannot be
/// used together. If you try to use both filters, you will get an error (409 ConflictException).
///
/// Container for the necessary parameters to execute the ListChannels service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListChannels service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListChannels Operation
public virtual Task ListChannelsAsync(ListChannelsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListChannelsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListChannelsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListPlaybackKeyPairs
///
/// Gets summary information about playback key pairs. For more information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the ListPlaybackKeyPairs service method.
///
/// The response from the ListPlaybackKeyPairs service method, as returned by IVS.
///
///
///
///
///
///
/// REST API Reference for ListPlaybackKeyPairs Operation
public virtual ListPlaybackKeyPairsResponse ListPlaybackKeyPairs(ListPlaybackKeyPairsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListPlaybackKeyPairsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListPlaybackKeyPairsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets summary information about playback key pairs. For more information, see Setting
/// Up Private Channels in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the ListPlaybackKeyPairs service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListPlaybackKeyPairs service method, as returned by IVS.
///
///
///
///
///
///
/// REST API Reference for ListPlaybackKeyPairs Operation
public virtual Task ListPlaybackKeyPairsAsync(ListPlaybackKeyPairsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListPlaybackKeyPairsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListPlaybackKeyPairsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListRecordingConfigurations
///
/// Gets summary information about all recording configurations in your account, in the
/// Amazon Web Services region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListRecordingConfigurations service method.
///
/// The response from the ListRecordingConfigurations service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListRecordingConfigurations Operation
public virtual ListRecordingConfigurationsResponse ListRecordingConfigurations(ListRecordingConfigurationsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListRecordingConfigurationsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListRecordingConfigurationsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets summary information about all recording configurations in your account, in the
/// Amazon Web Services region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListRecordingConfigurations service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListRecordingConfigurations service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListRecordingConfigurations Operation
public virtual Task ListRecordingConfigurationsAsync(ListRecordingConfigurationsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListRecordingConfigurationsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListRecordingConfigurationsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListStreamKeys
///
/// Gets summary information about stream keys for the specified channel.
///
/// Container for the necessary parameters to execute the ListStreamKeys service method.
///
/// The response from the ListStreamKeys service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListStreamKeys Operation
public virtual ListStreamKeysResponse ListStreamKeys(ListStreamKeysRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamKeysRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamKeysResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets summary information about stream keys for the specified channel.
///
/// Container for the necessary parameters to execute the ListStreamKeys service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListStreamKeys service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListStreamKeys Operation
public virtual Task ListStreamKeysAsync(ListStreamKeysRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamKeysRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamKeysResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListStreams
///
/// Gets summary information about live streams in your account, in the Amazon Web Services
/// region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListStreams service method.
///
/// The response from the ListStreams service method, as returned by IVS.
///
///
///
///
///
///
/// REST API Reference for ListStreams Operation
public virtual ListStreamsResponse ListStreams(ListStreamsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets summary information about live streams in your account, in the Amazon Web Services
/// region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListStreams service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListStreams service method, as returned by IVS.
///
///
///
///
///
///
/// REST API Reference for ListStreams Operation
public virtual Task ListStreamsAsync(ListStreamsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListStreamSessions
///
/// Gets a summary of current and previous streams for a specified channel in your account,
/// in the AWS region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListStreamSessions service method.
///
/// The response from the ListStreamSessions service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListStreamSessions Operation
public virtual ListStreamSessionsResponse ListStreamSessions(ListStreamSessionsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamSessionsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamSessionsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets a summary of current and previous streams for a specified channel in your account,
/// in the AWS region where the API request is processed.
///
/// Container for the necessary parameters to execute the ListStreamSessions service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListStreamSessions service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListStreamSessions Operation
public virtual Task ListStreamSessionsAsync(ListStreamSessionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListStreamSessionsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListStreamSessionsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListTagsForResource
///
/// Gets information about Amazon Web Services tags for the specified ARN.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// The response from the ListTagsForResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListTagsForResource Operation
public virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Gets information about Amazon Web Services tags for the specified ARN.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListTagsForResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for ListTagsForResource Operation
public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region PutMetadata
///
/// Inserts metadata into the active stream of the specified channel. At most 5 requests
/// per second per channel are allowed, each with a maximum 1 KB payload. (If 5 TPS is
/// not sufficient for your needs, we recommend batching your data into a single PutMetadata
/// call.) At most 155 requests per second per account are allowed. Also see Embedding
/// Metadata within a Video Stream in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the PutMetadata service method.
///
/// The response from the PutMetadata service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for PutMetadata Operation
public virtual PutMetadataResponse PutMetadata(PutMetadataRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = PutMetadataRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutMetadataResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Inserts metadata into the active stream of the specified channel. At most 5 requests
/// per second per channel are allowed, each with a maximum 1 KB payload. (If 5 TPS is
/// not sufficient for your needs, we recommend batching your data into a single PutMetadata
/// call.) At most 155 requests per second per account are allowed. Also see Embedding
/// Metadata within a Video Stream in the Amazon IVS User Guide.
///
/// Container for the necessary parameters to execute the PutMetadata service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutMetadata service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for PutMetadata Operation
public virtual Task PutMetadataAsync(PutMetadataRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = PutMetadataRequestMarshaller.Instance;
options.ResponseUnmarshaller = PutMetadataResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region StartViewerSessionRevocation
///
/// Starts the process of revoking the viewer session associated with a specified channel
/// ARN and viewer ID. Optionally, you can provide a version to revoke viewer sessions
/// less than and including that version. For instructions on associating a viewer ID
/// with a viewer session, see Setting
/// Up Private Channels.
///
/// Container for the necessary parameters to execute the StartViewerSessionRevocation service method.
///
/// The response from the StartViewerSessionRevocation service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for StartViewerSessionRevocation Operation
public virtual StartViewerSessionRevocationResponse StartViewerSessionRevocation(StartViewerSessionRevocationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = StartViewerSessionRevocationRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartViewerSessionRevocationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Starts the process of revoking the viewer session associated with a specified channel
/// ARN and viewer ID. Optionally, you can provide a version to revoke viewer sessions
/// less than and including that version. For instructions on associating a viewer ID
/// with a viewer session, see Setting
/// Up Private Channels.
///
/// Container for the necessary parameters to execute the StartViewerSessionRevocation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StartViewerSessionRevocation service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for StartViewerSessionRevocation Operation
public virtual Task StartViewerSessionRevocationAsync(StartViewerSessionRevocationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = StartViewerSessionRevocationRequestMarshaller.Instance;
options.ResponseUnmarshaller = StartViewerSessionRevocationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region StopStream
///
/// Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction
/// with DeleteStreamKey to prevent further streaming to a channel.
///
///
///
/// Many streaming client-software libraries automatically reconnect a dropped RTMPS session,
/// so to stop the stream permanently, you may want to first revoke the streamKey
/// attached to the channel.
///
///
///
/// Container for the necessary parameters to execute the StopStream service method.
///
/// The response from the StopStream service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for StopStream Operation
public virtual StopStreamResponse StopStream(StopStreamRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = StopStreamRequestMarshaller.Instance;
options.ResponseUnmarshaller = StopStreamResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Disconnects the incoming RTMPS stream for the specified channel. Can be used in conjunction
/// with DeleteStreamKey to prevent further streaming to a channel.
///
///
///
/// Many streaming client-software libraries automatically reconnect a dropped RTMPS session,
/// so to stop the stream permanently, you may want to first revoke the streamKey
/// attached to the channel.
///
///
///
/// Container for the necessary parameters to execute the StopStream service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the StopStream service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for StopStream Operation
public virtual Task StopStreamAsync(StopStreamRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = StopStreamRequestMarshaller.Instance;
options.ResponseUnmarshaller = StopStreamResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region TagResource
///
/// Adds or updates tags for the Amazon Web Services resource with the specified ARN.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// The response from the TagResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for TagResource Operation
public virtual TagResourceResponse TagResource(TagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Adds or updates tags for the Amazon Web Services resource with the specified ARN.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for TagResource Operation
public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UntagResource
///
/// Removes tags from the resource with the specified ARN.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// The response from the UntagResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for UntagResource Operation
public virtual UntagResourceResponse UntagResource(UntagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Removes tags from the resource with the specified ARN.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
/// REST API Reference for UntagResource Operation
public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateChannel
///
/// Updates a channel's configuration. Live channels cannot be updated. You must stop
/// the ongoing stream, update the channel, and restart the stream for the changes to
/// take effect.
///
/// Container for the necessary parameters to execute the UpdateChannel service method.
///
/// The response from the UpdateChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for UpdateChannel Operation
public virtual UpdateChannelResponse UpdateChannel(UpdateChannelRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateChannelResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates a channel's configuration. Live channels cannot be updated. You must stop
/// the ongoing stream, update the channel, and restart the stream for the changes to
/// take effect.
///
/// Container for the necessary parameters to execute the UpdateChannel service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateChannel service method, as returned by IVS.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for UpdateChannel Operation
public virtual Task UpdateChannelAsync(UpdateChannelRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateChannelRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateChannelResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
}
}