/* * 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 ivschat-2020-07-14.normal.json service model. */ using System; using System.Collections.Generic; using System.Net; using Amazon.Ivschat.Model; using Amazon.Ivschat.Model.Internal.MarshallTransformations; using Amazon.Ivschat.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.Ivschat { /// /// Implementation for accessing Ivschat /// /// Introduction /// /// /// /// The Amazon IVS Chat control-plane API enables you to create and manage Amazon IVS /// Chat resources. You also need to integrate with the /// Amazon IVS Chat Messaging API, to enable users to interact with chat rooms in /// real time. /// /// /// /// The API is an AWS regional service. For a list of supported regions and Amazon IVS /// Chat HTTPS service endpoints, see the Amazon IVS Chat information on the Amazon /// IVS page in the AWS General Reference. /// /// /// /// Notes on terminology: /// /// /// /// Resources /// /// /// /// The following resources are part of Amazon IVS Chat: /// /// /// /// 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 Chat 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 Chat API has these tag-related endpoints: TagResource, UntagResource, /// and ListTagsForResource. The following resource supports tagging: Room. /// /// /// /// At most 50 tags can be applied to a resource. /// /// /// /// API Access Security /// /// /// /// Your Amazon IVS Chat applications (service applications and clients) must be authenticated /// and authorized to access Amazon IVS Chat resources. Note the differences between these /// concepts: /// /// /// /// Users (viewers) connect to a room using secure access tokens that you create using /// the CreateChatToken endpoint through the AWS SDK. You call CreateChatToken /// for every user’s chat session, passing identity and authorization information about /// the user. /// /// /// /// Signing API Requests /// /// /// /// HTTP API requests must be signed with an AWS SigV4 signature using your AWS security /// credentials. The AWS Command Line Interface (CLI) and the AWS SDKs take care of signing /// the underlying API calls for you. However, if your application calls the Amazon IVS /// Chat HTTP API directly, it’s your responsibility to sign the requests. /// /// /// /// You generate a signature using valid AWS credentials for an IAM role that has permission /// to perform the requested action. For example, DeleteMessage requests must be made /// using an IAM role that has the ivschat:DeleteMessage 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. /// /// /// /// Messaging Endpoints /// /// /// /// Chat Token Endpoint /// /// /// /// Room Endpoints /// /// /// /// Logging Configuration Endpoints /// /// /// /// Tags Endpoints /// /// /// /// All the above are HTTP operations. There is a separate messaging API for managing /// Chat resources; see the /// Amazon IVS Chat Messaging API Reference. /// /// public partial class AmazonIvschatClient : AmazonServiceClient, IAmazonIvschat { private static IServiceMetadata serviceMetadata = new AmazonIvschatMetadata(); #if BCL45 || AWS_ASYNC_ENUMERABLES_API private IIvschatPaginatorFactory _paginators; /// /// Paginators for the service /// public IIvschatPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new IvschatPaginatorFactory(this); } return this._paginators; } } #endif #region Constructors /// /// Constructs AmazonIvschatClient 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 AmazonIvschatClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonIvschatConfig()) { } /// /// Constructs AmazonIvschatClient 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 AmazonIvschatClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonIvschatConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonIvschatClient 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 AmazonIvschatClient Configuration Object public AmazonIvschatClient(AmazonIvschatConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonIvschatClient with AWS Credentials /// /// AWS Credentials public AmazonIvschatClient(AWSCredentials credentials) : this(credentials, new AmazonIvschatConfig()) { } /// /// Constructs AmazonIvschatClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonIvschatClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonIvschatConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonIvschatClient with AWS Credentials and an /// AmazonIvschatClient Configuration object. /// /// AWS Credentials /// The AmazonIvschatClient Configuration Object public AmazonIvschatClient(AWSCredentials credentials, AmazonIvschatConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonIvschatClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonIvschatConfig()) { } /// /// Constructs AmazonIvschatClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonIvschatConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonIvschatClient with AWS Access Key ID, AWS Secret Key and an /// AmazonIvschatClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonIvschatClient Configuration Object public AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonIvschatConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonIvschatClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonIvschatConfig()) { } /// /// Constructs AmazonIvschatClient 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 AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonIvschatConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonIvschatClient with AWS Access Key ID, AWS Secret Key and an /// AmazonIvschatClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonIvschatClient Configuration Object public AmazonIvschatClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonIvschatConfig 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 AmazonIvschatEndpointResolver()); } /// /// 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 CreateChatToken /// /// Creates an encrypted token that is used by a chat participant to establish an individual /// WebSocket chat connection to a room. When the token is used to connect to chat, the /// connection is valid for the session duration specified in the request. The token becomes /// invalid at the token-expiration timestamp included in the response. /// /// /// /// Use the capabilities field to permit an end user to send messages or /// moderate a room. /// /// /// /// The attributes field securely attaches structured data to the chat session; /// the data is included within each message sent by the end user and received by other /// participants in the room. Common use cases for attributes include passing end-user /// profile data like an icon, display name, colors, badges, and other display features. /// /// /// /// Encryption keys are owned by Amazon IVS Chat and never used directly by your application. /// /// /// Container for the necessary parameters to execute the CreateChatToken service method. /// /// The response from the CreateChatToken service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for CreateChatToken Operation public virtual CreateChatTokenResponse CreateChatToken(CreateChatTokenRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateChatTokenRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateChatTokenResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateChatToken operation. /// /// /// Container for the necessary parameters to execute the CreateChatToken operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateChatToken /// operation. /// REST API Reference for CreateChatToken Operation public virtual IAsyncResult BeginCreateChatToken(CreateChatTokenRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateChatTokenRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateChatTokenResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateChatToken operation. /// /// /// The IAsyncResult returned by the call to BeginCreateChatToken. /// /// Returns a CreateChatTokenResult from Ivschat. /// REST API Reference for CreateChatToken Operation public virtual CreateChatTokenResponse EndCreateChatToken(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateLoggingConfiguration /// /// Creates a logging configuration that allows clients to store and record sent messages. /// /// Container for the necessary parameters to execute the CreateLoggingConfiguration service method. /// /// The response from the CreateLoggingConfiguration service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for CreateLoggingConfiguration Operation public virtual CreateLoggingConfigurationResponse CreateLoggingConfiguration(CreateLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the CreateLoggingConfiguration operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateLoggingConfiguration /// operation. /// REST API Reference for CreateLoggingConfiguration Operation public virtual IAsyncResult BeginCreateLoggingConfiguration(CreateLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginCreateLoggingConfiguration. /// /// Returns a CreateLoggingConfigurationResult from Ivschat. /// REST API Reference for CreateLoggingConfiguration Operation public virtual CreateLoggingConfigurationResponse EndCreateLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region CreateRoom /// /// Creates a room that allows clients to connect and pass messages. /// /// Container for the necessary parameters to execute the CreateRoom service method. /// /// The response from the CreateRoom service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for CreateRoom Operation public virtual CreateRoomResponse CreateRoom(CreateRoomRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRoomResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the CreateRoom operation. /// /// /// Container for the necessary parameters to execute the CreateRoom operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateRoom /// operation. /// REST API Reference for CreateRoom Operation public virtual IAsyncResult BeginCreateRoom(CreateRoomRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = CreateRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateRoomResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the CreateRoom operation. /// /// /// The IAsyncResult returned by the call to BeginCreateRoom. /// /// Returns a CreateRoomResult from Ivschat. /// REST API Reference for CreateRoom Operation public virtual CreateRoomResponse EndCreateRoom(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteLoggingConfiguration /// /// Deletes the specified logging configuration. /// /// Container for the necessary parameters to execute the DeleteLoggingConfiguration service method. /// /// The response from the DeleteLoggingConfiguration service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for DeleteLoggingConfiguration Operation public virtual DeleteLoggingConfigurationResponse DeleteLoggingConfiguration(DeleteLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the DeleteLoggingConfiguration operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteLoggingConfiguration /// operation. /// REST API Reference for DeleteLoggingConfiguration Operation public virtual IAsyncResult BeginDeleteLoggingConfiguration(DeleteLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteLoggingConfiguration. /// /// Returns a DeleteLoggingConfigurationResult from Ivschat. /// REST API Reference for DeleteLoggingConfiguration Operation public virtual DeleteLoggingConfigurationResponse EndDeleteLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteMessage /// /// Sends an event to a specific room which directs clients to delete a specific message; /// that is, unrender it from view and delete it from the client’s chat history. This /// event’s EventName is aws:DELETE_MESSAGE. This replicates /// the /// DeleteMessage WebSocket operation in the Amazon IVS Chat Messaging API. /// /// Container for the necessary parameters to execute the DeleteMessage service method. /// /// The response from the DeleteMessage service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for DeleteMessage Operation public virtual DeleteMessageResponse DeleteMessage(DeleteMessageRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteMessageRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteMessageResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteMessage operation. /// /// /// Container for the necessary parameters to execute the DeleteMessage operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteMessage /// operation. /// REST API Reference for DeleteMessage Operation public virtual IAsyncResult BeginDeleteMessage(DeleteMessageRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteMessageRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteMessageResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteMessage operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteMessage. /// /// Returns a DeleteMessageResult from Ivschat. /// REST API Reference for DeleteMessage Operation public virtual DeleteMessageResponse EndDeleteMessage(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DeleteRoom /// /// Deletes the specified room. /// /// Container for the necessary parameters to execute the DeleteRoom service method. /// /// The response from the DeleteRoom service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for DeleteRoom Operation public virtual DeleteRoomResponse DeleteRoom(DeleteRoomRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRoomResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DeleteRoom operation. /// /// /// Container for the necessary parameters to execute the DeleteRoom operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDeleteRoom /// operation. /// REST API Reference for DeleteRoom Operation public virtual IAsyncResult BeginDeleteRoom(DeleteRoomRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteRoomResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DeleteRoom operation. /// /// /// The IAsyncResult returned by the call to BeginDeleteRoom. /// /// Returns a DeleteRoomResult from Ivschat. /// REST API Reference for DeleteRoom Operation public virtual DeleteRoomResponse EndDeleteRoom(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region DisconnectUser /// /// Disconnects all connections using a specified user ID from a room. This replicates /// the /// DisconnectUser WebSocket operation in the Amazon IVS Chat Messaging API. /// /// Container for the necessary parameters to execute the DisconnectUser service method. /// /// The response from the DisconnectUser service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for DisconnectUser Operation public virtual DisconnectUserResponse DisconnectUser(DisconnectUserRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisconnectUserRequestMarshaller.Instance; options.ResponseUnmarshaller = DisconnectUserResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the DisconnectUser operation. /// /// /// Container for the necessary parameters to execute the DisconnectUser operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndDisconnectUser /// operation. /// REST API Reference for DisconnectUser Operation public virtual IAsyncResult BeginDisconnectUser(DisconnectUserRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = DisconnectUserRequestMarshaller.Instance; options.ResponseUnmarshaller = DisconnectUserResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the DisconnectUser operation. /// /// /// The IAsyncResult returned by the call to BeginDisconnectUser. /// /// Returns a DisconnectUserResult from Ivschat. /// REST API Reference for DisconnectUser Operation public virtual DisconnectUserResponse EndDisconnectUser(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetLoggingConfiguration /// /// Gets the specified logging configuration. /// /// Container for the necessary parameters to execute the GetLoggingConfiguration service method. /// /// The response from the GetLoggingConfiguration service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// REST API Reference for GetLoggingConfiguration Operation public virtual GetLoggingConfigurationResponse GetLoggingConfiguration(GetLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the GetLoggingConfiguration operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetLoggingConfiguration /// operation. /// REST API Reference for GetLoggingConfiguration Operation public virtual IAsyncResult BeginGetLoggingConfiguration(GetLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = GetLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginGetLoggingConfiguration. /// /// Returns a GetLoggingConfigurationResult from Ivschat. /// REST API Reference for GetLoggingConfiguration Operation public virtual GetLoggingConfigurationResponse EndGetLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region GetRoom /// /// Gets the specified room. /// /// Container for the necessary parameters to execute the GetRoom service method. /// /// The response from the GetRoom service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// REST API Reference for GetRoom Operation public virtual GetRoomResponse GetRoom(GetRoomRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRoomResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the GetRoom operation. /// /// /// Container for the necessary parameters to execute the GetRoom operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndGetRoom /// operation. /// REST API Reference for GetRoom Operation public virtual IAsyncResult BeginGetRoom(GetRoomRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = GetRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = GetRoomResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the GetRoom operation. /// /// /// The IAsyncResult returned by the call to BeginGetRoom. /// /// Returns a GetRoomResult from Ivschat. /// REST API Reference for GetRoom Operation public virtual GetRoomResponse EndGetRoom(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListLoggingConfigurations /// /// Gets summary information about all your logging configurations in the AWS region where /// the API request is processed. /// /// Container for the necessary parameters to execute the ListLoggingConfigurations service method. /// /// The response from the ListLoggingConfigurations service method, as returned by Ivschat. /// /// /// /// /// /// /// REST API Reference for ListLoggingConfigurations Operation public virtual ListLoggingConfigurationsResponse ListLoggingConfigurations(ListLoggingConfigurationsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListLoggingConfigurationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListLoggingConfigurationsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListLoggingConfigurations operation. /// /// /// Container for the necessary parameters to execute the ListLoggingConfigurations operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListLoggingConfigurations /// operation. /// REST API Reference for ListLoggingConfigurations Operation public virtual IAsyncResult BeginListLoggingConfigurations(ListLoggingConfigurationsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListLoggingConfigurationsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListLoggingConfigurationsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListLoggingConfigurations operation. /// /// /// The IAsyncResult returned by the call to BeginListLoggingConfigurations. /// /// Returns a ListLoggingConfigurationsResult from Ivschat. /// REST API Reference for ListLoggingConfigurations Operation public virtual ListLoggingConfigurationsResponse EndListLoggingConfigurations(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListRooms /// /// Gets summary information about all your rooms in the AWS region where the API request /// is processed. Results are sorted in descending order of updateTime. /// /// Container for the necessary parameters to execute the ListRooms service method. /// /// The response from the ListRooms service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// REST API Reference for ListRooms Operation public virtual ListRoomsResponse ListRooms(ListRoomsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListRoomsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRoomsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the ListRooms operation. /// /// /// Container for the necessary parameters to execute the ListRooms operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListRooms /// operation. /// REST API Reference for ListRooms Operation public virtual IAsyncResult BeginListRooms(ListRoomsRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListRoomsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListRoomsResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListRooms operation. /// /// /// The IAsyncResult returned by the call to BeginListRooms. /// /// Returns a ListRoomsResult from Ivschat. /// REST API Reference for ListRooms Operation public virtual ListRoomsResponse EndListRooms(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region ListTagsForResource /// /// Gets information about AWS 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 Ivschat. /// /// /// /// /// /// /// /// /// /// 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); } /// /// Initiates the asynchronous execution of the ListTagsForResource operation. /// /// /// Container for the necessary parameters to execute the ListTagsForResource operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndListTagsForResource /// operation. /// REST API Reference for ListTagsForResource Operation public virtual IAsyncResult BeginListTagsForResource(ListTagsForResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the ListTagsForResource operation. /// /// /// The IAsyncResult returned by the call to BeginListTagsForResource. /// /// Returns a ListTagsForResourceResult from Ivschat. /// REST API Reference for ListTagsForResource Operation public virtual ListTagsForResourceResponse EndListTagsForResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region SendEvent /// /// Sends an event to a room. Use this within your application’s business logic to send /// events to clients of a room; e.g., to notify clients to change the way the chat UI /// is rendered. /// /// Container for the necessary parameters to execute the SendEvent service method. /// /// The response from the SendEvent service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for SendEvent Operation public virtual SendEventResponse SendEvent(SendEventRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = SendEventRequestMarshaller.Instance; options.ResponseUnmarshaller = SendEventResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the SendEvent operation. /// /// /// Container for the necessary parameters to execute the SendEvent operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndSendEvent /// operation. /// REST API Reference for SendEvent Operation public virtual IAsyncResult BeginSendEvent(SendEventRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = SendEventRequestMarshaller.Instance; options.ResponseUnmarshaller = SendEventResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the SendEvent operation. /// /// /// The IAsyncResult returned by the call to BeginSendEvent. /// /// Returns a SendEventResult from Ivschat. /// REST API Reference for SendEvent Operation public virtual SendEventResponse EndSendEvent(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region TagResource /// /// Adds or updates tags for the AWS 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 Ivschat. /// /// /// /// /// /// /// /// /// /// 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); } /// /// Initiates the asynchronous execution of the TagResource operation. /// /// /// Container for the necessary parameters to execute the TagResource operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndTagResource /// operation. /// REST API Reference for TagResource Operation public virtual IAsyncResult BeginTagResource(TagResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the TagResource operation. /// /// /// The IAsyncResult returned by the call to BeginTagResource. /// /// Returns a TagResourceResult from Ivschat. /// REST API Reference for TagResource Operation public virtual TagResourceResponse EndTagResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #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 Ivschat. /// /// /// /// /// /// /// /// /// /// 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); } /// /// Initiates the asynchronous execution of the UntagResource operation. /// /// /// Container for the necessary parameters to execute the UntagResource operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUntagResource /// operation. /// REST API Reference for UntagResource Operation public virtual IAsyncResult BeginUntagResource(UntagResourceRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UntagResource operation. /// /// /// The IAsyncResult returned by the call to BeginUntagResource. /// /// Returns a UntagResourceResult from Ivschat. /// REST API Reference for UntagResource Operation public virtual UntagResourceResponse EndUntagResource(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateLoggingConfiguration /// /// Updates a specified logging configuration. /// /// Container for the necessary parameters to execute the UpdateLoggingConfiguration service method. /// /// The response from the UpdateLoggingConfiguration service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for UpdateLoggingConfiguration Operation public virtual UpdateLoggingConfigurationResponse UpdateLoggingConfiguration(UpdateLoggingConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateLoggingConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateLoggingConfiguration operation. /// /// /// Container for the necessary parameters to execute the UpdateLoggingConfiguration operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateLoggingConfiguration /// operation. /// REST API Reference for UpdateLoggingConfiguration Operation public virtual IAsyncResult BeginUpdateLoggingConfiguration(UpdateLoggingConfigurationRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateLoggingConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateLoggingConfigurationResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateLoggingConfiguration operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateLoggingConfiguration. /// /// Returns a UpdateLoggingConfigurationResult from Ivschat. /// REST API Reference for UpdateLoggingConfiguration Operation public virtual UpdateLoggingConfigurationResponse EndUpdateLoggingConfiguration(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion #region UpdateRoom /// /// Updates a room’s configuration. /// /// Container for the necessary parameters to execute the UpdateRoom service method. /// /// The response from the UpdateRoom service method, as returned by Ivschat. /// /// /// /// /// /// /// /// /// /// /// /// /// REST API Reference for UpdateRoom Operation public virtual UpdateRoomResponse UpdateRoom(UpdateRoomRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoomResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Initiates the asynchronous execution of the UpdateRoom operation. /// /// /// Container for the necessary parameters to execute the UpdateRoom operation on AmazonIvschatClient. /// An AsyncCallback delegate that is invoked when the operation completes. /// A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property. /// /// An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndUpdateRoom /// operation. /// REST API Reference for UpdateRoom Operation public virtual IAsyncResult BeginUpdateRoom(UpdateRoomRequest request, AsyncCallback callback, object state) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateRoomRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateRoomResponseUnmarshaller.Instance; return BeginInvoke(request, options, callback, state); } /// /// Finishes the asynchronous execution of the UpdateRoom operation. /// /// /// The IAsyncResult returned by the call to BeginUpdateRoom. /// /// Returns a UpdateRoomResult from Ivschat. /// REST API Reference for UpdateRoom Operation public virtual UpdateRoomResponse EndUpdateRoom(IAsyncResult asyncResult) { return EndInvoke(asyncResult); } #endregion } }