/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies the default settings and content for a push notification that's
* sent directly to an endpoint.See Also:
AWS
* API Reference
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default action to occur if a recipient taps the push notification. Valid * values are:
OPEN_APP - Your app opens or it becomes the * foreground app if it was sent to the background. This is the default * action.
DEEP_LINK - Your app opens and displays a designated * user interface in the app. This setting uses the deep-linking features of the * iOS and Android platforms.
URL - The default mobile browser on * the recipient's device opens and loads the web page at a URL that you * specify.
The default body of the notification message.
*/ inline const Aws::String& GetBody() const{ return m_body; } /** *The default body of the notification message.
*/ inline bool BodyHasBeenSet() const { return m_bodyHasBeenSet; } /** *The default body of the notification message.
*/ inline void SetBody(const Aws::String& value) { m_bodyHasBeenSet = true; m_body = value; } /** *The default body of the notification message.
*/ inline void SetBody(Aws::String&& value) { m_bodyHasBeenSet = true; m_body = std::move(value); } /** *The default body of the notification message.
*/ inline void SetBody(const char* value) { m_bodyHasBeenSet = true; m_body.assign(value); } /** *The default body of the notification message.
*/ inline DefaultPushNotificationMessage& WithBody(const Aws::String& value) { SetBody(value); return *this;} /** *The default body of the notification message.
*/ inline DefaultPushNotificationMessage& WithBody(Aws::String&& value) { SetBody(std::move(value)); return *this;} /** *The default body of the notification message.
*/ inline DefaultPushNotificationMessage& WithBody(const char* value) { SetBody(value); return *this;} /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline const Aws::MapThe JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline bool DataHasBeenSet() const { return m_dataHasBeenSet; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline void SetData(const Aws::MapThe JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline void SetData(Aws::MapThe JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& WithData(const Aws::MapThe JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& WithData(Aws::MapThe JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(const Aws::String& key, const Aws::String& value) { m_dataHasBeenSet = true; m_data.emplace(key, value); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(Aws::String&& key, const Aws::String& value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), value); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(const Aws::String& key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(key, std::move(value)); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(Aws::String&& key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), std::move(value)); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(const char* key, Aws::String&& value) { m_dataHasBeenSet = true; m_data.emplace(key, std::move(value)); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(Aws::String&& key, const char* value) { m_dataHasBeenSet = true; m_data.emplace(std::move(key), value); return *this; } /** *The JSON data payload to use for the default push notification, if the * notification is a silent push notification. This payload is added to the * data.pinpoint.jsonBody object of the notification.
*/ inline DefaultPushNotificationMessage& AddData(const char* key, const char* value) { m_dataHasBeenSet = true; m_data.emplace(key, value); return *this; } /** *Specifies whether the default notification is a silent push notification, * which is a push notification that doesn't display on a recipient's device. * Silent push notifications can be used for cases such as updating an app's * configuration or delivering messages to an in-app notification center.
*/ inline bool GetSilentPush() const{ return m_silentPush; } /** *Specifies whether the default notification is a silent push notification, * which is a push notification that doesn't display on a recipient's device. * Silent push notifications can be used for cases such as updating an app's * configuration or delivering messages to an in-app notification center.
*/ inline bool SilentPushHasBeenSet() const { return m_silentPushHasBeenSet; } /** *Specifies whether the default notification is a silent push notification, * which is a push notification that doesn't display on a recipient's device. * Silent push notifications can be used for cases such as updating an app's * configuration or delivering messages to an in-app notification center.
*/ inline void SetSilentPush(bool value) { m_silentPushHasBeenSet = true; m_silentPush = value; } /** *Specifies whether the default notification is a silent push notification, * which is a push notification that doesn't display on a recipient's device. * Silent push notifications can be used for cases such as updating an app's * configuration or delivering messages to an in-app notification center.
*/ inline DefaultPushNotificationMessage& WithSilentPush(bool value) { SetSilentPush(value); return *this;} /** *The default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline const Aws::MapThe default message variables to use in the notification 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 notification message. You can * override the default variables with individual address variables.
*/ inline void SetSubstitutions(const Aws::MapThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline void SetSubstitutions(Aws::MapThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& WithSubstitutions(const Aws::MapThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& WithSubstitutions(Aws::MapThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(const Aws::String& key, const Aws::VectorThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(Aws::String&& key, const Aws::VectorThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(const Aws::String& key, Aws::VectorThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(Aws::String&& key, Aws::VectorThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(const char* key, Aws::VectorThe default message variables to use in the notification message. You can * override the default variables with individual address variables.
*/ inline DefaultPushNotificationMessage& AddSubstitutions(const char* key, const Aws::VectorThe default title to display above the notification message on a recipient's * device.
*/ inline const Aws::String& GetTitle() const{ return m_title; } /** *The default title to display above the notification message on a recipient's * device.
*/ inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; } /** *The default title to display above the notification message on a recipient's * device.
*/ inline void SetTitle(const Aws::String& value) { m_titleHasBeenSet = true; m_title = value; } /** *The default title to display above the notification message on a recipient's * device.
*/ inline void SetTitle(Aws::String&& value) { m_titleHasBeenSet = true; m_title = std::move(value); } /** *The default title to display above the notification message on a recipient's * device.
*/ inline void SetTitle(const char* value) { m_titleHasBeenSet = true; m_title.assign(value); } /** *The default title to display above the notification message on a recipient's * device.
*/ inline DefaultPushNotificationMessage& WithTitle(const Aws::String& value) { SetTitle(value); return *this;} /** *The default title to display above the notification message on a recipient's * device.
*/ inline DefaultPushNotificationMessage& WithTitle(Aws::String&& value) { SetTitle(std::move(value)); return *this;} /** *The default title to display above the notification message on a recipient's * device.
*/ inline DefaultPushNotificationMessage& WithTitle(const char* value) { SetTitle(value); return *this;} /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline const Aws::String& GetUrl() const{ return m_url; } /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline DefaultPushNotificationMessage& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline DefaultPushNotificationMessage& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} /** *The default URL to open in a recipient's default mobile browser, if a * recipient taps the push notification and the value of the Action property is * URL.
*/ inline DefaultPushNotificationMessage& WithUrl(const char* value) { SetUrl(value); return *this;} private: Action m_action; bool m_actionHasBeenSet = false; Aws::String m_body; bool m_bodyHasBeenSet = false; Aws::Map