コード例 #1
0
        internal override void ProcessMappingsFromRowValues(RowValues values)
        {
            CustomAudience = new CustomAudience {
            };

            values.ConvertToEntity(this, Mappings);
        }
コード例 #2
0
        /// <summary>
        /// Runs the code example.
        /// </summary>
        /// <param name="client">The Google Ads client.</param>
        /// <param name="customerId">The Google Ads customer ID for which the conversion action is
        /// added.</param>
        public void Run(GoogleAdsClient client, long customerId)
        {
            // Get the CustomAudienceService client.
            CustomAudienceServiceClient customAudienceServiceClient =
                client.GetService(Services.V10.CustomAudienceService);

            // Create a custom audience.
            CustomAudience customAudience = new CustomAudience
            {
                Name        = $"Example CustomAudience #{ExampleUtilities.GetRandomString()}",
                Description = "Custom audiences who have searched specific terms on Google Search",
                // Match customers by what they searched on Google Search.
                // Note: "INTEREST" OR "PURCHASE_INTENT" is not allowed for the type field of newly
                // created custom audience. Use "AUTO" instead of these 2 options when creating a
                // new custom audience.
                Type   = CustomAudienceType.Search,
                Status = CustomAudienceStatus.Enabled,
            };

            // Add custom audience members to the custom audience. Customers that meet any of the
            // membership conditions will be reached.
            // Keywords or keyword phrases, which describe the customers' interests or search terms.
            customAudience.Members.Add(CreateCustomAudienceMember(CustomAudienceMemberType.Keyword,
                                                                  "mars cruise"));
            customAudience.Members.Add(CreateCustomAudienceMember(CustomAudienceMemberType.Keyword,
                                                                  "jupiter cruise"));
            // Website URLs that your customers might visit.
            customAudience.Members.Add(CreateCustomAudienceMember(CustomAudienceMemberType.Url,
                                                                  "http://www.example.com/locations/mars"));
            customAudience.Members.Add(CreateCustomAudienceMember(CustomAudienceMemberType.Url,
                                                                  "http://www.example.com/locations/jupiter"));
            // Package names of Android apps which customers might install.
            customAudience.Members.Add(CreateCustomAudienceMember(CustomAudienceMemberType.App,
                                                                  "com.google.android.apps.adwords"));

            // Create a custom audience operation.
            CustomAudienceOperation customAudienceOperation = new CustomAudienceOperation
            {
                Create = customAudience
            };

            try
            {
                // Add the custom audience and display the results.
                MutateCustomAudiencesResponse customAudiencesResponse = customAudienceServiceClient
                                                                        .MutateCustomAudiences(customerId.ToString(), new[] { customAudienceOperation });

                Console.WriteLine("New custom audience added with resource name: " +
                                  $"'{customAudiencesResponse.Results.First().ResourceName}'.");
            }
            catch (GoogleAdsException e)
            {
                Console.WriteLine("Failure:");
                Console.WriteLine($"Message: {e.Message}");
                Console.WriteLine($"Failure: {e.Failure}");
                Console.WriteLine($"Request ID: {e.RequestId}");
                throw;
            }
        }
 /// <summary>Snippet for GetCustomAudience</summary>
 /// <remarks>
 /// This snippet has been automatically generated for illustrative purposes only.
 /// It may require modifications to work in your environment.
 /// </remarks>
 public void GetCustomAudienceResourceNames()
 {
     // Create client
     CustomAudienceServiceClient customAudienceServiceClient = CustomAudienceServiceClient.Create();
     // Initialize request argument(s)
     CustomAudienceName resourceName = CustomAudienceName.FromCustomerCustomAudience("[CUSTOMER_ID]", "[CUSTOM_AUDIENCE_ID]");
     // Make the request
     CustomAudience response = customAudienceServiceClient.GetCustomAudience(resourceName);
 }
