/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace LexModelsV2 { namespace Model { /** *

An object containing information about a specific utterance.

See * Also:

AWS * API Reference

*/ class UtteranceSpecification { public: AWS_LEXMODELSV2_API UtteranceSpecification(); AWS_LEXMODELSV2_API UtteranceSpecification(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API UtteranceSpecification& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline const Aws::String& GetBotAliasId() const{ return m_botAliasId; } /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline bool BotAliasIdHasBeenSet() const { return m_botAliasIdHasBeenSet; } /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline void SetBotAliasId(const Aws::String& value) { m_botAliasIdHasBeenSet = true; m_botAliasId = value; } /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline void SetBotAliasId(Aws::String&& value) { m_botAliasIdHasBeenSet = true; m_botAliasId = std::move(value); } /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline void SetBotAliasId(const char* value) { m_botAliasIdHasBeenSet = true; m_botAliasId.assign(value); } /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotAliasId(const Aws::String& value) { SetBotAliasId(value); return *this;} /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotAliasId(Aws::String&& value) { SetBotAliasId(std::move(value)); return *this;} /** *

The identifier of the alias of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotAliasId(const char* value) { SetBotAliasId(value); return *this;} /** *

The version of the bot that the utterance was made to.

*/ inline const Aws::String& GetBotVersion() const{ return m_botVersion; } /** *

The version of the bot that the utterance was made to.

*/ inline bool BotVersionHasBeenSet() const { return m_botVersionHasBeenSet; } /** *

The version of the bot that the utterance was made to.

*/ inline void SetBotVersion(const Aws::String& value) { m_botVersionHasBeenSet = true; m_botVersion = value; } /** *

The version of the bot that the utterance was made to.

*/ inline void SetBotVersion(Aws::String&& value) { m_botVersionHasBeenSet = true; m_botVersion = std::move(value); } /** *

The version of the bot that the utterance was made to.

*/ inline void SetBotVersion(const char* value) { m_botVersionHasBeenSet = true; m_botVersion.assign(value); } /** *

The version of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotVersion(const Aws::String& value) { SetBotVersion(value); return *this;} /** *

The version of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotVersion(Aws::String&& value) { SetBotVersion(std::move(value)); return *this;} /** *

The version of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithBotVersion(const char* value) { SetBotVersion(value); return *this;} /** *

The locale of the bot that the utterance was made to.

*/ inline const Aws::String& GetLocaleId() const{ return m_localeId; } /** *

The locale of the bot that the utterance was made to.

*/ inline bool LocaleIdHasBeenSet() const { return m_localeIdHasBeenSet; } /** *

The locale of the bot that the utterance was made to.

*/ inline void SetLocaleId(const Aws::String& value) { m_localeIdHasBeenSet = true; m_localeId = value; } /** *

The locale of the bot that the utterance was made to.

*/ inline void SetLocaleId(Aws::String&& value) { m_localeIdHasBeenSet = true; m_localeId = std::move(value); } /** *

The locale of the bot that the utterance was made to.

*/ inline void SetLocaleId(const char* value) { m_localeIdHasBeenSet = true; m_localeId.assign(value); } /** *

The locale of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithLocaleId(const Aws::String& value) { SetLocaleId(value); return *this;} /** *

The locale of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithLocaleId(Aws::String&& value) { SetLocaleId(std::move(value)); return *this;} /** *

The locale of the bot that the utterance was made to.

*/ inline UtteranceSpecification& WithLocaleId(const char* value) { SetLocaleId(value); return *this;} /** *

The identifier of the session that the utterance was made in.

*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *

The identifier of the session that the utterance was made in.

*/ inline bool SessionIdHasBeenSet() const { return m_sessionIdHasBeenSet; } /** *

The identifier of the session that the utterance was made in.

*/ inline void SetSessionId(const Aws::String& value) { m_sessionIdHasBeenSet = true; m_sessionId = value; } /** *

The identifier of the session that the utterance was made in.

*/ inline void SetSessionId(Aws::String&& value) { m_sessionIdHasBeenSet = true; m_sessionId = std::move(value); } /** *

The identifier of the session that the utterance was made in.

*/ inline void SetSessionId(const char* value) { m_sessionIdHasBeenSet = true; m_sessionId.assign(value); } /** *

The identifier of the session that the utterance was made in.

*/ inline UtteranceSpecification& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *

The identifier of the session that the utterance was made in.

*/ inline UtteranceSpecification& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *

The identifier of the session that the utterance was made in.

*/ inline UtteranceSpecification& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline const Aws::String& GetChannel() const{ return m_channel; } /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline bool ChannelHasBeenSet() const { return m_channelHasBeenSet; } /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline void SetChannel(const Aws::String& value) { m_channelHasBeenSet = true; m_channel = value; } /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline void SetChannel(Aws::String&& value) { m_channelHasBeenSet = true; m_channel = std::move(value); } /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline void SetChannel(const char* value) { m_channelHasBeenSet = true; m_channel.assign(value); } /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline UtteranceSpecification& WithChannel(const Aws::String& value) { SetChannel(value); return *this;} /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline UtteranceSpecification& WithChannel(Aws::String&& value) { SetChannel(std::move(value)); return *this;} /** *

The channel that is integrated with the bot that the utterance was made * to.

*/ inline UtteranceSpecification& WithChannel(const char* value) { SetChannel(value); return *this;} /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline const AnalyticsModality& GetMode() const{ return m_mode; } /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; } /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline void SetMode(const AnalyticsModality& value) { m_modeHasBeenSet = true; m_mode = value; } /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline void SetMode(AnalyticsModality&& value) { m_modeHasBeenSet = true; m_mode = std::move(value); } /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline UtteranceSpecification& WithMode(const AnalyticsModality& value) { SetMode(value); return *this;} /** *

The mode of the session. The possible values are as follows:

  • *

    Speech – The session consisted of spoken dialogue.

  • *
  • Text – The session consisted of written dialogue.

    *
  • DTMF – The session consisted of touch-tone keypad * (Dual Tone Multi-Frequency) key presses.

  • * MultiMode – The session consisted of multiple modes.

  • *
*/ inline UtteranceSpecification& WithMode(AnalyticsModality&& value) { SetMode(std::move(value)); return *this;} /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline const Aws::Utils::DateTime& GetConversationStartTime() const{ return m_conversationStartTime; } /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline bool ConversationStartTimeHasBeenSet() const { return m_conversationStartTimeHasBeenSet; } /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline void SetConversationStartTime(const Aws::Utils::DateTime& value) { m_conversationStartTimeHasBeenSet = true; m_conversationStartTime = value; } /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline void SetConversationStartTime(Aws::Utils::DateTime&& value) { m_conversationStartTimeHasBeenSet = true; m_conversationStartTime = std::move(value); } /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline UtteranceSpecification& WithConversationStartTime(const Aws::Utils::DateTime& value) { SetConversationStartTime(value); return *this;} /** *

The date and time when the conversation in which the utterance took place * began. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline UtteranceSpecification& WithConversationStartTime(Aws::Utils::DateTime&& value) { SetConversationStartTime(std::move(value)); return *this;} /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline const Aws::Utils::DateTime& GetConversationEndTime() const{ return m_conversationEndTime; } /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline bool ConversationEndTimeHasBeenSet() const { return m_conversationEndTimeHasBeenSet; } /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline void SetConversationEndTime(const Aws::Utils::DateTime& value) { m_conversationEndTimeHasBeenSet = true; m_conversationEndTime = value; } /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline void SetConversationEndTime(Aws::Utils::DateTime&& value) { m_conversationEndTimeHasBeenSet = true; m_conversationEndTime = std::move(value); } /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline UtteranceSpecification& WithConversationEndTime(const Aws::Utils::DateTime& value) { SetConversationEndTime(value); return *this;} /** *

The date and time when the conversation in which the utterance took place * ended. A conversation is defined as a unique combination of a * sessionId and an originatingRequestId.

*/ inline UtteranceSpecification& WithConversationEndTime(Aws::Utils::DateTime&& value) { SetConversationEndTime(std::move(value)); return *this;} /** *

The text of the utterance.

*/ inline const Aws::String& GetUtterance() const{ return m_utterance; } /** *

The text of the utterance.

*/ inline bool UtteranceHasBeenSet() const { return m_utteranceHasBeenSet; } /** *

The text of the utterance.

*/ inline void SetUtterance(const Aws::String& value) { m_utteranceHasBeenSet = true; m_utterance = value; } /** *

The text of the utterance.

*/ inline void SetUtterance(Aws::String&& value) { m_utteranceHasBeenSet = true; m_utterance = std::move(value); } /** *

The text of the utterance.

*/ inline void SetUtterance(const char* value) { m_utteranceHasBeenSet = true; m_utterance.assign(value); } /** *

The text of the utterance.

*/ inline UtteranceSpecification& WithUtterance(const Aws::String& value) { SetUtterance(value); return *this;} /** *

The text of the utterance.

*/ inline UtteranceSpecification& WithUtterance(Aws::String&& value) { SetUtterance(std::move(value)); return *this;} /** *

The text of the utterance.

*/ inline UtteranceSpecification& WithUtterance(const char* value) { SetUtterance(value); return *this;} /** *

The date and time when the utterance took place.

*/ inline const Aws::Utils::DateTime& GetUtteranceTimestamp() const{ return m_utteranceTimestamp; } /** *

The date and time when the utterance took place.

*/ inline bool UtteranceTimestampHasBeenSet() const { return m_utteranceTimestampHasBeenSet; } /** *

The date and time when the utterance took place.

*/ inline void SetUtteranceTimestamp(const Aws::Utils::DateTime& value) { m_utteranceTimestampHasBeenSet = true; m_utteranceTimestamp = value; } /** *

The date and time when the utterance took place.

*/ inline void SetUtteranceTimestamp(Aws::Utils::DateTime&& value) { m_utteranceTimestampHasBeenSet = true; m_utteranceTimestamp = std::move(value); } /** *

The date and time when the utterance took place.

*/ inline UtteranceSpecification& WithUtteranceTimestamp(const Aws::Utils::DateTime& value) { SetUtteranceTimestamp(value); return *this;} /** *

The date and time when the utterance took place.

*/ inline UtteranceSpecification& WithUtteranceTimestamp(Aws::Utils::DateTime&& value) { SetUtteranceTimestamp(std::move(value)); return *this;} /** *

The duration in milliseconds of the audio associated with the utterance.

*/ inline long long GetAudioVoiceDurationMillis() const{ return m_audioVoiceDurationMillis; } /** *

The duration in milliseconds of the audio associated with the utterance.

*/ inline bool AudioVoiceDurationMillisHasBeenSet() const { return m_audioVoiceDurationMillisHasBeenSet; } /** *

The duration in milliseconds of the audio associated with the utterance.

*/ inline void SetAudioVoiceDurationMillis(long long value) { m_audioVoiceDurationMillisHasBeenSet = true; m_audioVoiceDurationMillis = value; } /** *

The duration in milliseconds of the audio associated with the utterance.

*/ inline UtteranceSpecification& WithAudioVoiceDurationMillis(long long value) { SetAudioVoiceDurationMillis(value); return *this;} /** *

Specifies whether the bot understood the utterance or not.

*/ inline bool GetUtteranceUnderstood() const{ return m_utteranceUnderstood; } /** *

Specifies whether the bot understood the utterance or not.

*/ inline bool UtteranceUnderstoodHasBeenSet() const { return m_utteranceUnderstoodHasBeenSet; } /** *

Specifies whether the bot understood the utterance or not.

*/ inline void SetUtteranceUnderstood(bool value) { m_utteranceUnderstoodHasBeenSet = true; m_utteranceUnderstood = value; } /** *

Specifies whether the bot understood the utterance or not.

*/ inline UtteranceSpecification& WithUtteranceUnderstood(bool value) { SetUtteranceUnderstood(value); return *this;} /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline const Aws::String& GetInputType() const{ return m_inputType; } /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline bool InputTypeHasBeenSet() const { return m_inputTypeHasBeenSet; } /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline void SetInputType(const Aws::String& value) { m_inputTypeHasBeenSet = true; m_inputType = value; } /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline void SetInputType(Aws::String&& value) { m_inputTypeHasBeenSet = true; m_inputType = std::move(value); } /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline void SetInputType(const char* value) { m_inputTypeHasBeenSet = true; m_inputType.assign(value); } /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline UtteranceSpecification& WithInputType(const Aws::String& value) { SetInputType(value); return *this;} /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline UtteranceSpecification& WithInputType(Aws::String&& value) { SetInputType(std::move(value)); return *this;} /** *

The input type of the utterance. The possible values are as follows:

    *
  • PCM format: audio data must be in little-endian byte order.

      *
    • audio/l16; rate=16000; channels=1

    • * audio/x-l16; sample-rate=16000; channel-count=1

    • * audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; * is-big-endian=false

  • Opus format

      *
    • * audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 *

  • Text format

    • text/plain; * charset=utf-8

*/ inline UtteranceSpecification& WithInputType(const char* value) { SetInputType(value); return *this;} /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline const Aws::String& GetOutputType() const{ return m_outputType; } /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline bool OutputTypeHasBeenSet() const { return m_outputTypeHasBeenSet; } /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline void SetOutputType(const Aws::String& value) { m_outputTypeHasBeenSet = true; m_outputType = value; } /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline void SetOutputType(Aws::String&& value) { m_outputTypeHasBeenSet = true; m_outputType = std::move(value); } /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline void SetOutputType(const char* value) { m_outputTypeHasBeenSet = true; m_outputType.assign(value); } /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline UtteranceSpecification& WithOutputType(const Aws::String& value) { SetOutputType(value); return *this;} /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline UtteranceSpecification& WithOutputType(Aws::String&& value) { SetOutputType(std::move(value)); return *this;} /** *

The output type of the utterance. The possible values are as follows:

*
  • audio/mpeg

  • audio/ogg *

  • audio/pcm (16 KHz)

  • * audio/ (defaults to mpeg)

  • * text/plain; charset=utf-8

*/ inline UtteranceSpecification& WithOutputType(const char* value) { SetOutputType(value); return *this;} /** *

The name of the intent that the utterance is associated to.

*/ inline const Aws::String& GetAssociatedIntentName() const{ return m_associatedIntentName; } /** *

The name of the intent that the utterance is associated to.

*/ inline bool AssociatedIntentNameHasBeenSet() const { return m_associatedIntentNameHasBeenSet; } /** *

The name of the intent that the utterance is associated to.

*/ inline void SetAssociatedIntentName(const Aws::String& value) { m_associatedIntentNameHasBeenSet = true; m_associatedIntentName = value; } /** *

The name of the intent that the utterance is associated to.

*/ inline void SetAssociatedIntentName(Aws::String&& value) { m_associatedIntentNameHasBeenSet = true; m_associatedIntentName = std::move(value); } /** *

The name of the intent that the utterance is associated to.

*/ inline void SetAssociatedIntentName(const char* value) { m_associatedIntentNameHasBeenSet = true; m_associatedIntentName.assign(value); } /** *

The name of the intent that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedIntentName(const Aws::String& value) { SetAssociatedIntentName(value); return *this;} /** *

The name of the intent that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedIntentName(Aws::String&& value) { SetAssociatedIntentName(std::move(value)); return *this;} /** *

The name of the intent that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedIntentName(const char* value) { SetAssociatedIntentName(value); return *this;} /** *

The name of the slot that the utterance is associated to.

*/ inline const Aws::String& GetAssociatedSlotName() const{ return m_associatedSlotName; } /** *

The name of the slot that the utterance is associated to.

*/ inline bool AssociatedSlotNameHasBeenSet() const { return m_associatedSlotNameHasBeenSet; } /** *

The name of the slot that the utterance is associated to.

*/ inline void SetAssociatedSlotName(const Aws::String& value) { m_associatedSlotNameHasBeenSet = true; m_associatedSlotName = value; } /** *

The name of the slot that the utterance is associated to.

*/ inline void SetAssociatedSlotName(Aws::String&& value) { m_associatedSlotNameHasBeenSet = true; m_associatedSlotName = std::move(value); } /** *

The name of the slot that the utterance is associated to.

*/ inline void SetAssociatedSlotName(const char* value) { m_associatedSlotNameHasBeenSet = true; m_associatedSlotName.assign(value); } /** *

The name of the slot that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedSlotName(const Aws::String& value) { SetAssociatedSlotName(value); return *this;} /** *

The name of the slot that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedSlotName(Aws::String&& value) { SetAssociatedSlotName(std::move(value)); return *this;} /** *

The name of the slot that the utterance is associated to.

*/ inline UtteranceSpecification& WithAssociatedSlotName(const char* value) { SetAssociatedSlotName(value); return *this;} /** *

The state of the intent that the utterance is associated to.

*/ inline const IntentState& GetIntentState() const{ return m_intentState; } /** *

The state of the intent that the utterance is associated to.

*/ inline bool IntentStateHasBeenSet() const { return m_intentStateHasBeenSet; } /** *

The state of the intent that the utterance is associated to.

*/ inline void SetIntentState(const IntentState& value) { m_intentStateHasBeenSet = true; m_intentState = value; } /** *

The state of the intent that the utterance is associated to.

*/ inline void SetIntentState(IntentState&& value) { m_intentStateHasBeenSet = true; m_intentState = std::move(value); } /** *

The state of the intent that the utterance is associated to.

*/ inline UtteranceSpecification& WithIntentState(const IntentState& value) { SetIntentState(value); return *this;} /** *

The state of the intent that the utterance is associated to.

*/ inline UtteranceSpecification& WithIntentState(IntentState&& value) { SetIntentState(std::move(value)); return *this;} /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline const Aws::String& GetDialogActionType() const{ return m_dialogActionType; } /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline bool DialogActionTypeHasBeenSet() const { return m_dialogActionTypeHasBeenSet; } /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline void SetDialogActionType(const Aws::String& value) { m_dialogActionTypeHasBeenSet = true; m_dialogActionType = value; } /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline void SetDialogActionType(Aws::String&& value) { m_dialogActionTypeHasBeenSet = true; m_dialogActionType = std::move(value); } /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline void SetDialogActionType(const char* value) { m_dialogActionTypeHasBeenSet = true; m_dialogActionType.assign(value); } /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline UtteranceSpecification& WithDialogActionType(const Aws::String& value) { SetDialogActionType(value); return *this;} /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline UtteranceSpecification& WithDialogActionType(Aws::String&& value) { SetDialogActionType(std::move(value)); return *this;} /** *

The type of dialog action that the utterance is associated to. See the * type field in DialogAction * for more information.

*/ inline UtteranceSpecification& WithDialogActionType(const char* value) { SetDialogActionType(value); return *this;} /** *

The identifier for the audio of the bot response.

*/ inline const Aws::String& GetBotResponseAudioVoiceId() const{ return m_botResponseAudioVoiceId; } /** *

The identifier for the audio of the bot response.

*/ inline bool BotResponseAudioVoiceIdHasBeenSet() const { return m_botResponseAudioVoiceIdHasBeenSet; } /** *

The identifier for the audio of the bot response.

*/ inline void SetBotResponseAudioVoiceId(const Aws::String& value) { m_botResponseAudioVoiceIdHasBeenSet = true; m_botResponseAudioVoiceId = value; } /** *

The identifier for the audio of the bot response.

*/ inline void SetBotResponseAudioVoiceId(Aws::String&& value) { m_botResponseAudioVoiceIdHasBeenSet = true; m_botResponseAudioVoiceId = std::move(value); } /** *

The identifier for the audio of the bot response.

*/ inline void SetBotResponseAudioVoiceId(const char* value) { m_botResponseAudioVoiceIdHasBeenSet = true; m_botResponseAudioVoiceId.assign(value); } /** *

The identifier for the audio of the bot response.

*/ inline UtteranceSpecification& WithBotResponseAudioVoiceId(const Aws::String& value) { SetBotResponseAudioVoiceId(value); return *this;} /** *

The identifier for the audio of the bot response.

*/ inline UtteranceSpecification& WithBotResponseAudioVoiceId(Aws::String&& value) { SetBotResponseAudioVoiceId(std::move(value)); return *this;} /** *

The identifier for the audio of the bot response.

*/ inline UtteranceSpecification& WithBotResponseAudioVoiceId(const char* value) { SetBotResponseAudioVoiceId(value); return *this;} /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline const Aws::String& GetSlotsFilledInSession() const{ return m_slotsFilledInSession; } /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline bool SlotsFilledInSessionHasBeenSet() const { return m_slotsFilledInSessionHasBeenSet; } /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline void SetSlotsFilledInSession(const Aws::String& value) { m_slotsFilledInSessionHasBeenSet = true; m_slotsFilledInSession = value; } /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline void SetSlotsFilledInSession(Aws::String&& value) { m_slotsFilledInSessionHasBeenSet = true; m_slotsFilledInSession = std::move(value); } /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline void SetSlotsFilledInSession(const char* value) { m_slotsFilledInSessionHasBeenSet = true; m_slotsFilledInSession.assign(value); } /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline UtteranceSpecification& WithSlotsFilledInSession(const Aws::String& value) { SetSlotsFilledInSession(value); return *this;} /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline UtteranceSpecification& WithSlotsFilledInSession(Aws::String&& value) { SetSlotsFilledInSession(std::move(value)); return *this;} /** *

The slots that have been filled in the session by the time of the * utterance.

*/ inline UtteranceSpecification& WithSlotsFilledInSession(const char* value) { SetSlotsFilledInSession(value); return *this;} /** *

The identifier of the request associated with the utterance.

*/ inline const Aws::String& GetUtteranceRequestId() const{ return m_utteranceRequestId; } /** *

The identifier of the request associated with the utterance.

*/ inline bool UtteranceRequestIdHasBeenSet() const { return m_utteranceRequestIdHasBeenSet; } /** *

The identifier of the request associated with the utterance.

*/ inline void SetUtteranceRequestId(const Aws::String& value) { m_utteranceRequestIdHasBeenSet = true; m_utteranceRequestId = value; } /** *

The identifier of the request associated with the utterance.

*/ inline void SetUtteranceRequestId(Aws::String&& value) { m_utteranceRequestIdHasBeenSet = true; m_utteranceRequestId = std::move(value); } /** *

The identifier of the request associated with the utterance.

*/ inline void SetUtteranceRequestId(const char* value) { m_utteranceRequestIdHasBeenSet = true; m_utteranceRequestId.assign(value); } /** *

The identifier of the request associated with the utterance.

*/ inline UtteranceSpecification& WithUtteranceRequestId(const Aws::String& value) { SetUtteranceRequestId(value); return *this;} /** *

The identifier of the request associated with the utterance.

*/ inline UtteranceSpecification& WithUtteranceRequestId(Aws::String&& value) { SetUtteranceRequestId(std::move(value)); return *this;} /** *

The identifier of the request associated with the utterance.

*/ inline UtteranceSpecification& WithUtteranceRequestId(const char* value) { SetUtteranceRequestId(value); return *this;} /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline const Aws::Vector& GetBotResponses() const{ return m_botResponses; } /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline bool BotResponsesHasBeenSet() const { return m_botResponsesHasBeenSet; } /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline void SetBotResponses(const Aws::Vector& value) { m_botResponsesHasBeenSet = true; m_botResponses = value; } /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline void SetBotResponses(Aws::Vector&& value) { m_botResponsesHasBeenSet = true; m_botResponses = std::move(value); } /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline UtteranceSpecification& WithBotResponses(const Aws::Vector& value) { SetBotResponses(value); return *this;} /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline UtteranceSpecification& WithBotResponses(Aws::Vector&& value) { SetBotResponses(std::move(value)); return *this;} /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline UtteranceSpecification& AddBotResponses(const UtteranceBotResponse& value) { m_botResponsesHasBeenSet = true; m_botResponses.push_back(value); return *this; } /** *

A list of objects containing information about the bot response to the * utterance.

*/ inline UtteranceSpecification& AddBotResponses(UtteranceBotResponse&& value) { m_botResponsesHasBeenSet = true; m_botResponses.push_back(std::move(value)); return *this; } private: Aws::String m_botAliasId; bool m_botAliasIdHasBeenSet = false; Aws::String m_botVersion; bool m_botVersionHasBeenSet = false; Aws::String m_localeId; bool m_localeIdHasBeenSet = false; Aws::String m_sessionId; bool m_sessionIdHasBeenSet = false; Aws::String m_channel; bool m_channelHasBeenSet = false; AnalyticsModality m_mode; bool m_modeHasBeenSet = false; Aws::Utils::DateTime m_conversationStartTime; bool m_conversationStartTimeHasBeenSet = false; Aws::Utils::DateTime m_conversationEndTime; bool m_conversationEndTimeHasBeenSet = false; Aws::String m_utterance; bool m_utteranceHasBeenSet = false; Aws::Utils::DateTime m_utteranceTimestamp; bool m_utteranceTimestampHasBeenSet = false; long long m_audioVoiceDurationMillis; bool m_audioVoiceDurationMillisHasBeenSet = false; bool m_utteranceUnderstood; bool m_utteranceUnderstoodHasBeenSet = false; Aws::String m_inputType; bool m_inputTypeHasBeenSet = false; Aws::String m_outputType; bool m_outputTypeHasBeenSet = false; Aws::String m_associatedIntentName; bool m_associatedIntentNameHasBeenSet = false; Aws::String m_associatedSlotName; bool m_associatedSlotNameHasBeenSet = false; IntentState m_intentState; bool m_intentStateHasBeenSet = false; Aws::String m_dialogActionType; bool m_dialogActionTypeHasBeenSet = false; Aws::String m_botResponseAudioVoiceId; bool m_botResponseAudioVoiceIdHasBeenSet = false; Aws::String m_slotsFilledInSession; bool m_slotsFilledInSessionHasBeenSet = false; Aws::String m_utteranceRequestId; bool m_utteranceRequestIdHasBeenSet = false; Aws::Vector m_botResponses; bool m_botResponsesHasBeenSet = false; }; } // namespace Model } // namespace LexModelsV2 } // namespace Aws