/* * 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 Amazon Pinpoint configuration settings for retrieving and processing recommendation /// data from a recommender model. /// public partial class UpdateRecommenderConfiguration { private Dictionary _attributes = new Dictionary(); private string _description; private string _name; private string _recommendationProviderIdType; private string _recommendationProviderRoleArn; private string _recommendationProviderUri; private string _recommendationsDisplayName; private int? _recommendationsPerMessage; private string _recommendationTransformerUri; /// /// Gets and sets the property Attributes. /// /// A map of key-value pairs that defines 1-10 custom endpoint or user attributes, depending /// on the value for the RecommendationProviderIdType property. Each of these attributes /// temporarily stores a recommended item that's retrieved from the recommender model /// and sent to an AWS Lambda function for additional processing. Each attribute can be /// used as a message variable in a message template. /// /// /// /// In the map, the key is the name of a custom attribute and the value is a custom display /// name for that attribute. The display name appears in the Attribute finder of /// the template editor on the Amazon Pinpoint console. The following restrictions apply /// to these names: /// ///
  • /// /// An attribute name must start with a letter or number and it can contain up to 50 characters. /// The characters can be letters, numbers, underscores (_), or hyphens (-). Attribute /// names are case sensitive and must be unique. /// ///
  • /// /// An attribute display name must start with a letter or number and it can contain up /// to 25 characters. The characters can be letters, numbers, spaces, underscores (_), /// or hyphens (-). /// ///
/// /// This object is required if the configuration invokes an AWS Lambda function (RecommendationTransformerUri) /// to process recommendation data. Otherwise, don't include this object in your request. /// ///
public Dictionary Attributes { get { return this._attributes; } set { this._attributes = value; } } // Check to see if Attributes property is set internal bool IsSetAttributes() { return this._attributes != null && this._attributes.Count > 0; } /// /// Gets and sets the property Description. /// /// A custom description of the configuration for the recommender model. The description /// can contain up to 128 characters. The characters can be letters, numbers, spaces, /// or the following symbols: _ ; () , ‐. /// /// public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property Name. /// /// A custom name of the configuration for the recommender model. The name must start /// with a letter or number and it can contain up to 128 characters. The characters can /// be letters, numbers, spaces, underscores (_), or hyphens (-). /// /// public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property RecommendationProviderIdType. /// /// The type of Amazon Pinpoint ID to associate with unique user IDs in the recommender /// model. This value enables the model to use attribute and event data that’s specific /// to a particular endpoint or user in an Amazon Pinpoint application. Valid values are: /// ///
  • /// /// PINPOINT_ENDPOINT_ID - Associate each user in the model with a particular endpoint /// in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. /// This is the default value. /// ///
  • /// /// PINPOINT_USER_ID - Associate each user in the model with a particular user and endpoint /// in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If /// you specify this value, an endpoint definition in Amazon Pinpoint has to specify both /// a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's /// endpoint. /// ///
///
public string RecommendationProviderIdType { get { return this._recommendationProviderIdType; } set { this._recommendationProviderIdType = value; } } // Check to see if RecommendationProviderIdType property is set internal bool IsSetRecommendationProviderIdType() { return this._recommendationProviderIdType != null; } /// /// Gets and sets the property RecommendationProviderRoleArn. /// /// The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role /// that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender /// model. /// /// [AWSProperty(Required=true)] public string RecommendationProviderRoleArn { get { return this._recommendationProviderRoleArn; } set { this._recommendationProviderRoleArn = value; } } // Check to see if RecommendationProviderRoleArn property is set internal bool IsSetRecommendationProviderRoleArn() { return this._recommendationProviderRoleArn != null; } /// /// Gets and sets the property RecommendationProviderUri. /// /// The Amazon Resource Name (ARN) of the recommender model to retrieve recommendation /// data from. This value must match the ARN of an Amazon Personalize campaign. /// /// [AWSProperty(Required=true)] public string RecommendationProviderUri { get { return this._recommendationProviderUri; } set { this._recommendationProviderUri = value; } } // Check to see if RecommendationProviderUri property is set internal bool IsSetRecommendationProviderUri() { return this._recommendationProviderUri != null; } /// /// Gets and sets the property RecommendationsDisplayName. /// /// A custom display name for the standard endpoint or user attribute (RecommendationItems) /// that temporarily stores recommended items for each endpoint or user, depending on /// the value for the RecommendationProviderIdType property. This value is required if /// the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) /// to perform additional processing of recommendation data. /// /// /// /// This name appears in the Attribute finder of the template editor on the Amazon /// Pinpoint console. The name can contain up to 25 characters. The characters can be /// letters, numbers, spaces, underscores (_), or hyphens (-). These restrictions don't /// apply to attribute values. /// /// public string RecommendationsDisplayName { get { return this._recommendationsDisplayName; } set { this._recommendationsDisplayName = value; } } // Check to see if RecommendationsDisplayName property is set internal bool IsSetRecommendationsDisplayName() { return this._recommendationsDisplayName != null; } /// /// Gets and sets the property RecommendationsPerMessage. /// /// The number of recommended items to retrieve from the model for each endpoint or user, /// depending on the value for the RecommendationProviderIdType property. This number /// determines how many recommended items are available for use in message variables. /// The minimum value is 1. The maximum value is 5. The default value is 5. /// /// /// /// To use multiple recommended items and custom attributes with message variables, you /// have to use an AWS Lambda function (RecommendationTransformerUri) to perform additional /// processing of recommendation data. /// /// public int RecommendationsPerMessage { get { return this._recommendationsPerMessage.GetValueOrDefault(); } set { this._recommendationsPerMessage = value; } } // Check to see if RecommendationsPerMessage property is set internal bool IsSetRecommendationsPerMessage() { return this._recommendationsPerMessage.HasValue; } /// /// Gets and sets the property RecommendationTransformerUri. /// /// The name or Amazon Resource Name (ARN) of the AWS Lambda function to invoke for additional /// processing of recommendation data that's retrieved from the recommender model. /// /// public string RecommendationTransformerUri { get { return this._recommendationTransformerUri; } set { this._recommendationTransformerUri = value; } } // Check to see if RecommendationTransformerUri property is set internal bool IsSetRecommendationTransformerUri() { return this._recommendationTransformerUri != null; } } }