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

Specifies the sender ID and message type for an SMS message that's sent to * participants in a journey.

See Also:

AWS * API Reference

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

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline const MessageType& GetMessageType() const{ return m_messageType; } /** *

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline bool MessageTypeHasBeenSet() const { return m_messageTypeHasBeenSet; } /** *

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline void SetMessageType(const MessageType& value) { m_messageTypeHasBeenSet = true; m_messageType = value; } /** *

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline void SetMessageType(MessageType&& value) { m_messageTypeHasBeenSet = true; m_messageType = std::move(value); } /** *

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline JourneySMSMessage& WithMessageType(const MessageType& value) { SetMessageType(value); return *this;} /** *

The SMS message type. Valid values are TRANSACTIONAL (for messages that are * critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for * messsages that aren't critical or time-sensitive, such as marketing * messages).

*/ inline JourneySMSMessage& WithMessageType(MessageType&& value) { SetMessageType(std::move(value)); return *this;} /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline const Aws::String& GetSenderId() const{ return m_senderId; } /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline bool SenderIdHasBeenSet() const { return m_senderIdHasBeenSet; } /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline void SetSenderId(const Aws::String& value) { m_senderIdHasBeenSet = true; m_senderId = value; } /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline void SetSenderId(Aws::String&& value) { m_senderIdHasBeenSet = true; m_senderId = std::move(value); } /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline void SetSenderId(const char* value) { m_senderIdHasBeenSet = true; m_senderId.assign(value); } /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline JourneySMSMessage& WithSenderId(const Aws::String& value) { SetSenderId(value); return *this;} /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline JourneySMSMessage& WithSenderId(Aws::String&& value) { SetSenderId(std::move(value)); return *this;} /** *

The sender ID to display as the sender of the message on a recipient's * device. Support for sender IDs varies by country or region. For more * information, see Supported * Countries and Regions in the Amazon Pinpoint User Guide.

*/ inline JourneySMSMessage& WithSenderId(const char* value) { SetSenderId(value); return *this;} private: MessageType m_messageType; bool m_messageTypeHasBeenSet; Aws::String m_senderId; bool m_senderIdHasBeenSet; }; } // namespace Model } // namespace Pinpoint } // namespace Aws