class Aws::Lex::Types::DialogAction

Describes the next action that the bot should take in its interaction with the user and provides information about the context in which the action takes place. Use the `DialogAction` data type to set the interaction to a specific state, or to return the interaction to a previous state.

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

data as a hash:

    {
      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
    }

@!attribute [rw] type

The next action that the bot should take in its interaction with the
user. The possible values are:

* `ConfirmIntent` - The next action is asking the user if the intent
  is complete and ready to be fulfilled. This is a yes/no question
  such as "Place the order?"

* `Close` - Indicates that the there will not be a response from the
  user. For example, the statement "Your order has been placed"
  does not require a response.

* `Delegate` - The next action is determined by Amazon Lex.

* `ElicitIntent` - The next action is to determine the intent that
  the user wants to fulfill.

* `ElicitSlot` - The next action is to elicit a slot value from the
  user.
@return [String]

@!attribute [rw] intent_name

The name of the intent.
@return [String]

@!attribute [rw] slots

Map of the slots that have been gathered and their values.
@return [Hash<String,String>]

@!attribute [rw] slot_to_elicit

The name of the slot that should be elicited from the user.
@return [String]

@!attribute [rw] fulfillment_state

The fulfillment state of the intent. The possible values are:

* `Failed` - The Lambda function associated with the intent failed
  to fulfill the intent.

* `Fulfilled` - The intent has fulfilled by the Lambda function
  associated with the intent.

* `ReadyForFulfillment` - All of the information necessary for the
  intent is present and the intent ready to be fulfilled by the
  client application.
@return [String]

@!attribute [rw] message

The message that should be shown to the user. If you don't specify
a message, Amazon Lex will use the message configured for the
intent.
@return [String]

@!attribute [rw] message_format

* `PlainText` - The message contains plain UTF-8 text.

* `CustomPayload` - The message is a custom format for the client.

* `SSML` - The message contains text formatted for voice output.

* `Composite` - The message contains an escaped JSON object
  containing one or more messages. For more information, see
  [Message Groups][1].

[1]: https://docs.aws.amazon.com/lex/latest/dg/howitworks-manage-prompts.html
@return [String]

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

Constants

SENSITIVE