Class DialogAction

    • Method Detail

      • type

        public final DialogActionType 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.

        If the service returns an enum value that is not available in the current SDK version, type will return DialogActionType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from typeAsString().

        Returns:
        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.

        See Also:
        DialogActionType
      • typeAsString

        public final String typeAsString()

        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.

        If the service returns an enum value that is not available in the current SDK version, type will return DialogActionType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from typeAsString().

        Returns:
        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.

        See Also:
        DialogActionType
      • intentName

        public final String intentName()

        The name of the intent.

        Returns:
        The name of the intent.
      • hasSlots

        public final boolean hasSlots()
        For responses, this returns true if the service returned a value for the Slots property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
      • slots

        public final Map<String,​String> slots()

        Map of the slots that have been gathered and their values.

        Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

        This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSlots() method.

        Returns:
        Map of the slots that have been gathered and their values.
      • slotToElicit

        public final String slotToElicit()

        The name of the slot that should be elicited from the user.

        Returns:
        The name of the slot that should be elicited from the user.
      • fulfillmentState

        public final FulfillmentState fulfillmentState()

        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.

        If the service returns an enum value that is not available in the current SDK version, fulfillmentState will return FulfillmentState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from fulfillmentStateAsString().

        Returns:
        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.

        See Also:
        FulfillmentState
      • fulfillmentStateAsString

        public final String fulfillmentStateAsString()

        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.

        If the service returns an enum value that is not available in the current SDK version, fulfillmentState will return FulfillmentState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from fulfillmentStateAsString().

        Returns:
        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.

        See Also:
        FulfillmentState
      • message

        public final String 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.

        Returns:
        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.
      • messageFormat

        public final MessageFormatType messageFormat()
        • 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.

        If the service returns an enum value that is not available in the current SDK version, messageFormat will return MessageFormatType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from messageFormatAsString().

        Returns:
      • 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.

      • See Also:
        MessageFormatType
      • messageFormatAsString

        public final String messageFormatAsString()
        • 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.

        If the service returns an enum value that is not available in the current SDK version, messageFormat will return MessageFormatType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from messageFormatAsString().

        Returns:
      • 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.

      • See Also:
        MessageFormatType
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object
      • equals

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • toString

        public final String toString()
        Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
        Overrides:
        toString in class Object
      • getValueForField

        public final <T> Optional<T> getValueForField​(String fieldName,
                                                      Class<T> clazz)