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

Specifies the settings for a one-time voice message that's sent directly to * an endpoint through the voice channel.

See Also:

AWS * API Reference

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

The text of the script to use for the voice message.

*/ inline const Aws::String& GetBody() const{ return m_body; } /** *

The text of the script to use for the voice message.

*/ inline bool BodyHasBeenSet() const { return m_bodyHasBeenSet; } /** *

The text of the script to use for the voice message.

*/ inline void SetBody(const Aws::String& value) { m_bodyHasBeenSet = true; m_body = value; } /** *

The text of the script to use for the voice message.

*/ inline void SetBody(Aws::String&& value) { m_bodyHasBeenSet = true; m_body = std::move(value); } /** *

The text of the script to use for the voice message.

*/ inline void SetBody(const char* value) { m_bodyHasBeenSet = true; m_body.assign(value); } /** *

The text of the script to use for the voice message.

*/ inline VoiceMessage& WithBody(const Aws::String& value) { SetBody(value); return *this;} /** *

The text of the script to use for the voice message.

*/ inline VoiceMessage& WithBody(Aws::String&& value) { SetBody(std::move(value)); return *this;} /** *

The text of the script to use for the voice message.

*/ inline VoiceMessage& WithBody(const char* value) { SetBody(value); return *this;} /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline const Aws::String& GetLanguageCode() const{ return m_languageCode; } /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline bool LanguageCodeHasBeenSet() const { return m_languageCodeHasBeenSet; } /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline void SetLanguageCode(const Aws::String& value) { m_languageCodeHasBeenSet = true; m_languageCode = value; } /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline void SetLanguageCode(Aws::String&& value) { m_languageCodeHasBeenSet = true; m_languageCode = std::move(value); } /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline void SetLanguageCode(const char* value) { m_languageCodeHasBeenSet = true; m_languageCode.assign(value); } /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithLanguageCode(const Aws::String& value) { SetLanguageCode(value); return *this;} /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithLanguageCode(Aws::String&& value) { SetLanguageCode(std::move(value)); return *this;} /** *

The code for the language to use when synthesizing the text of the message * script. For a list of supported languages and the code for each one, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithLanguageCode(const char* value) { SetLanguageCode(value); return *this;} /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline const Aws::String& GetOriginationNumber() const{ return m_originationNumber; } /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline bool OriginationNumberHasBeenSet() const { return m_originationNumberHasBeenSet; } /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline void SetOriginationNumber(const Aws::String& value) { m_originationNumberHasBeenSet = true; m_originationNumber = value; } /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline void SetOriginationNumber(Aws::String&& value) { m_originationNumberHasBeenSet = true; m_originationNumber = std::move(value); } /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline void SetOriginationNumber(const char* value) { m_originationNumberHasBeenSet = true; m_originationNumber.assign(value); } /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline VoiceMessage& WithOriginationNumber(const Aws::String& value) { SetOriginationNumber(value); return *this;} /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline VoiceMessage& WithOriginationNumber(Aws::String&& value) { SetOriginationNumber(std::move(value)); return *this;} /** *

The long code to send the voice message from. This value should be one of the * dedicated long codes that's assigned to your AWS account. Although it isn't * required, we recommend that you specify the long code in E.164 format, for * example +12065550100, to ensure prompt and accurate delivery of the message.

*/ inline VoiceMessage& WithOriginationNumber(const char* value) { SetOriginationNumber(value); return *this;} /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline const Aws::Map>& GetSubstitutions() const{ return m_substitutions; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline bool SubstitutionsHasBeenSet() const { return m_substitutionsHasBeenSet; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline void SetSubstitutions(const Aws::Map>& value) { m_substitutionsHasBeenSet = true; m_substitutions = value; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline void SetSubstitutions(Aws::Map>&& value) { m_substitutionsHasBeenSet = true; m_substitutions = std::move(value); } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& WithSubstitutions(const Aws::Map>& value) { SetSubstitutions(value); return *this;} /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& WithSubstitutions(Aws::Map>&& value) { SetSubstitutions(std::move(value)); return *this;} /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(const Aws::String& key, const Aws::Vector& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, value); return *this; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(Aws::String&& key, const Aws::Vector& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(std::move(key), value); return *this; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(const Aws::String& key, Aws::Vector&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, std::move(value)); return *this; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(Aws::String&& key, Aws::Vector&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(std::move(key), std::move(value)); return *this; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(const char* key, Aws::Vector&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, std::move(value)); return *this; } /** *

The default message variables to use in the voice message. You can override * the default variables with individual address variables.

*/ inline VoiceMessage& AddSubstitutions(const char* key, const Aws::Vector& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, value); return *this; } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline const Aws::String& GetVoiceId() const{ return m_voiceId; } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline bool VoiceIdHasBeenSet() const { return m_voiceIdHasBeenSet; } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline void SetVoiceId(const Aws::String& value) { m_voiceIdHasBeenSet = true; m_voiceId = value; } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline void SetVoiceId(Aws::String&& value) { m_voiceIdHasBeenSet = true; m_voiceId = std::move(value); } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline void SetVoiceId(const char* value) { m_voiceIdHasBeenSet = true; m_voiceId.assign(value); } /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithVoiceId(const Aws::String& value) { SetVoiceId(value); return *this;} /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithVoiceId(Aws::String&& value) { SetVoiceId(std::move(value)); return *this;} /** *

The name of the voice to use when delivering the message. For a list of * supported voices, see the Amazon Polly * Developer Guide.

*/ inline VoiceMessage& WithVoiceId(const char* value) { SetVoiceId(value); return *this;} private: Aws::String m_body; bool m_bodyHasBeenSet = false; Aws::String m_languageCode; bool m_languageCodeHasBeenSet = false; Aws::String m_originationNumber; bool m_originationNumberHasBeenSet = false; Aws::Map> m_substitutions; bool m_substitutionsHasBeenSet = false; Aws::String m_voiceId; bool m_voiceIdHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws