NAME

Paws::LexModelsV2::UpdateSlot - Arguments for method UpdateSlot on Paws::LexModelsV2

DESCRIPTION

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

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

SYNOPSIS

my $models-v2-lex = Paws->service('LexModelsV2');
my $UpdateSlotResponse = $models - v2 -lex->UpdateSlot(
  BotId                   => 'MyId',
  BotVersion              => 'MyDraftBotVersion',
  IntentId                => 'MyId',
  LocaleId                => 'MyLocaleId',
  SlotId                  => 'MyId',
  SlotName                => 'MyName',
  SlotTypeId              => 'MyBuiltInOrCustomSlotTypeId',
  ValueElicitationSetting => {
    SlotConstraint            => 'Required',    # values: Required, Optional
    DefaultValueSpecification => {
      DefaultValueList => [
        {
          DefaultValue => 'MySlotDefaultValueString',    # min: 1, max: 202

        },
        ...
      ],    # max: 10

    },    # OPTIONAL
    PromptSpecification => {
      MaxRetries    => 1,    # max: 5
      MessageGroups => [
        {
          Message => {
            CustomPayload => {
              Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

            },    # OPTIONAL
            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
            PlainTextMessage => {
              Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

            },    # OPTIONAL
            SsmlMessage => {
              Value => 'MySSMLMessageValue',    # min: 1, max: 1000

            },    # OPTIONAL
          },
          Variations => [
            {
              CustomPayload => {
                Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

              },    # OPTIONAL
              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
              PlainTextMessage => {
                Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
              SsmlMessage => {
                Value => 'MySSMLMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
            },
            ...
          ],    # max: 2; OPTIONAL
        },
        ...
      ],    # min: 1, max: 5
      AllowInterrupt => 1,    # OPTIONAL
    },    # OPTIONAL
    SampleUtterances => [
      {
        Utterance => 'MyUtterance',

      },
      ...
    ],    # OPTIONAL
    WaitAndContinueSpecification => {
      ContinueResponse => {
        MessageGroups => [
          {
            Message => {
              CustomPayload => {
                Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

              },    # OPTIONAL
              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
              PlainTextMessage => {
                Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
              SsmlMessage => {
                Value => 'MySSMLMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
            },
            Variations => [
              {
                CustomPayload => {
                  Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

                },    # OPTIONAL
                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
                PlainTextMessage => {
                  Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
                SsmlMessage => {
                  Value => 'MySSMLMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
              },
              ...
            ],    # max: 2; OPTIONAL
          },
          ...
        ],    # min: 1, max: 5
        AllowInterrupt => 1,    # OPTIONAL
      },
      WaitingResponse => {
        MessageGroups => [
          {
            Message => {
              CustomPayload => {
                Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

              },    # OPTIONAL
              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
              PlainTextMessage => {
                Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
              SsmlMessage => {
                Value => 'MySSMLMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
            },
            Variations => [
              {
                CustomPayload => {
                  Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

                },    # OPTIONAL
                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
                PlainTextMessage => {
                  Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
                SsmlMessage => {
                  Value => 'MySSMLMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
              },
              ...
            ],    # max: 2; OPTIONAL
          },
          ...
        ],    # min: 1, max: 5
        AllowInterrupt => 1,    # OPTIONAL
      },
      StillWaitingResponse => {
        FrequencyInSeconds => 1,    # min: 1, max: 300
        MessageGroups      => [
          {
            Message => {
              CustomPayload => {
                Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

              },    # OPTIONAL
              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
              PlainTextMessage => {
                Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
              SsmlMessage => {
                Value => 'MySSMLMessageValue',    # min: 1, max: 1000

              },    # OPTIONAL
            },
            Variations => [
              {
                CustomPayload => {
                  Value => 'MyCustomPayloadValue',    # min: 1, max: 1000

                },    # OPTIONAL
                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
                PlainTextMessage => {
                  Value => 'MyPlainTextMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
                SsmlMessage => {
                  Value => 'MySSMLMessageValue',    # min: 1, max: 1000

                },    # OPTIONAL
              },
              ...
            ],    # max: 2; OPTIONAL
          },
          ...
        ],    # min: 1, max: 5
        TimeoutInSeconds => 1,    # min: 1, max: 900
        AllowInterrupt   => 1,    # OPTIONAL
      },    # OPTIONAL
    },    # OPTIONAL
  },
  Description           => 'MyDescription',    # OPTIONAL
  MultipleValuesSetting => {
    AllowMultipleValues => 1,                  # OPTIONAL
  },    # OPTIONAL
  ObfuscationSetting => {
    ObfuscationSettingType => 'None',    # values: None, DefaultObfuscation

  },    # OPTIONAL
);

# Results:
my $BotId                   = $UpdateSlotResponse->BotId;
my $BotVersion              = $UpdateSlotResponse->BotVersion;
my $CreationDateTime        = $UpdateSlotResponse->CreationDateTime;
my $Description             = $UpdateSlotResponse->Description;
my $IntentId                = $UpdateSlotResponse->IntentId;
my $LastUpdatedDateTime     = $UpdateSlotResponse->LastUpdatedDateTime;
my $LocaleId                = $UpdateSlotResponse->LocaleId;
my $MultipleValuesSetting   = $UpdateSlotResponse->MultipleValuesSetting;
my $ObfuscationSetting      = $UpdateSlotResponse->ObfuscationSetting;
my $SlotId                  = $UpdateSlotResponse->SlotId;
my $SlotName                = $UpdateSlotResponse->SlotName;
my $SlotTypeId              = $UpdateSlotResponse->SlotTypeId;
my $ValueElicitationSetting = $UpdateSlotResponse->ValueElicitationSetting;

# Returns a L<Paws::LexModelsV2::UpdateSlotResponse> 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/models-v2-lex/UpdateSlot

ATTRIBUTES

REQUIRED BotId => Str

The unique identifier of the bot that contains the slot.

REQUIRED BotVersion => Str

The version of the bot that contains the slot. Must always be DRAFT.

Description => Str

The new description for the slot.

REQUIRED IntentId => Str

The identifier of the intent that contains the slot.

REQUIRED LocaleId => Str

The identifier of the language and locale that contains the slot. The string must match one of the supported locales. For more information, see Supported languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html).

MultipleValuesSetting => Paws::LexModelsV2::MultipleValuesSetting

Determines whether the slot accepts multiple values in one response. Multiple value slots are only available in the en-US locale. If you set this value to true in any other locale, Amazon Lex throws a ValidationException.

If the multipleValuesSetting is not set, the default value is false.

ObfuscationSetting => Paws::LexModelsV2::ObfuscationSetting

New settings that determine how slot values are formatted in Amazon CloudWatch logs.

REQUIRED SlotId => Str

The unique identifier for the slot to update.

REQUIRED SlotName => Str

The new name for the slot.

REQUIRED SlotTypeId => Str

The unique identifier of the new slot type to associate with this slot.

REQUIRED ValueElicitationSetting => Paws::LexModelsV2::SlotValueElicitationSetting

A new set of prompts that Amazon Lex sends to the user to elicit a response the provides a value for the slot.

SEE ALSO

This class forms part of Paws, documenting arguments for method UpdateSlot in Paws::LexModelsV2

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