/// <summary> /// Recuperar o código para validação do email /// </summary> /// <param name="toEmail">Email de destino</param> /// <param name="firstName">Primeiro nome do usuário</param> /// <returns></returns> public static async Task<string> GetRegisterConfirmationCodeAsync( string toEmail, string firstName) { Thread.Sleep(5000); // Aguardar 5 segundos para que o email seja entregue PopMailClient popMailClient = new PopMailClient( Pop3Configuration.Host, Pop3Configuration.Port, Pop3Configuration.User, Pop3Configuration.Password); MailMessage[] emails = await popMailClient.ReceiveAsync().ConfigureAwait(false); MailMessage mailMessage = emails.First(w => w.To == toEmail); // Template do email de confirmação: /* Olá Test, boas vindas! Seu código de confirmação é: 436A44F55FA4349801904263B430EB390B2CA6535BF70BE2A830FDDAEFA2D864B5A3027D17367DDC0AB09486DE941CE00E9034A32D1CFB24B15CDE357D5DAD67 */ return mailMessage.Body.Replace($"Olá {firstName}, boas vindas! Seu código de confirmação é: ", ""); }
/// <summary> /// Recuperar o código para recuperação da senha /// </summary> /// <param name="toEmail">Email de destino</param> /// <param name="firstName">Primeiro nome do usuário</param> /// <returns></returns> public static async Task<string> GetForgotPasswordCodeAsync( string toEmail, string firstName) { Thread.Sleep(5000); // Aguardar 5 segundos para que o email seja entregue PopMailClient popMailClient = new PopMailClient( Pop3Configuration.Host, Pop3Configuration.Port, Pop3Configuration.User, Pop3Configuration.Password); MailMessage[] emails = await popMailClient.ReceiveAsync().ConfigureAwait(false); MailMessage mailMessage = emails.First(w => w.To == toEmail); // Template do email de confirmação: /* Olá {FirstName}, utilize o código {RecoveryPasswordToken} para recuperar sua senha. */ return mailMessage.Body .Replace($"Olá {firstName}, utilize o código ", "") .Replace(" para recuperar sua senha.", ""); }