1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/pinpoint/Pinpoint_EXPORTS.h> 8 #include <aws/pinpoint/model/Message.h> 9 #include <aws/pinpoint/model/CampaignCustomMessage.h> 10 #include <aws/pinpoint/model/CampaignEmailMessage.h> 11 #include <aws/pinpoint/model/CampaignSmsMessage.h> 12 #include <aws/pinpoint/model/CampaignInAppMessage.h> 13 #include <utility> 14 15 namespace Aws 16 { 17 namespace Utils 18 { 19 namespace Json 20 { 21 class JsonValue; 22 class JsonView; 23 } // namespace Json 24 } // namespace Utils 25 namespace Pinpoint 26 { 27 namespace Model 28 { 29 30 /** 31 * <p>Specifies the message configuration settings for a campaign.</p><p><h3>See 32 * Also:</h3> <a 33 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/MessageConfiguration">AWS 34 * API Reference</a></p> 35 */ 36 class AWS_PINPOINT_API MessageConfiguration 37 { 38 public: 39 MessageConfiguration(); 40 MessageConfiguration(Aws::Utils::Json::JsonView jsonValue); 41 MessageConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); 42 Aws::Utils::Json::JsonValue Jsonize() const; 43 44 45 /** 46 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 47 * channel. If specified, this message overrides the default message.</p> 48 */ GetADMMessage()49 inline const Message& GetADMMessage() const{ return m_aDMMessage; } 50 51 /** 52 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 53 * channel. If specified, this message overrides the default message.</p> 54 */ ADMMessageHasBeenSet()55 inline bool ADMMessageHasBeenSet() const { return m_aDMMessageHasBeenSet; } 56 57 /** 58 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 59 * channel. If specified, this message overrides the default message.</p> 60 */ SetADMMessage(const Message & value)61 inline void SetADMMessage(const Message& value) { m_aDMMessageHasBeenSet = true; m_aDMMessage = value; } 62 63 /** 64 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 65 * channel. If specified, this message overrides the default message.</p> 66 */ SetADMMessage(Message && value)67 inline void SetADMMessage(Message&& value) { m_aDMMessageHasBeenSet = true; m_aDMMessage = std::move(value); } 68 69 /** 70 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 71 * channel. If specified, this message overrides the default message.</p> 72 */ WithADMMessage(const Message & value)73 inline MessageConfiguration& WithADMMessage(const Message& value) { SetADMMessage(value); return *this;} 74 75 /** 76 * <p>The message that the campaign sends through the ADM (Amazon Device Messaging) 77 * channel. If specified, this message overrides the default message.</p> 78 */ WithADMMessage(Message && value)79 inline MessageConfiguration& WithADMMessage(Message&& value) { SetADMMessage(std::move(value)); return *this;} 80 81 82 /** 83 * <p>The message that the campaign sends through the APNs (Apple Push Notification 84 * service) channel. If specified, this message overrides the default message.</p> 85 */ GetAPNSMessage()86 inline const Message& GetAPNSMessage() const{ return m_aPNSMessage; } 87 88 /** 89 * <p>The message that the campaign sends through the APNs (Apple Push Notification 90 * service) channel. If specified, this message overrides the default message.</p> 91 */ APNSMessageHasBeenSet()92 inline bool APNSMessageHasBeenSet() const { return m_aPNSMessageHasBeenSet; } 93 94 /** 95 * <p>The message that the campaign sends through the APNs (Apple Push Notification 96 * service) channel. If specified, this message overrides the default message.</p> 97 */ SetAPNSMessage(const Message & value)98 inline void SetAPNSMessage(const Message& value) { m_aPNSMessageHasBeenSet = true; m_aPNSMessage = value; } 99 100 /** 101 * <p>The message that the campaign sends through the APNs (Apple Push Notification 102 * service) channel. If specified, this message overrides the default message.</p> 103 */ SetAPNSMessage(Message && value)104 inline void SetAPNSMessage(Message&& value) { m_aPNSMessageHasBeenSet = true; m_aPNSMessage = std::move(value); } 105 106 /** 107 * <p>The message that the campaign sends through the APNs (Apple Push Notification 108 * service) channel. If specified, this message overrides the default message.</p> 109 */ WithAPNSMessage(const Message & value)110 inline MessageConfiguration& WithAPNSMessage(const Message& value) { SetAPNSMessage(value); return *this;} 111 112 /** 113 * <p>The message that the campaign sends through the APNs (Apple Push Notification 114 * service) channel. If specified, this message overrides the default message.</p> 115 */ WithAPNSMessage(Message && value)116 inline MessageConfiguration& WithAPNSMessage(Message&& value) { SetAPNSMessage(std::move(value)); return *this;} 117 118 119 /** 120 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 121 * channel. If specified, this message overrides the default message.</p> 122 */ GetBaiduMessage()123 inline const Message& GetBaiduMessage() const{ return m_baiduMessage; } 124 125 /** 126 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 127 * channel. If specified, this message overrides the default message.</p> 128 */ BaiduMessageHasBeenSet()129 inline bool BaiduMessageHasBeenSet() const { return m_baiduMessageHasBeenSet; } 130 131 /** 132 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 133 * channel. If specified, this message overrides the default message.</p> 134 */ SetBaiduMessage(const Message & value)135 inline void SetBaiduMessage(const Message& value) { m_baiduMessageHasBeenSet = true; m_baiduMessage = value; } 136 137 /** 138 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 139 * channel. If specified, this message overrides the default message.</p> 140 */ SetBaiduMessage(Message && value)141 inline void SetBaiduMessage(Message&& value) { m_baiduMessageHasBeenSet = true; m_baiduMessage = std::move(value); } 142 143 /** 144 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 145 * channel. If specified, this message overrides the default message.</p> 146 */ WithBaiduMessage(const Message & value)147 inline MessageConfiguration& WithBaiduMessage(const Message& value) { SetBaiduMessage(value); return *this;} 148 149 /** 150 * <p>The message that the campaign sends through the Baidu (Baidu Cloud Push) 151 * channel. If specified, this message overrides the default message.</p> 152 */ WithBaiduMessage(Message && value)153 inline MessageConfiguration& WithBaiduMessage(Message&& value) { SetBaiduMessage(std::move(value)); return *this;} 154 155 156 /** 157 * <p>The message that the campaign sends through a custom channel, as specified by 158 * the delivery configuration (CustomDeliveryConfiguration) settings for the 159 * campaign. If specified, this message overrides the default message.</p> 160 */ GetCustomMessage()161 inline const CampaignCustomMessage& GetCustomMessage() const{ return m_customMessage; } 162 163 /** 164 * <p>The message that the campaign sends through a custom channel, as specified by 165 * the delivery configuration (CustomDeliveryConfiguration) settings for the 166 * campaign. If specified, this message overrides the default message.</p> 167 */ CustomMessageHasBeenSet()168 inline bool CustomMessageHasBeenSet() const { return m_customMessageHasBeenSet; } 169 170 /** 171 * <p>The message that the campaign sends through a custom channel, as specified by 172 * the delivery configuration (CustomDeliveryConfiguration) settings for the 173 * campaign. If specified, this message overrides the default message.</p> 174 */ SetCustomMessage(const CampaignCustomMessage & value)175 inline void SetCustomMessage(const CampaignCustomMessage& value) { m_customMessageHasBeenSet = true; m_customMessage = value; } 176 177 /** 178 * <p>The message that the campaign sends through a custom channel, as specified by 179 * the delivery configuration (CustomDeliveryConfiguration) settings for the 180 * campaign. If specified, this message overrides the default message.</p> 181 */ SetCustomMessage(CampaignCustomMessage && value)182 inline void SetCustomMessage(CampaignCustomMessage&& value) { m_customMessageHasBeenSet = true; m_customMessage = std::move(value); } 183 184 /** 185 * <p>The message that the campaign sends through a custom channel, as specified by 186 * the delivery configuration (CustomDeliveryConfiguration) settings for the 187 * campaign. If specified, this message overrides the default message.</p> 188 */ WithCustomMessage(const CampaignCustomMessage & value)189 inline MessageConfiguration& WithCustomMessage(const CampaignCustomMessage& value) { SetCustomMessage(value); return *this;} 190 191 /** 192 * <p>The message that the campaign sends through a custom channel, as specified by 193 * the delivery configuration (CustomDeliveryConfiguration) settings for the 194 * campaign. If specified, this message overrides the default message.</p> 195 */ WithCustomMessage(CampaignCustomMessage && value)196 inline MessageConfiguration& WithCustomMessage(CampaignCustomMessage&& value) { SetCustomMessage(std::move(value)); return *this;} 197 198 199 /** 200 * <p>The default message that the campaign sends through all the channels that are 201 * configured for the campaign.</p> 202 */ GetDefaultMessage()203 inline const Message& GetDefaultMessage() const{ return m_defaultMessage; } 204 205 /** 206 * <p>The default message that the campaign sends through all the channels that are 207 * configured for the campaign.</p> 208 */ DefaultMessageHasBeenSet()209 inline bool DefaultMessageHasBeenSet() const { return m_defaultMessageHasBeenSet; } 210 211 /** 212 * <p>The default message that the campaign sends through all the channels that are 213 * configured for the campaign.</p> 214 */ SetDefaultMessage(const Message & value)215 inline void SetDefaultMessage(const Message& value) { m_defaultMessageHasBeenSet = true; m_defaultMessage = value; } 216 217 /** 218 * <p>The default message that the campaign sends through all the channels that are 219 * configured for the campaign.</p> 220 */ SetDefaultMessage(Message && value)221 inline void SetDefaultMessage(Message&& value) { m_defaultMessageHasBeenSet = true; m_defaultMessage = std::move(value); } 222 223 /** 224 * <p>The default message that the campaign sends through all the channels that are 225 * configured for the campaign.</p> 226 */ WithDefaultMessage(const Message & value)227 inline MessageConfiguration& WithDefaultMessage(const Message& value) { SetDefaultMessage(value); return *this;} 228 229 /** 230 * <p>The default message that the campaign sends through all the channels that are 231 * configured for the campaign.</p> 232 */ WithDefaultMessage(Message && value)233 inline MessageConfiguration& WithDefaultMessage(Message&& value) { SetDefaultMessage(std::move(value)); return *this;} 234 235 236 /** 237 * <p>The message that the campaign sends through the email channel. If specified, 238 * this message overrides the default message.</p> 239 */ GetEmailMessage()240 inline const CampaignEmailMessage& GetEmailMessage() const{ return m_emailMessage; } 241 242 /** 243 * <p>The message that the campaign sends through the email channel. If specified, 244 * this message overrides the default message.</p> 245 */ EmailMessageHasBeenSet()246 inline bool EmailMessageHasBeenSet() const { return m_emailMessageHasBeenSet; } 247 248 /** 249 * <p>The message that the campaign sends through the email channel. If specified, 250 * this message overrides the default message.</p> 251 */ SetEmailMessage(const CampaignEmailMessage & value)252 inline void SetEmailMessage(const CampaignEmailMessage& value) { m_emailMessageHasBeenSet = true; m_emailMessage = value; } 253 254 /** 255 * <p>The message that the campaign sends through the email channel. If specified, 256 * this message overrides the default message.</p> 257 */ SetEmailMessage(CampaignEmailMessage && value)258 inline void SetEmailMessage(CampaignEmailMessage&& value) { m_emailMessageHasBeenSet = true; m_emailMessage = std::move(value); } 259 260 /** 261 * <p>The message that the campaign sends through the email channel. If specified, 262 * this message overrides the default message.</p> 263 */ WithEmailMessage(const CampaignEmailMessage & value)264 inline MessageConfiguration& WithEmailMessage(const CampaignEmailMessage& value) { SetEmailMessage(value); return *this;} 265 266 /** 267 * <p>The message that the campaign sends through the email channel. If specified, 268 * this message overrides the default message.</p> 269 */ WithEmailMessage(CampaignEmailMessage && value)270 inline MessageConfiguration& WithEmailMessage(CampaignEmailMessage&& value) { SetEmailMessage(std::move(value)); return *this;} 271 272 273 /** 274 * <p>The message that the campaign sends through the GCM channel, which enables 275 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 276 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 277 * message overrides the default message.</p> 278 */ GetGCMMessage()279 inline const Message& GetGCMMessage() const{ return m_gCMMessage; } 280 281 /** 282 * <p>The message that the campaign sends through the GCM channel, which enables 283 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 284 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 285 * message overrides the default message.</p> 286 */ GCMMessageHasBeenSet()287 inline bool GCMMessageHasBeenSet() const { return m_gCMMessageHasBeenSet; } 288 289 /** 290 * <p>The message that the campaign sends through the GCM channel, which enables 291 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 292 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 293 * message overrides the default message.</p> 294 */ SetGCMMessage(const Message & value)295 inline void SetGCMMessage(const Message& value) { m_gCMMessageHasBeenSet = true; m_gCMMessage = value; } 296 297 /** 298 * <p>The message that the campaign sends through the GCM channel, which enables 299 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 300 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 301 * message overrides the default message.</p> 302 */ SetGCMMessage(Message && value)303 inline void SetGCMMessage(Message&& value) { m_gCMMessageHasBeenSet = true; m_gCMMessage = std::move(value); } 304 305 /** 306 * <p>The message that the campaign sends through the GCM channel, which enables 307 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 308 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 309 * message overrides the default message.</p> 310 */ WithGCMMessage(const Message & value)311 inline MessageConfiguration& WithGCMMessage(const Message& value) { SetGCMMessage(value); return *this;} 312 313 /** 314 * <p>The message that the campaign sends through the GCM channel, which enables 315 * Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging 316 * (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this 317 * message overrides the default message.</p> 318 */ WithGCMMessage(Message && value)319 inline MessageConfiguration& WithGCMMessage(Message&& value) { SetGCMMessage(std::move(value)); return *this;} 320 321 322 /** 323 * <p>The message that the campaign sends through the SMS channel. If specified, 324 * this message overrides the default message.</p> 325 */ GetSMSMessage()326 inline const CampaignSmsMessage& GetSMSMessage() const{ return m_sMSMessage; } 327 328 /** 329 * <p>The message that the campaign sends through the SMS channel. If specified, 330 * this message overrides the default message.</p> 331 */ SMSMessageHasBeenSet()332 inline bool SMSMessageHasBeenSet() const { return m_sMSMessageHasBeenSet; } 333 334 /** 335 * <p>The message that the campaign sends through the SMS channel. If specified, 336 * this message overrides the default message.</p> 337 */ SetSMSMessage(const CampaignSmsMessage & value)338 inline void SetSMSMessage(const CampaignSmsMessage& value) { m_sMSMessageHasBeenSet = true; m_sMSMessage = value; } 339 340 /** 341 * <p>The message that the campaign sends through the SMS channel. If specified, 342 * this message overrides the default message.</p> 343 */ SetSMSMessage(CampaignSmsMessage && value)344 inline void SetSMSMessage(CampaignSmsMessage&& value) { m_sMSMessageHasBeenSet = true; m_sMSMessage = std::move(value); } 345 346 /** 347 * <p>The message that the campaign sends through the SMS channel. If specified, 348 * this message overrides the default message.</p> 349 */ WithSMSMessage(const CampaignSmsMessage & value)350 inline MessageConfiguration& WithSMSMessage(const CampaignSmsMessage& value) { SetSMSMessage(value); return *this;} 351 352 /** 353 * <p>The message that the campaign sends through the SMS channel. If specified, 354 * this message overrides the default message.</p> 355 */ WithSMSMessage(CampaignSmsMessage && value)356 inline MessageConfiguration& WithSMSMessage(CampaignSmsMessage&& value) { SetSMSMessage(std::move(value)); return *this;} 357 358 359 /** 360 * <p>The in-app message configuration.</p> 361 */ GetInAppMessage()362 inline const CampaignInAppMessage& GetInAppMessage() const{ return m_inAppMessage; } 363 364 /** 365 * <p>The in-app message configuration.</p> 366 */ InAppMessageHasBeenSet()367 inline bool InAppMessageHasBeenSet() const { return m_inAppMessageHasBeenSet; } 368 369 /** 370 * <p>The in-app message configuration.</p> 371 */ SetInAppMessage(const CampaignInAppMessage & value)372 inline void SetInAppMessage(const CampaignInAppMessage& value) { m_inAppMessageHasBeenSet = true; m_inAppMessage = value; } 373 374 /** 375 * <p>The in-app message configuration.</p> 376 */ SetInAppMessage(CampaignInAppMessage && value)377 inline void SetInAppMessage(CampaignInAppMessage&& value) { m_inAppMessageHasBeenSet = true; m_inAppMessage = std::move(value); } 378 379 /** 380 * <p>The in-app message configuration.</p> 381 */ WithInAppMessage(const CampaignInAppMessage & value)382 inline MessageConfiguration& WithInAppMessage(const CampaignInAppMessage& value) { SetInAppMessage(value); return *this;} 383 384 /** 385 * <p>The in-app message configuration.</p> 386 */ WithInAppMessage(CampaignInAppMessage && value)387 inline MessageConfiguration& WithInAppMessage(CampaignInAppMessage&& value) { SetInAppMessage(std::move(value)); return *this;} 388 389 private: 390 391 Message m_aDMMessage; 392 bool m_aDMMessageHasBeenSet; 393 394 Message m_aPNSMessage; 395 bool m_aPNSMessageHasBeenSet; 396 397 Message m_baiduMessage; 398 bool m_baiduMessageHasBeenSet; 399 400 CampaignCustomMessage m_customMessage; 401 bool m_customMessageHasBeenSet; 402 403 Message m_defaultMessage; 404 bool m_defaultMessageHasBeenSet; 405 406 CampaignEmailMessage m_emailMessage; 407 bool m_emailMessageHasBeenSet; 408 409 Message m_gCMMessage; 410 bool m_gCMMessageHasBeenSet; 411 412 CampaignSmsMessage m_sMSMessage; 413 bool m_sMSMessageHasBeenSet; 414 415 CampaignInAppMessage m_inAppMessage; 416 bool m_inAppMessageHasBeenSet; 417 }; 418 419 } // namespace Model 420 } // namespace Pinpoint 421 } // namespace Aws 422