示例#1
0
        /// <summary>
        /// <para>Verifies an email address. This action causes a confirmation
        /// email message to be sent to the specified address.</para>
        /// </summary>
        ///
        /// <param name="verifyEmailAddressRequest">Container for the necessary
        ///           parameters to execute the VerifyEmailAddress service method on
        ///           AmazonSimpleEmailService.</param>
        ///
        public VerifyEmailAddressResponse VerifyEmailAddress(VerifyEmailAddressRequest verifyEmailAddressRequest)
        {
            IRequest <VerifyEmailAddressRequest> request  = new VerifyEmailAddressRequestMarshaller().Marshall(verifyEmailAddressRequest);
            VerifyEmailAddressResponse           response = Invoke <VerifyEmailAddressRequest, VerifyEmailAddressResponse> (request, this.signer, VerifyEmailAddressResponseUnmarshaller.GetInstance());

            return(response);
        }
示例#2
0
        /// <summary>
        /// <para>Verifies an email address. This action causes a confirmation email message to be sent to the specified address.</para>
        /// <para><b>IMPORTANT:</b>The VerifyEmailAddress action is deprecated as of the May 15, 2012 release of Domain Verification. The
        /// VerifyEmailIdentity action is now preferred.</para> <para>This action is throttled at one request per second.</para>
        /// </summary>
        ///
        /// <param name="verifyEmailAddressRequest">Container for the necessary parameters to execute the VerifyEmailAddress service method on
        /// AmazonSimpleEmailService.</param>
        /// <param name="cancellationToken">
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// </param>
        public Task <VerifyEmailAddressResponse> VerifyEmailAddressAsync(VerifyEmailAddressRequest verifyEmailAddressRequest, CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller   = new VerifyEmailAddressRequestMarshaller();
            var unmarshaller = VerifyEmailAddressResponseUnmarshaller.GetInstance();

            return(Invoke <IRequest, VerifyEmailAddressRequest, VerifyEmailAddressResponse>(verifyEmailAddressRequest, marshaller, unmarshaller, signer, cancellationToken));
        }
示例#3
0
        internal VerifyEmailAddressResponse VerifyEmailAddress(VerifyEmailAddressRequest request)
        {
            var marshaller   = new VerifyEmailAddressRequestMarshaller();
            var unmarshaller = VerifyEmailAddressResponseUnmarshaller.Instance;

            return(Invoke <VerifyEmailAddressRequest, VerifyEmailAddressResponse>(request, marshaller, unmarshaller));
        }
