/*
* 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 runtime.lex.v2-2020-08-07.normal.json service model.
*/
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.LexRuntimeV2.Model;
namespace Amazon.LexRuntimeV2
{
///
/// Interface for accessing LexRuntimeV2
///
/// This section contains documentation for the Amazon Lex V2 Runtime V2 API operations.
///
public partial interface IAmazonLexRuntimeV2 : IAmazonService, IDisposable
{
#region DeleteSession
///
/// Removes session information for a specified bot, alias, and user ID.
///
///
///
/// You can use this operation to restart a conversation with a bot. When you remove a
/// session, the entire history of the session is removed so that you can start again.
///
///
///
/// You don't need to delete a session. Sessions have a time limit and will expire. Set
/// the session time limit when you create the bot. The default is 5 minutes, but you
/// can specify anything between 1 minute and 24 hours.
///
///
///
/// If you specify a bot or alias ID that doesn't exist, you receive a BadRequestException.
///
///
///
///
/// If the locale doesn't exist in the bot, or if the locale hasn't been enables for the
/// alias, you receive a BadRequestException
.
///
///
/// Container for the necessary parameters to execute the DeleteSession service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteSession service method, as returned by LexRuntimeV2.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for DeleteSession Operation
Task DeleteSessionAsync(DeleteSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetSession
///
/// Returns session information for a specified bot, alias, and user.
///
///
///
/// For example, you can use this operation to retrieve session information for a user
/// that has left a long-running session in use.
///
///
///
/// If the bot, alias, or session identifier doesn't exist, Amazon Lex V2 returns a BadRequestException
.
/// If the locale doesn't exist or is not enabled for the alias, you receive a BadRequestException
.
///
///
/// Container for the necessary parameters to execute the GetSession service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetSession service method, as returned by LexRuntimeV2.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for GetSession Operation
Task GetSessionAsync(GetSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region PutSession
///
/// Creates a new session or modifies an existing session with an Amazon Lex V2 bot. Use
/// this operation to enable your application to set the state of the bot.
///
/// Container for the necessary parameters to execute the PutSession service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the PutSession service method, as returned by LexRuntimeV2.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for PutSession Operation
Task PutSessionAsync(PutSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region RecognizeText
///
/// Sends user input to Amazon Lex V2. Client applications use this API to send requests
/// to Amazon Lex V2 at runtime. Amazon Lex V2 then interprets the user input using the
/// machine learning model that it build for the bot.
///
///
///
/// In response, Amazon Lex V2 returns the next message to convey to the user and an optional
/// response card to display.
///
///
///
/// If the optional post-fulfillment response is specified, the messages are returned
/// as follows. For more information, see PostFulfillmentStatusSpecification.
///
/// -
///
/// Success message - Returned if the Lambda function completes successfully and
/// the intent state is fulfilled or ready fulfillment if the message is present.
///
///
-
///
/// Failed message - The failed message is returned if the Lambda function throws
/// an exception or if the Lambda function returns a failed intent state without a message.
///
///
-
///
/// Timeout message - If you don't configure a timeout message and a timeout,
/// and the Lambda function doesn't return within 30 seconds, the timeout message is returned.
/// If you configure a timeout, the timeout message is returned when the period times
/// out.
///
///
///
/// For more information, see Completion
/// message.
///
///
/// Container for the necessary parameters to execute the RecognizeText service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the RecognizeText service method, as returned by LexRuntimeV2.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for RecognizeText Operation
Task RecognizeTextAsync(RecognizeTextRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region RecognizeUtterance
///
/// Sends user input to Amazon Lex V2. You can send text or speech. Clients use this API
/// to send text and audio requests to Amazon Lex V2 at runtime. Amazon Lex V2 interprets
/// the user input using the machine learning model built for the bot.
///
///
///
/// The following request fields must be compressed with gzip and then base64 encoded
/// before you send them to Amazon Lex V2.
///
/// -
///
/// requestAttributes
///
///
-
///
/// sessionState
///
///
///
/// The following response fields are compressed using gzip and then base64 encoded by
/// Amazon Lex V2. Before you can use these fields, you must decode and decompress them.
///
///
/// -
///
/// inputTranscript
///
///
-
///
/// interpretations
///
///
-
///
/// messages
///
///
-
///
/// requestAttributes
///
///
-
///
/// sessionState
///
///
///
/// The example contains a Java application that compresses and encodes a Java object
/// to send to Amazon Lex V2, and a second that decodes and decompresses a response from
/// Amazon Lex V2.
///
///
///
/// If the optional post-fulfillment response is specified, the messages are returned
/// as follows. For more information, see PostFulfillmentStatusSpecification.
///
/// -
///
/// Success message - Returned if the Lambda function completes successfully and
/// the intent state is fulfilled or ready fulfillment if the message is present.
///
///
-
///
/// Failed message - The failed message is returned if the Lambda function throws
/// an exception or if the Lambda function returns a failed intent state without a message.
///
///
-
///
/// Timeout message - If you don't configure a timeout message and a timeout,
/// and the Lambda function doesn't return within 30 seconds, the timeout message is returned.
/// If you configure a timeout, the timeout message is returned when the period times
/// out.
///
///
///
/// For more information, see Completion
/// message.
///
///
/// Container for the necessary parameters to execute the RecognizeUtterance service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the RecognizeUtterance service method, as returned by LexRuntimeV2.
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
/// REST API Reference for RecognizeUtterance Operation
Task RecognizeUtteranceAsync(RecognizeUtteranceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
}
}