/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the pinpoint-2016-12-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Pinpoint.Model { /// /// Specifies the configuration and other settings for a message. /// public partial class MessageRequest { private Dictionary _addresses = new Dictionary(); private Dictionary _context = new Dictionary(); private Dictionary _endpoints = new Dictionary(); private DirectMessageConfiguration _messageConfiguration; private TemplateConfiguration _templateConfiguration; private string _traceId; /// /// Gets and sets the property Addresses. /// /// A map of key-value pairs, where each key is an address and each value is an AddressConfiguration /// object. An address can be a push notification token, a phone number, or an email address. /// You can use an AddressConfiguration /// object to tailor the message for an address by specifying settings such as content /// overrides and message variables. /// /// public Dictionary Addresses { get { return this._addresses; } set { this._addresses = value; } } // Check to see if Addresses property is set internal bool IsSetAddresses() { return this._addresses != null && this._addresses.Count > 0; } /// /// Gets and sets the property Context. /// /// A map of custom attributes to attach to the message. For a push notification, this /// payload is added to the data.pinpoint object. For an email or text message, this payload /// is added to email/SMS delivery receipt event attributes. /// /// public Dictionary Context { get { return this._context; } set { this._context = value; } } // Check to see if Context property is set internal bool IsSetContext() { return this._context != null && this._context.Count > 0; } /// /// Gets and sets the property Endpoints. /// /// A map of key-value pairs, where each key is an endpoint ID and each value is an EndpointSendConfiguration /// object. You can use an EndpointSendConfiguration /// object to tailor the message for an endpoint by specifying settings such as content /// overrides and message variables. /// /// public Dictionary Endpoints { get { return this._endpoints; } set { this._endpoints = value; } } // Check to see if Endpoints property is set internal bool IsSetEndpoints() { return this._endpoints != null && this._endpoints.Count > 0; } /// /// Gets and sets the property MessageConfiguration. /// /// The settings and content for the default message and any default messages that you /// defined for specific channels. /// /// [AWSProperty(Required=true)] public DirectMessageConfiguration MessageConfiguration { get { return this._messageConfiguration; } set { this._messageConfiguration = value; } } // Check to see if MessageConfiguration property is set internal bool IsSetMessageConfiguration() { return this._messageConfiguration != null; } /// /// Gets and sets the property TemplateConfiguration. /// /// The message template to use for the message. /// /// public TemplateConfiguration TemplateConfiguration { get { return this._templateConfiguration; } set { this._templateConfiguration = value; } } // Check to see if TemplateConfiguration property is set internal bool IsSetTemplateConfiguration() { return this._templateConfiguration != null; } /// /// Gets and sets the property TraceId. /// /// The unique identifier for tracing the message. This identifier is visible to message /// recipients. /// /// public string TraceId { get { return this._traceId; } set { this._traceId = value; } } // Check to see if TraceId property is set internal bool IsSetTraceId() { return this._traceId != null; } } }