示例#4
0
        /// <summary>
        /// Initiates the asynchronous execution of the VerifyEmailAddress operation.
        /// </summary>
        ///
        /// <param name="request">Container for the necessary parameters to execute the VerifyEmailAddress operation.</param>
        /// <param name="cancellationToken">
        ///     A cancellation token that can be used by other objects or threads to receive notice of cancellation.
        /// </param>
        /// <returns>The task object representing the asynchronous operation.</returns>
        public Task <VerifyEmailAddressResponse> VerifyEmailAddressAsync(VerifyEmailAddressRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
        {
            var marshaller   = new VerifyEmailAddressRequestMarshaller();
            var unmarshaller = VerifyEmailAddressResponseUnmarshaller.Instance;

            return(InvokeAsync <VerifyEmailAddressRequest, VerifyEmailAddressResponse>(request, marshaller,
                                                                                       unmarshaller, cancellationToken));
        }
示例#5
0
        IAsyncResult invokeVerifyEmailAddress(VerifyEmailAddressRequest verifyEmailAddressRequest, AsyncCallback callback, object state, bool synchronized)
        {
            IRequest    irequest     = new VerifyEmailAddressRequestMarshaller().Marshall(verifyEmailAddressRequest);
            var         unmarshaller = VerifyEmailAddressResponseUnmarshaller.GetInstance();
            AsyncResult result       = new AsyncResult(irequest, callback, state, synchronized, signer, unmarshaller);

            Invoke(result);
            return(result);
        }
示例#6
0
        public async Task <EmailVerificationStatus> AddEmailAddressAsync(string emailAddress, CancellationToken ct = default)
        {
            await RemoveEmailAddressAsync(emailAddress, ct);

            var verifyRequest = new VerifyEmailAddressRequest
            {
                EmailAddress = emailAddress
            };

            await amazonSES.VerifyEmailAddressAsync(verifyRequest, ct);

            return(await GetStatusAsync(emailAddress, ct));
        }
        public static void SESVerifyEmailAddress()
        {
            #region SESVerifyEmailAddress
            var sesClient = new AmazonSimpleEmailServiceClient();

            var request = new VerifyEmailAddressRequest
            {
                EmailAddress = "*****@*****.**"
            };

            sesClient.VerifyEmailAddress(request);
            #endregion
        }
示例#8
0
        public void CreateEmail(IAmazonSimpleEmailService client, string email)
        {
            if (CheckEmailExist(client, email))
            {
                return;
            }

            var objVerifyEmailAddress = new VerifyEmailAddressRequest {
                EmailAddress = email
            };

            client.VerifyEmailAddress(objVerifyEmailAddress);
        }
示例#9
0
        internal VerifyEmailAddressResponse VerifyEmailAddress(VerifyEmailAddressRequest request)
        {
            var task = VerifyEmailAddressAsync(request);

            try
            {
                return(task.Result);
            }
            catch (AggregateException e)
            {
                ExceptionDispatchInfo.Capture(e.InnerException).Throw();
                return(null);
            }
        }
示例#10
0
        /// <summary>
        /// Add a email to Amazon SES Verified Email.
        /// You will receive a confirmation email from Amazon to confirm the email.
        /// </summary>
        /// <param name="email">Email to add</param>
        /// <exception cref="InvalidOperationException">Invalid email addresses</exception>
        /// <returns></returns>
        public static bool SendVerificationEmailAmazonSES(string email)
        {
            if (!Util.IsValidEmail(email))
            {
                throw new InvalidOperationException("Invalid email address");
            }
            using (AmazonSimpleEmailServiceClient client = GetSimpleEmailClientInstance())
            {
                VerifyEmailAddressRequest request = new VerifyEmailAddressRequest();
                request.EmailAddress = email;
                VerifyEmailAddressResponse response = client.VerifyEmailAddress(request);

                return(response.HttpStatusCode == HttpStatusCode.OK);
            }
        }
        public static async Task SendVerificationAsync()
        {
            #region send_verification_email
            using (var sesClient = new AmazonSimpleEmailServiceClient(RegionEndpoint.USEast1))
            {
                var request = new VerifyEmailAddressRequest
                {
                    EmailAddress = ""
                };

                if (!string.IsNullOrEmpty(request.EmailAddress))
                {
                    await sesClient.VerifyEmailAddressAsync(request);

                    Console.WriteLine("Email send, check your email to verify the email address");
                }
                else
                {
                    Console.Error.WriteLine("You must set an email in the request to send the verification email");
                }
            }
            #endregion
        }
示例#12
0
 /// <summary>
 /// Initiates the asynchronous execution of the VerifyEmailAddress operation.
 /// <seealso cref="Amazon.SimpleEmail.AmazonSimpleEmailService.VerifyEmailAddress"/>
 /// </summary>
 ///
 /// <param name="verifyEmailAddressRequest">Container for the necessary parameters to execute the VerifyEmailAddress operation on
 ///          AmazonSimpleEmailService.</param>
 /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param>
 /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback
 ///          procedure using the AsyncState property.</param>
 public IAsyncResult BeginVerifyEmailAddress(VerifyEmailAddressRequest verifyEmailAddressRequest, AsyncCallback callback, object state)
 {
     return(invokeVerifyEmailAddress(verifyEmailAddressRequest, callback, state, false));
 }
示例#13
0
        /// <summary>
        /// <para>Verifies an email address. This action causes a confirmation email message to be sent to the specified address.</para>
        /// </summary>
        ///
        /// <param name="verifyEmailAddressRequest">Container for the necessary parameters to execute the VerifyEmailAddress service method on
        ///          AmazonSimpleEmailService.</param>
        ///
        public VerifyEmailAddressResponse VerifyEmailAddress(VerifyEmailAddressRequest verifyEmailAddressRequest)
        {
            IAsyncResult asyncResult = invokeVerifyEmailAddress(verifyEmailAddressRequest, null, null, true);

            return(EndVerifyEmailAddress(asyncResult));
        }