/** * 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 namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Pinpoint { namespace Model { /** *

Specifies the message configuration settings for a campaign.

See * Also:

AWS * API Reference

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

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline const Message& GetADMMessage() const{ return m_aDMMessage; } /** *

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline bool ADMMessageHasBeenSet() const { return m_aDMMessageHasBeenSet; } /** *

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline void SetADMMessage(const Message& value) { m_aDMMessageHasBeenSet = true; m_aDMMessage = value; } /** *

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline void SetADMMessage(Message&& value) { m_aDMMessageHasBeenSet = true; m_aDMMessage = std::move(value); } /** *

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithADMMessage(const Message& value) { SetADMMessage(value); return *this;} /** *

The message that the campaign sends through the ADM (Amazon Device Messaging) * channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithADMMessage(Message&& value) { SetADMMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline const Message& GetAPNSMessage() const{ return m_aPNSMessage; } /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline bool APNSMessageHasBeenSet() const { return m_aPNSMessageHasBeenSet; } /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline void SetAPNSMessage(const Message& value) { m_aPNSMessageHasBeenSet = true; m_aPNSMessage = value; } /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline void SetAPNSMessage(Message&& value) { m_aPNSMessageHasBeenSet = true; m_aPNSMessage = std::move(value); } /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithAPNSMessage(const Message& value) { SetAPNSMessage(value); return *this;} /** *

The message that the campaign sends through the APNs (Apple Push Notification * service) channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithAPNSMessage(Message&& value) { SetAPNSMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline const Message& GetBaiduMessage() const{ return m_baiduMessage; } /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline bool BaiduMessageHasBeenSet() const { return m_baiduMessageHasBeenSet; } /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline void SetBaiduMessage(const Message& value) { m_baiduMessageHasBeenSet = true; m_baiduMessage = value; } /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline void SetBaiduMessage(Message&& value) { m_baiduMessageHasBeenSet = true; m_baiduMessage = std::move(value); } /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithBaiduMessage(const Message& value) { SetBaiduMessage(value); return *this;} /** *

The message that the campaign sends through the Baidu (Baidu Cloud Push) * channel. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithBaiduMessage(Message&& value) { SetBaiduMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline const CampaignCustomMessage& GetCustomMessage() const{ return m_customMessage; } /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline bool CustomMessageHasBeenSet() const { return m_customMessageHasBeenSet; } /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline void SetCustomMessage(const CampaignCustomMessage& value) { m_customMessageHasBeenSet = true; m_customMessage = value; } /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline void SetCustomMessage(CampaignCustomMessage&& value) { m_customMessageHasBeenSet = true; m_customMessage = std::move(value); } /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithCustomMessage(const CampaignCustomMessage& value) { SetCustomMessage(value); return *this;} /** *

The message that the campaign sends through a custom channel, as specified by * the delivery configuration (CustomDeliveryConfiguration) settings for the * campaign. If specified, this message overrides the default message.

*/ inline MessageConfiguration& WithCustomMessage(CampaignCustomMessage&& value) { SetCustomMessage(std::move(value)); return *this;} /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline const Message& GetDefaultMessage() const{ return m_defaultMessage; } /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline bool DefaultMessageHasBeenSet() const { return m_defaultMessageHasBeenSet; } /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline void SetDefaultMessage(const Message& value) { m_defaultMessageHasBeenSet = true; m_defaultMessage = value; } /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline void SetDefaultMessage(Message&& value) { m_defaultMessageHasBeenSet = true; m_defaultMessage = std::move(value); } /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline MessageConfiguration& WithDefaultMessage(const Message& value) { SetDefaultMessage(value); return *this;} /** *

The default message that the campaign sends through all the channels that are * configured for the campaign.

*/ inline MessageConfiguration& WithDefaultMessage(Message&& value) { SetDefaultMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline const CampaignEmailMessage& GetEmailMessage() const{ return m_emailMessage; } /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline bool EmailMessageHasBeenSet() const { return m_emailMessageHasBeenSet; } /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline void SetEmailMessage(const CampaignEmailMessage& value) { m_emailMessageHasBeenSet = true; m_emailMessage = value; } /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline void SetEmailMessage(CampaignEmailMessage&& value) { m_emailMessageHasBeenSet = true; m_emailMessage = std::move(value); } /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline MessageConfiguration& WithEmailMessage(const CampaignEmailMessage& value) { SetEmailMessage(value); return *this;} /** *

The message that the campaign sends through the email channel. If specified, * this message overrides the default message.

*/ inline MessageConfiguration& WithEmailMessage(CampaignEmailMessage&& value) { SetEmailMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline const Message& GetGCMMessage() const{ return m_gCMMessage; } /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline bool GCMMessageHasBeenSet() const { return m_gCMMessageHasBeenSet; } /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline void SetGCMMessage(const Message& value) { m_gCMMessageHasBeenSet = true; m_gCMMessage = value; } /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline void SetGCMMessage(Message&& value) { m_gCMMessageHasBeenSet = true; m_gCMMessage = std::move(value); } /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline MessageConfiguration& WithGCMMessage(const Message& value) { SetGCMMessage(value); return *this;} /** *

The message that the campaign sends through the GCM channel, which enables * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this * message overrides the default message.

*/ inline MessageConfiguration& WithGCMMessage(Message&& value) { SetGCMMessage(std::move(value)); return *this;} /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline const CampaignSmsMessage& GetSMSMessage() const{ return m_sMSMessage; } /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline bool SMSMessageHasBeenSet() const { return m_sMSMessageHasBeenSet; } /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline void SetSMSMessage(const CampaignSmsMessage& value) { m_sMSMessageHasBeenSet = true; m_sMSMessage = value; } /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline void SetSMSMessage(CampaignSmsMessage&& value) { m_sMSMessageHasBeenSet = true; m_sMSMessage = std::move(value); } /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline MessageConfiguration& WithSMSMessage(const CampaignSmsMessage& value) { SetSMSMessage(value); return *this;} /** *

The message that the campaign sends through the SMS channel. If specified, * this message overrides the default message.

*/ inline MessageConfiguration& WithSMSMessage(CampaignSmsMessage&& value) { SetSMSMessage(std::move(value)); return *this;} /** *

The in-app message configuration.

*/ inline const CampaignInAppMessage& GetInAppMessage() const{ return m_inAppMessage; } /** *

The in-app message configuration.

*/ inline bool InAppMessageHasBeenSet() const { return m_inAppMessageHasBeenSet; } /** *

The in-app message configuration.

*/ inline void SetInAppMessage(const CampaignInAppMessage& value) { m_inAppMessageHasBeenSet = true; m_inAppMessage = value; } /** *

The in-app message configuration.

*/ inline void SetInAppMessage(CampaignInAppMessage&& value) { m_inAppMessageHasBeenSet = true; m_inAppMessage = std::move(value); } /** *

The in-app message configuration.

*/ inline MessageConfiguration& WithInAppMessage(const CampaignInAppMessage& value) { SetInAppMessage(value); return *this;} /** *

The in-app message configuration.

*/ inline MessageConfiguration& WithInAppMessage(CampaignInAppMessage&& value) { SetInAppMessage(std::move(value)); return *this;} private: Message m_aDMMessage; bool m_aDMMessageHasBeenSet = false; Message m_aPNSMessage; bool m_aPNSMessageHasBeenSet = false; Message m_baiduMessage; bool m_baiduMessageHasBeenSet = false; CampaignCustomMessage m_customMessage; bool m_customMessageHasBeenSet = false; Message m_defaultMessage; bool m_defaultMessageHasBeenSet = false; CampaignEmailMessage m_emailMessage; bool m_emailMessageHasBeenSet = false; Message m_gCMMessage; bool m_gCMMessageHasBeenSet = false; CampaignSmsMessage m_sMSMessage; bool m_sMSMessageHasBeenSet = false; CampaignInAppMessage m_inAppMessage; bool m_inAppMessageHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws