import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { LexRuntimeV2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../LexRuntimeV2Client"; import type { StartConversationRequest, StartConversationResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link StartConversationCommand}. */ export interface StartConversationCommandInput extends StartConversationRequest { } /** * @public * * The output of {@link StartConversationCommand}. */ export interface StartConversationCommandOutput extends StartConversationResponse, __MetadataBearer { } declare const StartConversationCommand_base: { new (input: StartConversationCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: StartConversationCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Starts an HTTP/2 bidirectional event stream that enables you to send * audio, text, or DTMF input in real time. After your application starts * a conversation, users send input to Amazon Lex V2 as a stream of events. Amazon Lex V2 * processes the incoming events and responds with streaming text or audio * events. *

*

Audio input must be in the following format: audio/lpcm * sample-rate=8000 sample-size-bits=16 channel-count=1; * is-big-endian=false.

*

If the optional post-fulfillment response is specified, the messages * are returned as follows. For more information, see PostFulfillmentStatusSpecification.

* *

For more information, see Completion message.

*

If the optional update message is configured, it is played at the * specified frequency while the Lambda function is running and the update * message state is active. If the fulfillment update message is not * active, the Lambda function runs with a 30 second timeout.

*

For more information, see Update message *

*

The StartConversation operation is supported only in * the following SDKs:

* * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { LexRuntimeV2Client, StartConversationCommand } from "@aws-sdk/client-lex-runtime-v2"; // ES Modules import * // const { LexRuntimeV2Client, StartConversationCommand } = require("@aws-sdk/client-lex-runtime-v2"); // CommonJS import * // import type { LexRuntimeV2ClientConfig } from "@aws-sdk/client-lex-runtime-v2"; * const config = {}; // type is LexRuntimeV2ClientConfig * const client = new LexRuntimeV2Client(config); * const input = { // StartConversationRequest * botId: "STRING_VALUE", // required * botAliasId: "STRING_VALUE", // required * localeId: "STRING_VALUE", // required * sessionId: "STRING_VALUE", // required * conversationMode: "AUDIO" || "TEXT", * requestEventStream: { // StartConversationRequestEventStream Union: only one key present * ConfigurationEvent: { // ConfigurationEvent * requestAttributes: { // StringMap * "": "STRING_VALUE", * }, * responseContentType: "STRING_VALUE", // required * sessionState: { // SessionState * dialogAction: { // DialogAction * type: "Close" || "ConfirmIntent" || "Delegate" || "ElicitIntent" || "ElicitSlot" || "None", // required * slotToElicit: "STRING_VALUE", * slotElicitationStyle: "Default" || "SpellByLetter" || "SpellByWord", * subSlotToElicit: { // ElicitSubSlot * name: "STRING_VALUE", // required * subSlotToElicit: { * name: "STRING_VALUE", // required * subSlotToElicit: "", * }, * }, * }, * intent: { // Intent * name: "STRING_VALUE", // required * slots: { // Slots * "": { // Slot * value: { // Value * originalValue: "STRING_VALUE", * interpretedValue: "STRING_VALUE", // required * resolvedValues: [ // StringList * "STRING_VALUE", * ], * }, * shape: "Scalar" || "List" || "Composite", * values: [ // Values * { * value: { * originalValue: "STRING_VALUE", * interpretedValue: "STRING_VALUE", // required * resolvedValues: [ * "STRING_VALUE", * ], * }, * shape: "Scalar" || "List" || "Composite", * values: [ * "", * ], * subSlots: { * "": "", * }, * }, * ], * subSlots: "", * }, * }, * state: "Failed" || "Fulfilled" || "InProgress" || "ReadyForFulfillment" || "Waiting" || "FulfillmentInProgress", * confirmationState: "Confirmed" || "Denied" || "None", * }, * activeContexts: [ // ActiveContextsList * { // ActiveContext * name: "STRING_VALUE", // required * timeToLive: { // ActiveContextTimeToLive * timeToLiveInSeconds: Number("int"), // required * turnsToLive: Number("int"), // required * }, * contextAttributes: { // ActiveContextParametersMap // required * "": "STRING_VALUE", * }, * }, * ], * sessionAttributes: { * "": "STRING_VALUE", * }, * originatingRequestId: "STRING_VALUE", * runtimeHints: { // RuntimeHints * slotHints: { // SlotHintsIntentMap * "": { // SlotHintsSlotMap * "": { // RuntimeHintDetails * runtimeHintValues: [ // RuntimeHintValuesList * { // RuntimeHintValue * phrase: "STRING_VALUE", // required * }, * ], * subSlotHints: { * "": { * runtimeHintValues: [ * { * phrase: "STRING_VALUE", // required * }, * ], * subSlotHints: "", * }, * }, * }, * }, * }, * }, * }, * welcomeMessages: [ // Messages * { // Message * content: "STRING_VALUE", * contentType: "CustomPayload" || "ImageResponseCard" || "PlainText" || "SSML", // required * imageResponseCard: { // ImageResponseCard * title: "STRING_VALUE", // required * subtitle: "STRING_VALUE", * imageUrl: "STRING_VALUE", * buttons: [ // ButtonsList * { // Button * text: "STRING_VALUE", // required * value: "STRING_VALUE", // required * }, * ], * }, * }, * ], * disablePlayback: true || false, * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * AudioInputEvent: { // AudioInputEvent * audioChunk: new Uint8Array(), // e.g. Buffer.from("") or new TextEncoder().encode("") * contentType: "STRING_VALUE", // required * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * DTMFInputEvent: { // DTMFInputEvent * inputCharacter: "STRING_VALUE", // required * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * TextInputEvent: { // TextInputEvent * text: "STRING_VALUE", // required * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * PlaybackCompletionEvent: { // PlaybackCompletionEvent * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * DisconnectionEvent: { // DisconnectionEvent * eventId: "STRING_VALUE", * clientTimestampMillis: Number("long"), * }, * }, * }; * const command = new StartConversationCommand(input); * const response = await client.send(command); * // { // StartConversationResponse * // responseEventStream: { // StartConversationResponseEventStream Union: only one key present * // PlaybackInterruptionEvent: { // PlaybackInterruptionEvent * // eventReason: "DTMF_START_DETECTED" || "TEXT_DETECTED" || "VOICE_START_DETECTED", * // causedByEventId: "STRING_VALUE", * // eventId: "STRING_VALUE", * // }, * // TranscriptEvent: { // TranscriptEvent * // transcript: "STRING_VALUE", * // eventId: "STRING_VALUE", * // }, * // IntentResultEvent: { // IntentResultEvent * // inputMode: "Text" || "Speech" || "DTMF", * // interpretations: [ // Interpretations * // { // Interpretation * // nluConfidence: { // ConfidenceScore * // score: Number("double"), * // }, * // sentimentResponse: { // SentimentResponse * // sentiment: "MIXED" || "NEGATIVE" || "NEUTRAL" || "POSITIVE", * // sentimentScore: { // SentimentScore * // positive: Number("double"), * // negative: Number("double"), * // neutral: Number("double"), * // mixed: Number("double"), * // }, * // }, * // intent: { // Intent * // name: "STRING_VALUE", // required * // slots: { // Slots * // "": { // Slot * // value: { // Value * // originalValue: "STRING_VALUE", * // interpretedValue: "STRING_VALUE", // required * // resolvedValues: [ // StringList * // "STRING_VALUE", * // ], * // }, * // shape: "Scalar" || "List" || "Composite", * // values: [ // Values * // { * // value: { * // originalValue: "STRING_VALUE", * // interpretedValue: "STRING_VALUE", // required * // resolvedValues: [ * // "STRING_VALUE", * // ], * // }, * // shape: "Scalar" || "List" || "Composite", * // values: [ * // "", * // ], * // subSlots: { * // "": "", * // }, * // }, * // ], * // subSlots: "", * // }, * // }, * // state: "Failed" || "Fulfilled" || "InProgress" || "ReadyForFulfillment" || "Waiting" || "FulfillmentInProgress", * // confirmationState: "Confirmed" || "Denied" || "None", * // }, * // interpretationSource: "Bedrock" || "Lex", * // }, * // ], * // sessionState: { // SessionState * // dialogAction: { // DialogAction * // type: "Close" || "ConfirmIntent" || "Delegate" || "ElicitIntent" || "ElicitSlot" || "None", // required * // slotToElicit: "STRING_VALUE", * // slotElicitationStyle: "Default" || "SpellByLetter" || "SpellByWord", * // subSlotToElicit: { // ElicitSubSlot * // name: "STRING_VALUE", // required * // subSlotToElicit: { * // name: "STRING_VALUE", // required * // subSlotToElicit: "", * // }, * // }, * // }, * // intent: { * // name: "STRING_VALUE", // required * // slots: "", * // state: "Failed" || "Fulfilled" || "InProgress" || "ReadyForFulfillment" || "Waiting" || "FulfillmentInProgress", * // confirmationState: "Confirmed" || "Denied" || "None", * // }, * // activeContexts: [ // ActiveContextsList * // { // ActiveContext * // name: "STRING_VALUE", // required * // timeToLive: { // ActiveContextTimeToLive * // timeToLiveInSeconds: Number("int"), // required * // turnsToLive: Number("int"), // required * // }, * // contextAttributes: { // ActiveContextParametersMap // required * // "": "STRING_VALUE", * // }, * // }, * // ], * // sessionAttributes: { // StringMap * // "": "STRING_VALUE", * // }, * // originatingRequestId: "STRING_VALUE", * // runtimeHints: { // RuntimeHints * // slotHints: { // SlotHintsIntentMap * // "": { // SlotHintsSlotMap * // "": { // RuntimeHintDetails * // runtimeHintValues: [ // RuntimeHintValuesList * // { // RuntimeHintValue * // phrase: "STRING_VALUE", // required * // }, * // ], * // subSlotHints: { * // "": { * // runtimeHintValues: [ * // { * // phrase: "STRING_VALUE", // required * // }, * // ], * // subSlotHints: "", * // }, * // }, * // }, * // }, * // }, * // }, * // }, * // requestAttributes: { * // "": "STRING_VALUE", * // }, * // sessionId: "STRING_VALUE", * // eventId: "STRING_VALUE", * // recognizedBotMember: { // RecognizedBotMember * // botId: "STRING_VALUE", // required * // botName: "STRING_VALUE", * // }, * // }, * // TextResponseEvent: { // TextResponseEvent * // messages: [ // Messages * // { // Message * // content: "STRING_VALUE", * // contentType: "CustomPayload" || "ImageResponseCard" || "PlainText" || "SSML", // required * // imageResponseCard: { // ImageResponseCard * // title: "STRING_VALUE", // required * // subtitle: "STRING_VALUE", * // imageUrl: "STRING_VALUE", * // buttons: [ // ButtonsList * // { // Button * // text: "STRING_VALUE", // required * // value: "STRING_VALUE", // required * // }, * // ], * // }, * // }, * // ], * // eventId: "STRING_VALUE", * // }, * // AudioResponseEvent: { // AudioResponseEvent * // audioChunk: new Uint8Array(), * // contentType: "STRING_VALUE", * // eventId: "STRING_VALUE", * // }, * // HeartbeatEvent: { // HeartbeatEvent * // eventId: "STRING_VALUE", * // }, * // AccessDeniedException: { // AccessDeniedException * // message: "STRING_VALUE", // required * // }, * // ResourceNotFoundException: { // ResourceNotFoundException * // message: "STRING_VALUE", // required * // }, * // ValidationException: { // ValidationException * // message: "STRING_VALUE", // required * // }, * // ThrottlingException: { // ThrottlingException * // message: "STRING_VALUE", // required * // }, * // InternalServerException: { // InternalServerException * // message: "STRING_VALUE", // required * // }, * // ConflictException: { // ConflictException * // message: "STRING_VALUE", // required * // }, * // DependencyFailedException: { // DependencyFailedException * // message: "STRING_VALUE", // required * // }, * // BadGatewayException: { // BadGatewayException * // message: "STRING_VALUE", // required * // }, * // }, * // }; * * ``` * * @param StartConversationCommandInput - {@link StartConversationCommandInput} * @returns {@link StartConversationCommandOutput} * @see {@link StartConversationCommandInput} for command's `input` shape. * @see {@link StartConversationCommandOutput} for command's `response` shape. * @see {@link LexRuntimeV2ClientResolvedConfig | config} for LexRuntimeV2Client's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

* * @throws {@link InternalServerException} (server fault) *

* * @throws {@link ThrottlingException} (client fault) *

* * @throws {@link ValidationException} (client fault) *

* * @throws {@link LexRuntimeV2ServiceException} *

Base exception class for all service exceptions from LexRuntimeV2 service.

* * * @public */ export declare class StartConversationCommand extends StartConversationCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: StartConversationRequest; output: StartConversationResponse; }; sdk: { input: StartConversationCommandInput; output: StartConversationCommandOutput; }; }; }