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/Action.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <aws/core/utils/memory/stl/AWSMap.h> 11 #include <aws/core/utils/memory/stl/AWSVector.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace Pinpoint 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>Specifies the settings for a one-time message that's sent directly to an 31 * endpoint through the ADM (Amazon Device Messaging) channel.</p><p><h3>See 32 * Also:</h3> <a 33 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/ADMMessage">AWS 34 * API Reference</a></p> 35 */ 36 class AWS_PINPOINT_API ADMMessage 37 { 38 public: 39 ADMMessage(); 40 ADMMessage(Aws::Utils::Json::JsonView jsonValue); 41 ADMMessage& operator=(Aws::Utils::Json::JsonView jsonValue); 42 Aws::Utils::Json::JsonValue Jsonize() const; 43 44 45 /** 46 * <p>The action to occur if the recipient taps the push notification. Valid values 47 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 48 * if it was sent to the background. This is the default action.</p></li> 49 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 50 * the app. This action uses the deep-linking features of the Android 51 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 52 * device opens and loads the web page at a URL that you specify.</p></li></ul> 53 */ GetAction()54 inline const Action& GetAction() const{ return m_action; } 55 56 /** 57 * <p>The action to occur if the recipient taps the push notification. Valid values 58 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 59 * if it was sent to the background. This is the default action.</p></li> 60 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 61 * the app. This action uses the deep-linking features of the Android 62 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 63 * device opens and loads the web page at a URL that you specify.</p></li></ul> 64 */ ActionHasBeenSet()65 inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } 66 67 /** 68 * <p>The action to occur if the recipient taps the push notification. Valid values 69 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 70 * if it was sent to the background. This is the default action.</p></li> 71 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 72 * the app. This action uses the deep-linking features of the Android 73 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 74 * device opens and loads the web page at a URL that you specify.</p></li></ul> 75 */ SetAction(const Action & value)76 inline void SetAction(const Action& value) { m_actionHasBeenSet = true; m_action = value; } 77 78 /** 79 * <p>The action to occur if the recipient taps the push notification. Valid values 80 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 81 * if it was sent to the background. This is the default action.</p></li> 82 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 83 * the app. This action uses the deep-linking features of the Android 84 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 85 * device opens and loads the web page at a URL that you specify.</p></li></ul> 86 */ SetAction(Action && value)87 inline void SetAction(Action&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } 88 89 /** 90 * <p>The action to occur if the recipient taps the push notification. Valid values 91 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 92 * if it was sent to the background. This is the default action.</p></li> 93 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 94 * the app. This action uses the deep-linking features of the Android 95 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 96 * device opens and loads the web page at a URL that you specify.</p></li></ul> 97 */ WithAction(const Action & value)98 inline ADMMessage& WithAction(const Action& value) { SetAction(value); return *this;} 99 100 /** 101 * <p>The action to occur if the recipient taps the push notification. Valid values 102 * are:</p> <ul><li><p>OPEN_APP - Your app opens or it becomes the foreground app 103 * if it was sent to the background. This is the default action.</p></li> 104 * <li><p>DEEP_LINK - Your app opens and displays a designated user interface in 105 * the app. This action uses the deep-linking features of the Android 106 * platform.</p></li> <li><p>URL - The default mobile browser on the recipient's 107 * device opens and loads the web page at a URL that you specify.</p></li></ul> 108 */ WithAction(Action && value)109 inline ADMMessage& WithAction(Action&& value) { SetAction(std::move(value)); return *this;} 110 111 112 /** 113 * <p>The body of the notification message.</p> 114 */ GetBody()115 inline const Aws::String& GetBody() const{ return m_body; } 116 117 /** 118 * <p>The body of the notification message.</p> 119 */ BodyHasBeenSet()120 inline bool BodyHasBeenSet() const { return m_bodyHasBeenSet; } 121 122 /** 123 * <p>The body of the notification message.</p> 124 */ SetBody(const Aws::String & value)125 inline void SetBody(const Aws::String& value) { m_bodyHasBeenSet = true; m_body = value; } 126 127 /** 128 * <p>The body of the notification message.</p> 129 */ SetBody(Aws::String && value)130 inline void SetBody(Aws::String&& value) { m_bodyHasBeenSet = true; m_body = std::move(value); } 131 132 /** 133 * <p>The body of the notification message.</p> 134 */ SetBody(const char * value)135 inline void SetBody(const char* value) { m_bodyHasBeenSet = true; m_body.assign(value); } 136 137 /** 138 * <p>The body of the notification message.</p> 139 */ WithBody(const Aws::String & value)140 inline ADMMessage& WithBody(const Aws::String& value) { SetBody(value); return *this;} 141 142 /** 143 * <p>The body of the notification message.</p> 144 */ WithBody(Aws::String && value)145 inline ADMMessage& WithBody(Aws::String&& value) { SetBody(std::move(value)); return *this;} 146 147 /** 148 * <p>The body of the notification message.</p> 149 */ WithBody(const char * value)150 inline ADMMessage& WithBody(const char* value) { SetBody(value); return *this;} 151 152 153 /** 154 * <p>An arbitrary string that indicates that multiple messages are logically the 155 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 156 * messages in favor of this message.</p> 157 */ GetConsolidationKey()158 inline const Aws::String& GetConsolidationKey() const{ return m_consolidationKey; } 159 160 /** 161 * <p>An arbitrary string that indicates that multiple messages are logically the 162 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 163 * messages in favor of this message.</p> 164 */ ConsolidationKeyHasBeenSet()165 inline bool ConsolidationKeyHasBeenSet() const { return m_consolidationKeyHasBeenSet; } 166 167 /** 168 * <p>An arbitrary string that indicates that multiple messages are logically the 169 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 170 * messages in favor of this message.</p> 171 */ SetConsolidationKey(const Aws::String & value)172 inline void SetConsolidationKey(const Aws::String& value) { m_consolidationKeyHasBeenSet = true; m_consolidationKey = value; } 173 174 /** 175 * <p>An arbitrary string that indicates that multiple messages are logically the 176 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 177 * messages in favor of this message.</p> 178 */ SetConsolidationKey(Aws::String && value)179 inline void SetConsolidationKey(Aws::String&& value) { m_consolidationKeyHasBeenSet = true; m_consolidationKey = std::move(value); } 180 181 /** 182 * <p>An arbitrary string that indicates that multiple messages are logically the 183 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 184 * messages in favor of this message.</p> 185 */ SetConsolidationKey(const char * value)186 inline void SetConsolidationKey(const char* value) { m_consolidationKeyHasBeenSet = true; m_consolidationKey.assign(value); } 187 188 /** 189 * <p>An arbitrary string that indicates that multiple messages are logically the 190 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 191 * messages in favor of this message.</p> 192 */ WithConsolidationKey(const Aws::String & value)193 inline ADMMessage& WithConsolidationKey(const Aws::String& value) { SetConsolidationKey(value); return *this;} 194 195 /** 196 * <p>An arbitrary string that indicates that multiple messages are logically the 197 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 198 * messages in favor of this message.</p> 199 */ WithConsolidationKey(Aws::String && value)200 inline ADMMessage& WithConsolidationKey(Aws::String&& value) { SetConsolidationKey(std::move(value)); return *this;} 201 202 /** 203 * <p>An arbitrary string that indicates that multiple messages are logically the 204 * same and that Amazon Device Messaging (ADM) can drop previously enqueued 205 * messages in favor of this message.</p> 206 */ WithConsolidationKey(const char * value)207 inline ADMMessage& WithConsolidationKey(const char* value) { SetConsolidationKey(value); return *this;} 208 209 210 /** 211 * <p>The JSON data payload to use for the push notification, if the notification 212 * is a silent push notification. This payload is added to the 213 * data.pinpoint.jsonBody object of the notification.</p> 214 */ GetData()215 inline const Aws::Map<Aws::String, Aws::String>& GetData() const{ return m_data; } 216 217 /** 218 * <p>The JSON data payload to use for the push notification, if the notification 219 * is a silent push notification. This payload is added to the 220 * data.pinpoint.jsonBody object of the notification.</p> 221 */ DataHasBeenSet()222 inline bool DataHasBeenSet() const { return m_dataHasBeenSet; } 223 224 /** 225 * <p>The JSON data payload to use for the push notification, if the notification 226 * is a silent push notification. This payload is added to the 227 * data.pinpoint.jsonBody object of the notification.</p> 228 */ SetData(const Aws::Map<Aws::String,Aws::String> & value)229 inline void SetData(const Aws::Map<Aws::String, Aws::String>& value) { m_dataHasBeenSet = true; m_data = value; } 230 231 /** 232 * <p>The JSON data payload to use for the push notification, if the notification 233 * is a silent push notification. This payload is added to the 234 * data.pinpoint.jsonBody object of the notification.</p> 235 */ SetData(Aws::Map<Aws::String,Aws::String> && value)236 inline void SetData(Aws::Map<Aws::String, Aws::String>&& value) { m_dataHasBeenSet = true; m_data = std::move(value); } 237 238 /** 239 * <p>The JSON data payload to use for the push notification, if the notification 240 * is a silent push notification. This payload is added to the 241 * data.pinpoint.jsonBody object of the notification.</p> 242 */ WithData(const Aws::Map<Aws::String,Aws::String> & value)243 inline ADMMessage& WithData(const Aws::Map<Aws::String, Aws::String>& value) { SetData(value); return *this;} 244 245 /** 246 * <p>The JSON data payload to use for the push notification, if the notification 247 * is a silent push notification. This payload is added to the 248 * data.pinpoint.jsonBody object of the notification.</p> 249 */ WithData(Aws::Map<Aws::String,Aws::String> && value)250 inline ADMMessage& WithData(Aws::Map<Aws::String, Aws::String>&& value) { SetData(std::move(value)); return *this;} 251 252 /** 253 * <p>The JSON data payload to use for the push notification, if the notification 254 * is a silent push notification. This payload is added to the 255 * data.pinpoint.jsonBody object of the notification.</p> 256 */ AddData(const Aws::String & key,const Aws::String & value)257 inline ADMMessage& AddData(const Aws::String& key, const Aws::String& value) { m_dataHasBeenSet = true; m_data.emplace(key, value); return *this; } 258 259 /** 260 * <p>The JSON data payload to use for the push notification, if the notification 261 * is a silent push notification. This payload is added to the 262 * data.pinpoint.jsonBody object of the notification.</p> 263 */ AddData(Aws::String && key,const Aws::String & value)264 inline ADMMessage& AddData(Aws::String&& key, const Aws::String& value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), value); return *this; } 265 266 /** 267 * <p>The JSON data payload to use for the push notification, if the notification 268 * is a silent push notification. This payload is added to the 269 * data.pinpoint.jsonBody object of the notification.</p> 270 */ AddData(const Aws::String & key,Aws::String && value)271 inline ADMMessage& AddData(const Aws::String& key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(key, std::move(value)); return *this; } 272 273 /** 274 * <p>The JSON data payload to use for the push notification, if the notification 275 * is a silent push notification. This payload is added to the 276 * data.pinpoint.jsonBody object of the notification.</p> 277 */ AddData(Aws::String && key,Aws::String && value)278 inline ADMMessage& AddData(Aws::String&& key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), std::move(value)); return *this; } 279 280 /** 281 * <p>The JSON data payload to use for the push notification, if the notification 282 * is a silent push notification. This payload is added to the 283 * data.pinpoint.jsonBody object of the notification.</p> 284 */ AddData(const char * key,Aws::String && value)285 inline ADMMessage& AddData(const char* key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(key, std::move(value)); return *this; } 286 287 /** 288 * <p>The JSON data payload to use for the push notification, if the notification 289 * is a silent push notification. This payload is added to the 290 * data.pinpoint.jsonBody object of the notification.</p> 291 */ AddData(Aws::String && key,const char * value)292 inline ADMMessage& AddData(Aws::String&& key, const char* value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), value); return *this; } 293 294 /** 295 * <p>The JSON data payload to use for the push notification, if the notification 296 * is a silent push notification. This payload is added to the 297 * data.pinpoint.jsonBody object of the notification.</p> 298 */ AddData(const char * key,const char * value)299 inline ADMMessage& AddData(const char* key, const char* value) { m_dataHasBeenSet = true; m_data.emplace(key, value); return *this; } 300 301 302 /** 303 * <p>The amount of time, in seconds, that ADM should store the message if the 304 * recipient's device is offline. Amazon Pinpoint specifies this value in the 305 * expiresAfter parameter when it sends the notification message to ADM.</p> 306 */ GetExpiresAfter()307 inline const Aws::String& GetExpiresAfter() const{ return m_expiresAfter; } 308 309 /** 310 * <p>The amount of time, in seconds, that ADM should store the message if the 311 * recipient's device is offline. Amazon Pinpoint specifies this value in the 312 * expiresAfter parameter when it sends the notification message to ADM.</p> 313 */ ExpiresAfterHasBeenSet()314 inline bool ExpiresAfterHasBeenSet() const { return m_expiresAfterHasBeenSet; } 315 316 /** 317 * <p>The amount of time, in seconds, that ADM should store the message if the 318 * recipient's device is offline. Amazon Pinpoint specifies this value in the 319 * expiresAfter parameter when it sends the notification message to ADM.</p> 320 */ SetExpiresAfter(const Aws::String & value)321 inline void SetExpiresAfter(const Aws::String& value) { m_expiresAfterHasBeenSet = true; m_expiresAfter = value; } 322 323 /** 324 * <p>The amount of time, in seconds, that ADM should store the message if the 325 * recipient's device is offline. Amazon Pinpoint specifies this value in the 326 * expiresAfter parameter when it sends the notification message to ADM.</p> 327 */ SetExpiresAfter(Aws::String && value)328 inline void SetExpiresAfter(Aws::String&& value) { m_expiresAfterHasBeenSet = true; m_expiresAfter = std::move(value); } 329 330 /** 331 * <p>The amount of time, in seconds, that ADM should store the message if the 332 * recipient's device is offline. Amazon Pinpoint specifies this value in the 333 * expiresAfter parameter when it sends the notification message to ADM.</p> 334 */ SetExpiresAfter(const char * value)335 inline void SetExpiresAfter(const char* value) { m_expiresAfterHasBeenSet = true; m_expiresAfter.assign(value); } 336 337 /** 338 * <p>The amount of time, in seconds, that ADM should store the message if the 339 * recipient's device is offline. Amazon Pinpoint specifies this value in the 340 * expiresAfter parameter when it sends the notification message to ADM.</p> 341 */ WithExpiresAfter(const Aws::String & value)342 inline ADMMessage& WithExpiresAfter(const Aws::String& value) { SetExpiresAfter(value); return *this;} 343 344 /** 345 * <p>The amount of time, in seconds, that ADM should store the message if the 346 * recipient's device is offline. Amazon Pinpoint specifies this value in the 347 * expiresAfter parameter when it sends the notification message to ADM.</p> 348 */ WithExpiresAfter(Aws::String && value)349 inline ADMMessage& WithExpiresAfter(Aws::String&& value) { SetExpiresAfter(std::move(value)); return *this;} 350 351 /** 352 * <p>The amount of time, in seconds, that ADM should store the message if the 353 * recipient's device is offline. Amazon Pinpoint specifies this value in the 354 * expiresAfter parameter when it sends the notification message to ADM.</p> 355 */ WithExpiresAfter(const char * value)356 inline ADMMessage& WithExpiresAfter(const char* value) { SetExpiresAfter(value); return *this;} 357 358 359 /** 360 * <p>The icon image name of the asset saved in your app.</p> 361 */ GetIconReference()362 inline const Aws::String& GetIconReference() const{ return m_iconReference; } 363 364 /** 365 * <p>The icon image name of the asset saved in your app.</p> 366 */ IconReferenceHasBeenSet()367 inline bool IconReferenceHasBeenSet() const { return m_iconReferenceHasBeenSet; } 368 369 /** 370 * <p>The icon image name of the asset saved in your app.</p> 371 */ SetIconReference(const Aws::String & value)372 inline void SetIconReference(const Aws::String& value) { m_iconReferenceHasBeenSet = true; m_iconReference = value; } 373 374 /** 375 * <p>The icon image name of the asset saved in your app.</p> 376 */ SetIconReference(Aws::String && value)377 inline void SetIconReference(Aws::String&& value) { m_iconReferenceHasBeenSet = true; m_iconReference = std::move(value); } 378 379 /** 380 * <p>The icon image name of the asset saved in your app.</p> 381 */ SetIconReference(const char * value)382 inline void SetIconReference(const char* value) { m_iconReferenceHasBeenSet = true; m_iconReference.assign(value); } 383 384 /** 385 * <p>The icon image name of the asset saved in your app.</p> 386 */ WithIconReference(const Aws::String & value)387 inline ADMMessage& WithIconReference(const Aws::String& value) { SetIconReference(value); return *this;} 388 389 /** 390 * <p>The icon image name of the asset saved in your app.</p> 391 */ WithIconReference(Aws::String && value)392 inline ADMMessage& WithIconReference(Aws::String&& value) { SetIconReference(std::move(value)); return *this;} 393 394 /** 395 * <p>The icon image name of the asset saved in your app.</p> 396 */ WithIconReference(const char * value)397 inline ADMMessage& WithIconReference(const char* value) { SetIconReference(value); return *this;} 398 399 400 /** 401 * <p>The URL of the large icon image to display in the content view of the push 402 * notification.</p> 403 */ GetImageIconUrl()404 inline const Aws::String& GetImageIconUrl() const{ return m_imageIconUrl; } 405 406 /** 407 * <p>The URL of the large icon image to display in the content view of the push 408 * notification.</p> 409 */ ImageIconUrlHasBeenSet()410 inline bool ImageIconUrlHasBeenSet() const { return m_imageIconUrlHasBeenSet; } 411 412 /** 413 * <p>The URL of the large icon image to display in the content view of the push 414 * notification.</p> 415 */ SetImageIconUrl(const Aws::String & value)416 inline void SetImageIconUrl(const Aws::String& value) { m_imageIconUrlHasBeenSet = true; m_imageIconUrl = value; } 417 418 /** 419 * <p>The URL of the large icon image to display in the content view of the push 420 * notification.</p> 421 */ SetImageIconUrl(Aws::String && value)422 inline void SetImageIconUrl(Aws::String&& value) { m_imageIconUrlHasBeenSet = true; m_imageIconUrl = std::move(value); } 423 424 /** 425 * <p>The URL of the large icon image to display in the content view of the push 426 * notification.</p> 427 */ SetImageIconUrl(const char * value)428 inline void SetImageIconUrl(const char* value) { m_imageIconUrlHasBeenSet = true; m_imageIconUrl.assign(value); } 429 430 /** 431 * <p>The URL of the large icon image to display in the content view of the push 432 * notification.</p> 433 */ WithImageIconUrl(const Aws::String & value)434 inline ADMMessage& WithImageIconUrl(const Aws::String& value) { SetImageIconUrl(value); return *this;} 435 436 /** 437 * <p>The URL of the large icon image to display in the content view of the push 438 * notification.</p> 439 */ WithImageIconUrl(Aws::String && value)440 inline ADMMessage& WithImageIconUrl(Aws::String&& value) { SetImageIconUrl(std::move(value)); return *this;} 441 442 /** 443 * <p>The URL of the large icon image to display in the content view of the push 444 * notification.</p> 445 */ WithImageIconUrl(const char * value)446 inline ADMMessage& WithImageIconUrl(const char* value) { SetImageIconUrl(value); return *this;} 447 448 449 /** 450 * <p>The URL of an image to display in the push notification.</p> 451 */ GetImageUrl()452 inline const Aws::String& GetImageUrl() const{ return m_imageUrl; } 453 454 /** 455 * <p>The URL of an image to display in the push notification.</p> 456 */ ImageUrlHasBeenSet()457 inline bool ImageUrlHasBeenSet() const { return m_imageUrlHasBeenSet; } 458 459 /** 460 * <p>The URL of an image to display in the push notification.</p> 461 */ SetImageUrl(const Aws::String & value)462 inline void SetImageUrl(const Aws::String& value) { m_imageUrlHasBeenSet = true; m_imageUrl = value; } 463 464 /** 465 * <p>The URL of an image to display in the push notification.</p> 466 */ SetImageUrl(Aws::String && value)467 inline void SetImageUrl(Aws::String&& value) { m_imageUrlHasBeenSet = true; m_imageUrl = std::move(value); } 468 469 /** 470 * <p>The URL of an image to display in the push notification.</p> 471 */ SetImageUrl(const char * value)472 inline void SetImageUrl(const char* value) { m_imageUrlHasBeenSet = true; m_imageUrl.assign(value); } 473 474 /** 475 * <p>The URL of an image to display in the push notification.</p> 476 */ WithImageUrl(const Aws::String & value)477 inline ADMMessage& WithImageUrl(const Aws::String& value) { SetImageUrl(value); return *this;} 478 479 /** 480 * <p>The URL of an image to display in the push notification.</p> 481 */ WithImageUrl(Aws::String && value)482 inline ADMMessage& WithImageUrl(Aws::String&& value) { SetImageUrl(std::move(value)); return *this;} 483 484 /** 485 * <p>The URL of an image to display in the push notification.</p> 486 */ WithImageUrl(const char * value)487 inline ADMMessage& WithImageUrl(const char* value) { SetImageUrl(value); return *this;} 488 489 490 /** 491 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 492 * ADM uses the MD5 value to verify the integrity of the data.</p> 493 */ GetMD5()494 inline const Aws::String& GetMD5() const{ return m_mD5; } 495 496 /** 497 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 498 * ADM uses the MD5 value to verify the integrity of the data.</p> 499 */ MD5HasBeenSet()500 inline bool MD5HasBeenSet() const { return m_mD5HasBeenSet; } 501 502 /** 503 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 504 * ADM uses the MD5 value to verify the integrity of the data.</p> 505 */ SetMD5(const Aws::String & value)506 inline void SetMD5(const Aws::String& value) { m_mD5HasBeenSet = true; m_mD5 = value; } 507 508 /** 509 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 510 * ADM uses the MD5 value to verify the integrity of the data.</p> 511 */ SetMD5(Aws::String && value)512 inline void SetMD5(Aws::String&& value) { m_mD5HasBeenSet = true; m_mD5 = std::move(value); } 513 514 /** 515 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 516 * ADM uses the MD5 value to verify the integrity of the data.</p> 517 */ SetMD5(const char * value)518 inline void SetMD5(const char* value) { m_mD5HasBeenSet = true; m_mD5.assign(value); } 519 520 /** 521 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 522 * ADM uses the MD5 value to verify the integrity of the data.</p> 523 */ WithMD5(const Aws::String & value)524 inline ADMMessage& WithMD5(const Aws::String& value) { SetMD5(value); return *this;} 525 526 /** 527 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 528 * ADM uses the MD5 value to verify the integrity of the data.</p> 529 */ WithMD5(Aws::String && value)530 inline ADMMessage& WithMD5(Aws::String&& value) { SetMD5(std::move(value)); return *this;} 531 532 /** 533 * <p>The base64-encoded, MD5 checksum of the value specified by the Data property. 534 * ADM uses the MD5 value to verify the integrity of the data.</p> 535 */ WithMD5(const char * value)536 inline ADMMessage& WithMD5(const char* value) { SetMD5(value); return *this;} 537 538 539 /** 540 * <p>The raw, JSON-formatted string to use as the payload for the notification 541 * message. If specified, this value overrides all other content for the 542 * message.</p> 543 */ GetRawContent()544 inline const Aws::String& GetRawContent() const{ return m_rawContent; } 545 546 /** 547 * <p>The raw, JSON-formatted string to use as the payload for the notification 548 * message. If specified, this value overrides all other content for the 549 * message.</p> 550 */ RawContentHasBeenSet()551 inline bool RawContentHasBeenSet() const { return m_rawContentHasBeenSet; } 552 553 /** 554 * <p>The raw, JSON-formatted string to use as the payload for the notification 555 * message. If specified, this value overrides all other content for the 556 * message.</p> 557 */ SetRawContent(const Aws::String & value)558 inline void SetRawContent(const Aws::String& value) { m_rawContentHasBeenSet = true; m_rawContent = value; } 559 560 /** 561 * <p>The raw, JSON-formatted string to use as the payload for the notification 562 * message. If specified, this value overrides all other content for the 563 * message.</p> 564 */ SetRawContent(Aws::String && value)565 inline void SetRawContent(Aws::String&& value) { m_rawContentHasBeenSet = true; m_rawContent = std::move(value); } 566 567 /** 568 * <p>The raw, JSON-formatted string to use as the payload for the notification 569 * message. If specified, this value overrides all other content for the 570 * message.</p> 571 */ SetRawContent(const char * value)572 inline void SetRawContent(const char* value) { m_rawContentHasBeenSet = true; m_rawContent.assign(value); } 573 574 /** 575 * <p>The raw, JSON-formatted string to use as the payload for the notification 576 * message. If specified, this value overrides all other content for the 577 * message.</p> 578 */ WithRawContent(const Aws::String & value)579 inline ADMMessage& WithRawContent(const Aws::String& value) { SetRawContent(value); return *this;} 580 581 /** 582 * <p>The raw, JSON-formatted string to use as the payload for the notification 583 * message. If specified, this value overrides all other content for the 584 * message.</p> 585 */ WithRawContent(Aws::String && value)586 inline ADMMessage& WithRawContent(Aws::String&& value) { SetRawContent(std::move(value)); return *this;} 587 588 /** 589 * <p>The raw, JSON-formatted string to use as the payload for the notification 590 * message. If specified, this value overrides all other content for the 591 * message.</p> 592 */ WithRawContent(const char * value)593 inline ADMMessage& WithRawContent(const char* value) { SetRawContent(value); return *this;} 594 595 596 /** 597 * <p>Specifies whether the notification is a silent push notification, which is a 598 * push notification that doesn't display on a recipient's device. Silent push 599 * notifications can be used for cases such as updating an app's configuration or 600 * supporting phone home functionality.</p> 601 */ GetSilentPush()602 inline bool GetSilentPush() const{ return m_silentPush; } 603 604 /** 605 * <p>Specifies whether the notification is a silent push notification, which is a 606 * push notification that doesn't display on a recipient's device. Silent push 607 * notifications can be used for cases such as updating an app's configuration or 608 * supporting phone home functionality.</p> 609 */ SilentPushHasBeenSet()610 inline bool SilentPushHasBeenSet() const { return m_silentPushHasBeenSet; } 611 612 /** 613 * <p>Specifies whether the notification is a silent push notification, which is a 614 * push notification that doesn't display on a recipient's device. Silent push 615 * notifications can be used for cases such as updating an app's configuration or 616 * supporting phone home functionality.</p> 617 */ SetSilentPush(bool value)618 inline void SetSilentPush(bool value) { m_silentPushHasBeenSet = true; m_silentPush = value; } 619 620 /** 621 * <p>Specifies whether the notification is a silent push notification, which is a 622 * push notification that doesn't display on a recipient's device. Silent push 623 * notifications can be used for cases such as updating an app's configuration or 624 * supporting phone home functionality.</p> 625 */ WithSilentPush(bool value)626 inline ADMMessage& WithSilentPush(bool value) { SetSilentPush(value); return *this;} 627 628 629 /** 630 * <p>The URL of the small icon image to display in the status bar and the content 631 * view of the push notification.</p> 632 */ GetSmallImageIconUrl()633 inline const Aws::String& GetSmallImageIconUrl() const{ return m_smallImageIconUrl; } 634 635 /** 636 * <p>The URL of the small icon image to display in the status bar and the content 637 * view of the push notification.</p> 638 */ SmallImageIconUrlHasBeenSet()639 inline bool SmallImageIconUrlHasBeenSet() const { return m_smallImageIconUrlHasBeenSet; } 640 641 /** 642 * <p>The URL of the small icon image to display in the status bar and the content 643 * view of the push notification.</p> 644 */ SetSmallImageIconUrl(const Aws::String & value)645 inline void SetSmallImageIconUrl(const Aws::String& value) { m_smallImageIconUrlHasBeenSet = true; m_smallImageIconUrl = value; } 646 647 /** 648 * <p>The URL of the small icon image to display in the status bar and the content 649 * view of the push notification.</p> 650 */ SetSmallImageIconUrl(Aws::String && value)651 inline void SetSmallImageIconUrl(Aws::String&& value) { m_smallImageIconUrlHasBeenSet = true; m_smallImageIconUrl = std::move(value); } 652 653 /** 654 * <p>The URL of the small icon image to display in the status bar and the content 655 * view of the push notification.</p> 656 */ SetSmallImageIconUrl(const char * value)657 inline void SetSmallImageIconUrl(const char* value) { m_smallImageIconUrlHasBeenSet = true; m_smallImageIconUrl.assign(value); } 658 659 /** 660 * <p>The URL of the small icon image to display in the status bar and the content 661 * view of the push notification.</p> 662 */ WithSmallImageIconUrl(const Aws::String & value)663 inline ADMMessage& WithSmallImageIconUrl(const Aws::String& value) { SetSmallImageIconUrl(value); return *this;} 664 665 /** 666 * <p>The URL of the small icon image to display in the status bar and the content 667 * view of the push notification.</p> 668 */ WithSmallImageIconUrl(Aws::String && value)669 inline ADMMessage& WithSmallImageIconUrl(Aws::String&& value) { SetSmallImageIconUrl(std::move(value)); return *this;} 670 671 /** 672 * <p>The URL of the small icon image to display in the status bar and the content 673 * view of the push notification.</p> 674 */ WithSmallImageIconUrl(const char * value)675 inline ADMMessage& WithSmallImageIconUrl(const char* value) { SetSmallImageIconUrl(value); return *this;} 676 677 678 /** 679 * <p>The sound to play when the recipient receives the push notification. You can 680 * use the default stream or specify the file name of a sound resource that's 681 * bundled in your app. On an Android platform, the sound file must reside in 682 * /res/raw/.</p> 683 */ GetSound()684 inline const Aws::String& GetSound() const{ return m_sound; } 685 686 /** 687 * <p>The sound to play when the recipient receives the push notification. You can 688 * use the default stream or specify the file name of a sound resource that's 689 * bundled in your app. On an Android platform, the sound file must reside in 690 * /res/raw/.</p> 691 */ SoundHasBeenSet()692 inline bool SoundHasBeenSet() const { return m_soundHasBeenSet; } 693 694 /** 695 * <p>The sound to play when the recipient receives the push notification. You can 696 * use the default stream or specify the file name of a sound resource that's 697 * bundled in your app. On an Android platform, the sound file must reside in 698 * /res/raw/.</p> 699 */ SetSound(const Aws::String & value)700 inline void SetSound(const Aws::String& value) { m_soundHasBeenSet = true; m_sound = value; } 701 702 /** 703 * <p>The sound to play when the recipient receives the push notification. You can 704 * use the default stream or specify the file name of a sound resource that's 705 * bundled in your app. On an Android platform, the sound file must reside in 706 * /res/raw/.</p> 707 */ SetSound(Aws::String && value)708 inline void SetSound(Aws::String&& value) { m_soundHasBeenSet = true; m_sound = std::move(value); } 709 710 /** 711 * <p>The sound to play when the recipient receives the push notification. You can 712 * use the default stream or specify the file name of a sound resource that's 713 * bundled in your app. On an Android platform, the sound file must reside in 714 * /res/raw/.</p> 715 */ SetSound(const char * value)716 inline void SetSound(const char* value) { m_soundHasBeenSet = true; m_sound.assign(value); } 717 718 /** 719 * <p>The sound to play when the recipient receives the push notification. You can 720 * use the default stream or specify the file name of a sound resource that's 721 * bundled in your app. On an Android platform, the sound file must reside in 722 * /res/raw/.</p> 723 */ WithSound(const Aws::String & value)724 inline ADMMessage& WithSound(const Aws::String& value) { SetSound(value); return *this;} 725 726 /** 727 * <p>The sound to play when the recipient receives the push notification. You can 728 * use the default stream or specify the file name of a sound resource that's 729 * bundled in your app. On an Android platform, the sound file must reside in 730 * /res/raw/.</p> 731 */ WithSound(Aws::String && value)732 inline ADMMessage& WithSound(Aws::String&& value) { SetSound(std::move(value)); return *this;} 733 734 /** 735 * <p>The sound to play when the recipient receives the push notification. You can 736 * use the default stream or specify the file name of a sound resource that's 737 * bundled in your app. On an Android platform, the sound file must reside in 738 * /res/raw/.</p> 739 */ WithSound(const char * value)740 inline ADMMessage& WithSound(const char* value) { SetSound(value); return *this;} 741 742 743 /** 744 * <p>The default message variables to use in the notification message. You can 745 * override the default variables with individual address variables.</p> 746 */ GetSubstitutions()747 inline const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& GetSubstitutions() const{ return m_substitutions; } 748 749 /** 750 * <p>The default message variables to use in the notification message. You can 751 * override the default variables with individual address variables.</p> 752 */ SubstitutionsHasBeenSet()753 inline bool SubstitutionsHasBeenSet() const { return m_substitutionsHasBeenSet; } 754 755 /** 756 * <p>The default message variables to use in the notification message. You can 757 * override the default variables with individual address variables.</p> 758 */ SetSubstitutions(const Aws::Map<Aws::String,Aws::Vector<Aws::String>> & value)759 inline void SetSubstitutions(const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& value) { m_substitutionsHasBeenSet = true; m_substitutions = value; } 760 761 /** 762 * <p>The default message variables to use in the notification message. You can 763 * override the default variables with individual address variables.</p> 764 */ SetSubstitutions(Aws::Map<Aws::String,Aws::Vector<Aws::String>> && value)765 inline void SetSubstitutions(Aws::Map<Aws::String, Aws::Vector<Aws::String>>&& value) { m_substitutionsHasBeenSet = true; m_substitutions = std::move(value); } 766 767 /** 768 * <p>The default message variables to use in the notification message. You can 769 * override the default variables with individual address variables.</p> 770 */ WithSubstitutions(const Aws::Map<Aws::String,Aws::Vector<Aws::String>> & value)771 inline ADMMessage& WithSubstitutions(const Aws::Map<Aws::String, Aws::Vector<Aws::String>>& value) { SetSubstitutions(value); return *this;} 772 773 /** 774 * <p>The default message variables to use in the notification message. You can 775 * override the default variables with individual address variables.</p> 776 */ WithSubstitutions(Aws::Map<Aws::String,Aws::Vector<Aws::String>> && value)777 inline ADMMessage& WithSubstitutions(Aws::Map<Aws::String, Aws::Vector<Aws::String>>&& value) { SetSubstitutions(std::move(value)); return *this;} 778 779 /** 780 * <p>The default message variables to use in the notification message. You can 781 * override the default variables with individual address variables.</p> 782 */ AddSubstitutions(const Aws::String & key,const Aws::Vector<Aws::String> & value)783 inline ADMMessage& AddSubstitutions(const Aws::String& key, const Aws::Vector<Aws::String>& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, value); return *this; } 784 785 /** 786 * <p>The default message variables to use in the notification message. You can 787 * override the default variables with individual address variables.</p> 788 */ AddSubstitutions(Aws::String && key,const Aws::Vector<Aws::String> & value)789 inline ADMMessage& AddSubstitutions(Aws::String&& key, const Aws::Vector<Aws::String>& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(std::move(key), value); return *this; } 790 791 /** 792 * <p>The default message variables to use in the notification message. You can 793 * override the default variables with individual address variables.</p> 794 */ AddSubstitutions(const Aws::String & key,Aws::Vector<Aws::String> && value)795 inline ADMMessage& AddSubstitutions(const Aws::String& key, Aws::Vector<Aws::String>&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, std::move(value)); return *this; } 796 797 /** 798 * <p>The default message variables to use in the notification message. You can 799 * override the default variables with individual address variables.</p> 800 */ AddSubstitutions(Aws::String && key,Aws::Vector<Aws::String> && value)801 inline ADMMessage& AddSubstitutions(Aws::String&& key, Aws::Vector<Aws::String>&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(std::move(key), std::move(value)); return *this; } 802 803 /** 804 * <p>The default message variables to use in the notification message. You can 805 * override the default variables with individual address variables.</p> 806 */ AddSubstitutions(const char * key,Aws::Vector<Aws::String> && value)807 inline ADMMessage& AddSubstitutions(const char* key, Aws::Vector<Aws::String>&& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, std::move(value)); return *this; } 808 809 /** 810 * <p>The default message variables to use in the notification message. You can 811 * override the default variables with individual address variables.</p> 812 */ AddSubstitutions(const char * key,const Aws::Vector<Aws::String> & value)813 inline ADMMessage& AddSubstitutions(const char* key, const Aws::Vector<Aws::String>& value) { m_substitutionsHasBeenSet = true; m_substitutions.emplace(key, value); return *this; } 814 815 816 /** 817 * <p>The title to display above the notification message on the recipient's 818 * device.</p> 819 */ GetTitle()820 inline const Aws::String& GetTitle() const{ return m_title; } 821 822 /** 823 * <p>The title to display above the notification message on the recipient's 824 * device.</p> 825 */ TitleHasBeenSet()826 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; } 827 828 /** 829 * <p>The title to display above the notification message on the recipient's 830 * device.</p> 831 */ SetTitle(const Aws::String & value)832 inline void SetTitle(const Aws::String& value) { m_titleHasBeenSet = true; m_title = value; } 833 834 /** 835 * <p>The title to display above the notification message on the recipient's 836 * device.</p> 837 */ SetTitle(Aws::String && value)838 inline void SetTitle(Aws::String&& value) { m_titleHasBeenSet = true; m_title = std::move(value); } 839 840 /** 841 * <p>The title to display above the notification message on the recipient's 842 * device.</p> 843 */ SetTitle(const char * value)844 inline void SetTitle(const char* value) { m_titleHasBeenSet = true; m_title.assign(value); } 845 846 /** 847 * <p>The title to display above the notification message on the recipient's 848 * device.</p> 849 */ WithTitle(const Aws::String & value)850 inline ADMMessage& WithTitle(const Aws::String& value) { SetTitle(value); return *this;} 851 852 /** 853 * <p>The title to display above the notification message on the recipient's 854 * device.</p> 855 */ WithTitle(Aws::String && value)856 inline ADMMessage& WithTitle(Aws::String&& value) { SetTitle(std::move(value)); return *this;} 857 858 /** 859 * <p>The title to display above the notification message on the recipient's 860 * device.</p> 861 */ WithTitle(const char * value)862 inline ADMMessage& WithTitle(const char* value) { SetTitle(value); return *this;} 863 864 865 /** 866 * <p>The URL to open in the recipient's default mobile browser, if a recipient 867 * taps the push notification and the value of the Action property is URL.</p> 868 */ GetUrl()869 inline const Aws::String& GetUrl() const{ return m_url; } 870 871 /** 872 * <p>The URL to open in the recipient's default mobile browser, if a recipient 873 * taps the push notification and the value of the Action property is URL.</p> 874 */ UrlHasBeenSet()875 inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } 876 877 /** 878 * <p>The URL to open in the recipient's default mobile browser, if a recipient 879 * taps the push notification and the value of the Action property is URL.</p> 880 */ SetUrl(const Aws::String & value)881 inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } 882 883 /** 884 * <p>The URL to open in the recipient's default mobile browser, if a recipient 885 * taps the push notification and the value of the Action property is URL.</p> 886 */ SetUrl(Aws::String && value)887 inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } 888 889 /** 890 * <p>The URL to open in the recipient's default mobile browser, if a recipient 891 * taps the push notification and the value of the Action property is URL.</p> 892 */ SetUrl(const char * value)893 inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } 894 895 /** 896 * <p>The URL to open in the recipient's default mobile browser, if a recipient 897 * taps the push notification and the value of the Action property is URL.</p> 898 */ WithUrl(const Aws::String & value)899 inline ADMMessage& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} 900 901 /** 902 * <p>The URL to open in the recipient's default mobile browser, if a recipient 903 * taps the push notification and the value of the Action property is URL.</p> 904 */ WithUrl(Aws::String && value)905 inline ADMMessage& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} 906 907 /** 908 * <p>The URL to open in the recipient's default mobile browser, if a recipient 909 * taps the push notification and the value of the Action property is URL.</p> 910 */ WithUrl(const char * value)911 inline ADMMessage& WithUrl(const char* value) { SetUrl(value); return *this;} 912 913 private: 914 915 Action m_action; 916 bool m_actionHasBeenSet; 917 918 Aws::String m_body; 919 bool m_bodyHasBeenSet; 920 921 Aws::String m_consolidationKey; 922 bool m_consolidationKeyHasBeenSet; 923 924 Aws::Map<Aws::String, Aws::String> m_data; 925 bool m_dataHasBeenSet; 926 927 Aws::String m_expiresAfter; 928 bool m_expiresAfterHasBeenSet; 929 930 Aws::String m_iconReference; 931 bool m_iconReferenceHasBeenSet; 932 933 Aws::String m_imageIconUrl; 934 bool m_imageIconUrlHasBeenSet; 935 936 Aws::String m_imageUrl; 937 bool m_imageUrlHasBeenSet; 938 939 Aws::String m_mD5; 940 bool m_mD5HasBeenSet; 941 942 Aws::String m_rawContent; 943 bool m_rawContentHasBeenSet; 944 945 bool m_silentPush; 946 bool m_silentPushHasBeenSet; 947 948 Aws::String m_smallImageIconUrl; 949 bool m_smallImageIconUrlHasBeenSet; 950 951 Aws::String m_sound; 952 bool m_soundHasBeenSet; 953 954 Aws::Map<Aws::String, Aws::Vector<Aws::String>> m_substitutions; 955 bool m_substitutionsHasBeenSet; 956 957 Aws::String m_title; 958 bool m_titleHasBeenSet; 959 960 Aws::String m_url; 961 bool m_urlHasBeenSet; 962 }; 963 964 } // namespace Model 965 } // namespace Pinpoint 966 } // namespace Aws 967