class Aws::Lex::Types::PutSessionRequest

@note When making an API call, you may pass PutSessionRequest

data as a hash:

    {
      bot_name: "BotName", # required
      bot_alias: "BotAlias", # required
      user_id: "UserId", # required
      session_attributes: {
        "String" => "String",
      },
      dialog_action: {
        type: "ElicitIntent", # required, accepts ElicitIntent, ConfirmIntent, ElicitSlot, Close, Delegate
        intent_name: "IntentName",
        slots: {
          "String" => "String",
        },
        slot_to_elicit: "String",
        fulfillment_state: "Fulfilled", # accepts Fulfilled, Failed, ReadyForFulfillment
        message: "Text",
        message_format: "PlainText", # accepts PlainText, CustomPayload, SSML, Composite
      },
      recent_intent_summary_view: [
        {
          intent_name: "IntentName",
          checkpoint_label: "IntentSummaryCheckpointLabel",
          slots: {
            "String" => "String",
          },
          confirmation_status: "None", # accepts None, Confirmed, Denied
          dialog_action_type: "ElicitIntent", # required, accepts ElicitIntent, ConfirmIntent, ElicitSlot, Close, Delegate
          fulfillment_state: "Fulfilled", # accepts Fulfilled, Failed, ReadyForFulfillment
          slot_to_elicit: "String",
        },
      ],
      accept: "Accept",
      active_contexts: [
        {
          name: "ActiveContextName", # required
          time_to_live: { # required
            time_to_live_in_seconds: 1,
            turns_to_live: 1,
          },
          parameters: { # required
            "ParameterName" => "Text",
          },
        },
      ],
    }

@!attribute [rw] bot_name

The name of the bot that contains the session data.
@return [String]

@!attribute [rw] bot_alias

The alias in use for the bot that contains the session data.
@return [String]

@!attribute [rw] user_id

The ID of the client application user. Amazon Lex uses this to
identify a user's conversation with your bot.
@return [String]

@!attribute [rw] session_attributes

Map of key/value pairs representing the session-specific context
information. It contains application information passed between
Amazon Lex and a client application.
@return [Hash<String,String>]

@!attribute [rw] dialog_action

Sets the next action that the bot should take to fulfill the
conversation.
@return [Types::DialogAction]

@!attribute [rw] recent_intent_summary_view

A summary of the recent intents for the bot. You can use the intent
summary view to set a checkpoint label on an intent and modify
attributes of intents. You can also use it to remove or add intent
summary objects to the list.

An intent that you modify or add to the list must make sense for the
bot. For example, the intent name must be valid for the bot. You
must provide valid values for:

* `intentName`

* slot names

* `slotToElict`

If you send the `recentIntentSummaryView` parameter in a
`PutSession` request, the contents of the new summary view replaces
the old summary view. For example, if a `GetSession` request returns
three intents in the summary view and you call `PutSession` with one
intent in the summary view, the next call to `GetSession` will only
return one intent.
@return [Array<Types::IntentSummary>]

@!attribute [rw] accept

The message that Amazon Lex returns in the response can be either
text or speech based depending on the value of this field.

* If the value is `text/plain; charset=utf-8`, Amazon Lex returns
  text in the response.

* If the value begins with `audio/`, Amazon Lex returns speech in
  the response. Amazon Lex uses Amazon Polly to generate the speech
  in the configuration that you specify. For example, if you specify
  `audio/mpeg` as the value, Amazon Lex returns speech in the MPEG
  format.

* If the value is `audio/pcm`, the speech is returned as `audio/pcm`
  in 16-bit, little endian format.

* The following are the accepted values:

  * `audio/mpeg`

  * `audio/ogg`

  * `audio/pcm`

  * `audio/*` (defaults to mpeg)

  * `text/plain; charset=utf-8`
@return [String]

@!attribute [rw] active_contexts

A list of contexts active for the request. A context can be
activated when a previous intent is fulfilled, or by including the
context in the request,

If you don't specify a list of contexts, Amazon Lex will use the
current list of contexts for the session. If you specify an empty
list, all contexts for the session are cleared.
@return [Array<Types::ActiveContext>]

@see docs.aws.amazon.com/goto/WebAPI/runtime.lex-2016-11-28/PutSessionRequest AWS API Documentation

Constants

SENSITIVE