コード例 #4
0
 /// <summary>Snippet for GetCustomAudience</summary>
 /// <remarks>
 /// This snippet has been automatically generated for illustrative purposes only.
 /// It may require modifications to work in your environment.
 /// </remarks>
 public void GetCustomAudience()
 {
     // Create client
     CustomAudienceServiceClient customAudienceServiceClient = CustomAudienceServiceClient.Create();
     // Initialize request argument(s)
     string resourceName = "customers/[CUSTOMER_ID]/customAudiences/[CUSTOM_AUDIENCE_ID]";
     // Make the request
     CustomAudience response = customAudienceServiceClient.GetCustomAudience(resourceName);
 }
コード例 #5
0
        /// <summary>Snippet for GetCustomAudienceAsync</summary>
        /// <remarks>
        /// This snippet has been automatically generated for illustrative purposes only.
        /// It may require modifications to work in your environment.
        /// </remarks>
        public async Task GetCustomAudienceResourceNamesAsync()
        {
            // Create client
            CustomAudienceServiceClient customAudienceServiceClient = await CustomAudienceServiceClient.CreateAsync();

            // Initialize request argument(s)
            CustomAudienceName resourceName = CustomAudienceName.FromCustomerCustomAudience("[CUSTOMER_ID]", "[CUSTOM_AUDIENCE_ID]");
            // Make the request
            CustomAudience response = await customAudienceServiceClient.GetCustomAudienceAsync(resourceName);
        }
コード例 #6
0
        /// <summary>Snippet for GetCustomAudienceAsync</summary>
        public async Task GetCustomAudienceAsync()
        {
            // Snippet: GetCustomAudienceAsync(string, CallSettings)
            // Additional: GetCustomAudienceAsync(string, CancellationToken)
            // Create client
            CustomAudienceServiceClient customAudienceServiceClient = await CustomAudienceServiceClient.CreateAsync();

            // Initialize request argument(s)
            string resourceName = "customers/[CUSTOMER_ID]/customAudiences/[CUSTOM_AUDIENCE_ID]";
            // Make the request
            CustomAudience response = await customAudienceServiceClient.GetCustomAudienceAsync(resourceName);

            // End snippet
        }
コード例 #7
0
 /// <summary>Snippet for GetCustomAudience</summary>
 public void GetCustomAudienceRequestObject()
 {
     // Snippet: GetCustomAudience(GetCustomAudienceRequest, CallSettings)
     // Create client
     CustomAudienceServiceClient customAudienceServiceClient = CustomAudienceServiceClient.Create();
     // Initialize request argument(s)
     GetCustomAudienceRequest request = new GetCustomAudienceRequest
     {
         ResourceNameAsCustomAudienceName = CustomAudienceName.FromCustomerCustomAudience("[CUSTOMER_ID]", "[CUSTOM_AUDIENCE_ID]"),
     };
     // Make the request
     CustomAudience response = customAudienceServiceClient.GetCustomAudience(request);
     // End snippet
 }
コード例 #8
0
        /// <summary>Snippet for GetCustomAudienceAsync</summary>
        public async Task GetCustomAudienceResourceNamesAsync()
        {
            // Snippet: GetCustomAudienceAsync(CustomAudienceName, CallSettings)
            // Additional: GetCustomAudienceAsync(CustomAudienceName, CancellationToken)
            // Create client
            CustomAudienceServiceClient customAudienceServiceClient = await CustomAudienceServiceClient.CreateAsync();

            // Initialize request argument(s)
            CustomAudienceName resourceName = CustomAudienceName.FromCustomerCustomAudience("[CUSTOMER_ID]", "[CUSTOM_AUDIENCE_ID]");
            // Make the request
            CustomAudience response = await customAudienceServiceClient.GetCustomAudienceAsync(resourceName);

            // End snippet
        }
