NAME

Paws::LexRuntimeV2::PutSession - Arguments for method PutSession on Paws::LexRuntimeV2

DESCRIPTION

This class represents the parameters used for calling the method PutSession on the Amazon Lex Runtime V2 service. Use the attributes of this class as arguments to method PutSession.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to PutSession.

SYNOPSIS

my $runtime-v2-lex = Paws->service('LexRuntimeV2');
my $PutSessionResponse = $runtime - v2 -lex->PutSession(
  BotAliasId   => 'MyBotAliasIdentifier',
  BotId        => 'MyBotIdentifier',
  LocaleId     => 'MyLocaleId',
  SessionId    => 'MySessionId',
  SessionState => {
    ActiveContexts => [
      {
        ContextAttributes => {
          'MyParameterName' =>
            'MyText',    # key: min: 1, max: 100, value: min: 1, max: 1024
        },    # max: 10
        Name       => 'MyActiveContextName',    # min: 1, max: 100
        TimeToLive => {
          TimeToLiveInSeconds => 1,             # min: 5, max: 86400
          TurnsToLive         => 1,             # min: 1, max: 20

        },

      },
      ...
    ],    # max: 20; OPTIONAL
    DialogAction => {
      Type => 'Close'
      ,   # values: Close, ConfirmIntent, Delegate, ElicitIntent, ElicitSlot
      SlotToElicit => 'MyNonEmptyString',    # min: 1; OPTIONAL
    },    # OPTIONAL
    Intent => {
      Name              => 'MyNonEmptyString',    # min: 1; OPTIONAL
      ConfirmationState =>
        'Confirmed',    # values: Confirmed, Denied, None; OPTIONAL
      Slots => {
        'MyNonEmptyString' => {
          Shape => 'Scalar',    # values: Scalar, List; OPTIONAL
          Value => {
            InterpretedValue => 'MyNonEmptyString',    # min: 1; OPTIONAL
            OriginalValue    => 'MyNonEmptyString',    # min: 1; OPTIONAL
            ResolvedValues   => [
              'MyNonEmptyString', ...                  # min: 1; OPTIONAL
            ],    # OPTIONAL
          },    # OPTIONAL
          Values => [ <Slot>, ... ],    # OPTIONAL
        },    # key: min: 1; OPTIONAL
      },    # OPTIONAL
      State => 'Failed'
      , # values: Failed, Fulfilled, InProgress, ReadyForFulfillment, Waiting; OPTIONAL
    },    # OPTIONAL
    OriginatingRequestId => 'MyNonEmptyString',    # min: 1; OPTIONAL
    SessionAttributes    => {
      'MyNonEmptyString' => 'MyString',            # key: min: 1; OPTIONAL
    },    # OPTIONAL
  },
  Messages => [
    {
      ContentType => 'CustomPayload'
      ,    # values: CustomPayload, ImageResponseCard, PlainText, SSML
      Content           => 'MyText',    # min: 1, max: 1024
      ImageResponseCard => {
        Title   => 'MyAttachmentTitle',    # min: 1, max: 250
        Buttons => [
          {
            Text  => 'MyButtonText',     # min: 1, max: 50
            Value => 'MyButtonValue',    # min: 1, max: 50

          },
          ...
        ],    # max: 5; OPTIONAL
        ImageUrl => 'MyAttachmentUrl',      # min: 1, max: 250; OPTIONAL
        Subtitle => 'MyAttachmentTitle',    # min: 1, max: 250
      },    # OPTIONAL
    },
    ...
  ],    # OPTIONAL
  RequestAttributes => {
    'MyNonEmptyString' => 'MyString',    # key: min: 1; OPTIONAL
  },    # OPTIONAL
  ResponseContentType => 'MyNonEmptyString',    # OPTIONAL
);

# Results:
my $AudioStream       = $PutSessionResponse->AudioStream;
my $ContentType       = $PutSessionResponse->ContentType;
my $Messages          = $PutSessionResponse->Messages;
my $RequestAttributes = $PutSessionResponse->RequestAttributes;
my $SessionId         = $PutSessionResponse->SessionId;
my $SessionState      = $PutSessionResponse->SessionState;

# Returns a L<Paws::LexRuntimeV2::PutSessionResponse> object.

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/runtime-v2-lex/PutSession

ATTRIBUTES

REQUIRED BotAliasId => Str

The alias identifier of the bot that receives the session data.

REQUIRED BotId => Str

The identifier of the bot that receives the session data.

REQUIRED LocaleId => Str

The locale where the session is in use.

Messages => ArrayRef[Paws::LexRuntimeV2::Message]

A list of messages to send to the user. Messages are sent in the order that they are defined in the list.

RequestAttributes => Paws::LexRuntimeV2::StringMap

Request-specific information passed between Amazon Lex V2 and the client application.

The namespace x-amz-lex: is reserved for special attributes. Don't create any request attributes with the prefix x-amz-lex:.

ResponseContentType => Str

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

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

REQUIRED SessionId => Str

The identifier of the session that receives the session data.

REQUIRED SessionState => Paws::LexRuntimeV2::SessionState

Sets the state of the session with the user. You can use this to set the current intent, attributes, context, and dialog action. Use the dialog action to determine the next step that Amazon Lex V2 should use in the conversation with the user.

SEE ALSO

This class forms part of Paws, documenting arguments for method PutSession in Paws::LexRuntimeV2

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues