/* * Copyright 2018-2023 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. */ package com.amazonaws.services.lexruntimev2; import javax.annotation.Generated; import com.amazonaws.services.lexruntimev2.model.*; /** * Interface for accessing Lex Runtime V2 asynchronously. Each asynchronous method will return a Java Future object * representing the asynchronous operation; overloads which accept an {@code AsyncHandler} can be used to receive * notification when an asynchronous operation completes. *

* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.lexruntimev2.AbstractAmazonLexRuntimeV2Async} instead. *

*

*

* This section contains documentation for the Amazon Lex V2 Runtime V2 API operations. *

*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AmazonLexRuntimeV2Async extends AmazonLexRuntimeV2 { /** *

* 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. *

* * @param deleteSessionRequest * @return A Java Future containing the result of the DeleteSession operation returned by the service. * @sample AmazonLexRuntimeV2Async.DeleteSession * @see AWS * API Documentation */ java.util.concurrent.Future deleteSessionAsync(DeleteSessionRequest deleteSessionRequest); /** *

* 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. *

* * @param deleteSessionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the DeleteSession operation returned by the service. * @sample AmazonLexRuntimeV2AsyncHandler.DeleteSession * @see AWS * API Documentation */ java.util.concurrent.Future deleteSessionAsync(DeleteSessionRequest deleteSessionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param getSessionRequest * @return A Java Future containing the result of the GetSession operation returned by the service. * @sample AmazonLexRuntimeV2Async.GetSession * @see AWS API * Documentation */ java.util.concurrent.Future getSessionAsync(GetSessionRequest getSessionRequest); /** *

* 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. *

* * @param getSessionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the GetSession operation returned by the service. * @sample AmazonLexRuntimeV2AsyncHandler.GetSession * @see AWS API * Documentation */ java.util.concurrent.Future getSessionAsync(GetSessionRequest getSessionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param putSessionRequest * @return A Java Future containing the result of the PutSession operation returned by the service. * @sample AmazonLexRuntimeV2Async.PutSession * @see AWS API * Documentation */ java.util.concurrent.Future putSessionAsync(PutSessionRequest putSessionRequest); /** *

* 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. *

* * @param putSessionRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the PutSession operation returned by the service. * @sample AmazonLexRuntimeV2AsyncHandler.PutSession * @see AWS API * Documentation */ java.util.concurrent.Future putSessionAsync(PutSessionRequest putSessionRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param recognizeTextRequest * @return A Java Future containing the result of the RecognizeText operation returned by the service. * @sample AmazonLexRuntimeV2Async.RecognizeText * @see AWS * API Documentation */ java.util.concurrent.Future recognizeTextAsync(RecognizeTextRequest recognizeTextRequest); /** *

* 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. *

* * @param recognizeTextRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the RecognizeText operation returned by the service. * @sample AmazonLexRuntimeV2AsyncHandler.RecognizeText * @see AWS * API Documentation */ java.util.concurrent.Future recognizeTextAsync(RecognizeTextRequest recognizeTextRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); /** *

* 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. *

* * @param recognizeUtteranceRequest * @return A Java Future containing the result of the RecognizeUtterance operation returned by the service. * @sample AmazonLexRuntimeV2Async.RecognizeUtterance * @see AWS API Documentation */ java.util.concurrent.Future recognizeUtteranceAsync(RecognizeUtteranceRequest recognizeUtteranceRequest); /** *

* 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. *

* * @param recognizeUtteranceRequest * @param asyncHandler * Asynchronous callback handler for events in the lifecycle of the request. Users can provide an * implementation of the callback methods in this interface to receive notification of successful or * unsuccessful completion of the operation. * @return A Java Future containing the result of the RecognizeUtterance operation returned by the service. * @sample AmazonLexRuntimeV2AsyncHandler.RecognizeUtterance * @see AWS API Documentation */ java.util.concurrent.Future recognizeUtteranceAsync(RecognizeUtteranceRequest recognizeUtteranceRequest, com.amazonaws.handlers.AsyncHandler asyncHandler); }