コード例 #9
0
        public void ShouldCreateRequestWithPassedNewCustomAudienceConfigurationAndSpecifiedPollingConfiguration()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var newCustomAudience     = new CustomAudience
            {
                Name        = Guid.NewGuid().ToString(),
                Description = Guid.NewGuid().ToString()
            };

            var configuration = new Configuration
            {
                PollingConfiguration = new PollingConfiguration
                {
                    DefaultTimeInterval  = TimeSpan.FromSeconds(15.0),
                    DefaultAttemptsCount = 4
                }
            };

            var expectedPollingRequestConfiguration = new PollingRequestConfiguration
            {
                Enabled  = true,
                Attempts = 6,
                Interval = TimeSpan.FromSeconds(10.0)
            };

            configurationProvider.GetConfiguration().Returns(configuration);

            // act
            var newCustomAudienceRequestBuilder = new NewCustomAudienceRequestBuilder(configurationProvider, newCustomAudience);

            var newCustomAudienceRequest = newCustomAudienceRequestBuilder
                                           .WithPolling(polling => polling
                                                        .Interval(expectedPollingRequestConfiguration.Interval)
                                                        .Attempts(expectedPollingRequestConfiguration.Attempts))
                                           .Create();

            // assert
            newCustomAudienceRequest.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.CustomAudience.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.CustomAudience.ShouldBeEquivalentTo(newCustomAudience);
            newCustomAudienceRequest.Configuration.Polling.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.Polling.ShouldBeEquivalentTo(expectedPollingRequestConfiguration);
        }
コード例 #10
0
        public void ShouldCreateExpectedConfiguration()
        {
            // arrange
            var expectedCustomAudience = new CustomAudience
            {
                Name        = Guid.NewGuid().ToString(),
                Description = Guid.NewGuid().ToString()
            };

            // act
            var newCustomAudienceBuilder = new NewCustomAudienceBuilder();

            var configuration = newCustomAudienceBuilder
                                .Name(expectedCustomAudience.Name)
                                .Description(expectedCustomAudience.Description)
                                .Create();

            // assert
            configuration.Should().NotBeNull();
            configuration.ShouldBeEquivalentTo(expectedCustomAudience);
        }
コード例 #11
0
        public void ShouldCreateRequestWithPassedNewCustomAudienceConfigurationAndDisabledPolling()
        {
            // arrange
            var configurationProvider = Substitute.For <IConfigurationProvider>();
            var newCustomAudience     = new CustomAudience
            {
                Name        = Guid.NewGuid().ToString(),
                Description = Guid.NewGuid().ToString()
            };

            // act
            var newCustomAudienceRequestBuilder = new NewCustomAudienceRequestBuilder(configurationProvider, newCustomAudience);

            var newCustomAudienceRequest = newCustomAudienceRequestBuilder.Create();

            // assert
            newCustomAudienceRequest.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.CustomAudience.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.CustomAudience.ShouldBeEquivalentTo(newCustomAudience);
            newCustomAudienceRequest.Configuration.Polling.Should().NotBeNull();
            newCustomAudienceRequest.Configuration.Polling.Enabled.Should().BeFalse();
        }
コード例 #12
0
 /// <summary>
 /// Initializes a new instance of the <see cref="NewCustomAudienceRequestBuilder"/> class.
 /// </summary>
 /// <param name="configurationProvider">The configuration provider.</param>
 /// <param name="customAudience">The custom audience.</param>
 public NewCustomAudienceRequestBuilder(IConfigurationProvider configurationProvider, CustomAudience customAudience) : base(configurationProvider)
 {
     this.Request = new NewCustomAudienceRequest
     {
         Configuration =
         {
             CustomAudience = customAudience
         }
     };
 }
コード例 #13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CustomAudienceResponse"/> class.
 /// </summary>
 /// <param name="data">The data.</param>
 public CustomAudienceResponse(CustomAudience data)
 {
     this.Data = data;
 }
コード例 #14
0
ファイル: BaseScenario.cs プロジェクト: Sitecore/KomfoSharp
 protected void ShowCustomAudience(CustomAudience customAudience)
 {
     this.Show("Custom Audience: {0}", customAudience);
 }