Ejemplo n.º 1
0
        public async Task <bool> SendEmail(EmailComponents email)
        {
            try
            {
                var senderEmail   = new MailAddress(email.SenderEmail, email.SenderEmailName);
                var receiverEmail = new MailAddress(email.ReceiverEmail, email.ReceiverEmailName);

                var smtp = new SmtpClient
                {
                    Host           = email.Server.Host,
                    Port           = email.Server.Port,
                    EnableSsl      = false,
                    DeliveryMethod = SmtpDeliveryMethod.Network,
                    Credentials    = CredentialCache.DefaultNetworkCredentials,
                };
                using (var mess = new MailMessage(senderEmail, receiverEmail)
                {
                    Subject = email.Subject,
                    Body = email.Body,
                    IsBodyHtml = true
                })
                {
                    await smtp.SendMailAsync(mess);

                    smtp.Dispose();
                }

                return(true);
            }
            catch
            {
                return(false);
            }
        }
Ejemplo n.º 2
0
        public async Task <bool> SendUserStaffTerminationNotificationEmail(CustomerUserData user, int nroEmployeesTermination)
        {
            var pathToFile = _env.ContentRootPath + Path.DirectorySeparatorChar.ToString() + "Templates" + Path.DirectorySeparatorChar.ToString() + "Email"
                             + Path.DirectorySeparatorChar.ToString()
                             + "Emai_User_Staff_Termination_Notification_Layout.html";

            var builder = new BodyBuilder();

            using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile)) {
                builder.HtmlBody = SourceReader.ReadToEnd();
                SourceReader.Close();
            }

            var    url  = _ticketSettings.TicketDetailUrl;
            string body = string.Format(builder.HtmlBody,
                                        user.FirstName,           //{0}
                                        nroEmployeesTermination); //{1}

            EmailComponents email = new EmailComponents();

            email.Server = new Server()
            {
                Host = _emailSettings.EmailServerUrl,
                Port = _emailSettings.EmailServerPort
            };
            email.SenderEmail       = _emailSettings.ReceiverEmailApi;
            email.SenderEmailName   = _emailSettings.ReceiverEmailNameApi;
            email.ReceiverEmail     = user.Email;
            email.ReceiverEmailName = user.FirstName + " " + user.LastName;
            email.Subject           = _OTRSOptions.UserStaffTerminationNotification;
            email.Body = body;
            var sendEmail = await _senderEmailRepository.SendEmail(email);

            return(sendEmail);
        }
Ejemplo n.º 3
0
        public async Task <bool> SendEmailAdministratorSystem(StringBuilder result, string subject)
        {
            string body = result.ToString();

            EmailComponents email = new EmailComponents();

            email.Server = new Server()
            {
                Host = _emailSettings.EmailServerUrl,
                Port = _emailSettings.EmailServerPort
            };
            email.SenderEmail       = _emailSettings.ReceiverEmailApi;
            email.SenderEmailName   = _emailSettings.ReceiverEmailNameApi;
            email.ReceiverEmail     = _emailSettings.ReceiverEmailApi;
            email.ReceiverEmailName = _emailSettings.ReceiverEmailNameApi;
            email.Subject           = subject;
            email.Body = body;
            var sendEmail = await _senderEmailRepository.SendEmail(email);

            return(sendEmail);
        }
Ejemplo n.º 4
0
        public async Task <bool> SendEmailForgotPassword(Usuario user, string claimName, string claimLogin)
        {
            var resetToken = _jwtTokenRepository.CreateJwtToken(_appSettings.Secret, claimName, claimLogin);
            var pathToFile = _env.ContentRootPath + Path.DirectorySeparatorChar.ToString() + "Templates" + Path.DirectorySeparatorChar.ToString() + "Email"
                             + Path.DirectorySeparatorChar.ToString()
                             + "Email_Forgot_Password_Layout.html";

            var builder = new BodyBuilder();

            using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile))
            {
                builder.HtmlBody = SourceReader.ReadToEnd();
                SourceReader.Close();
            }

            var    url  = _resetPasswordSettings.WebBaseUrl + resetToken;
            string body = string.Format(builder.HtmlBody,
                                        user.Nombre, //{0}
                                        url);        //{1}

            EmailComponents email = new EmailComponents();

            email.Server = new Server()
            {
                Host = _emailSettings.EmailServerUrl,
                Port = _emailSettings.EmailServerPort
            };
            email.SenderEmail       = _emailSettings.ReceiverEmailApi;
            email.SenderEmailName   = _emailSettings.ReceiverEmailNameApi;
            email.ReceiverEmail     = user.Email;
            email.ReceiverEmailName = user.Nombre + " " + user.Apellido;
            email.Subject           = Message.IdentityForgetPassEmailSubject;
            email.Body = body;
            var sendEmail = await _senderEmailRepository.SendEmail(email);

            return(sendEmail);
        }
Ejemplo n.º 5
0
        public async Task <bool> SendEmailCreateTicket(CustomerUserData user, string nroTicket)
        {
            var pathToFile = _env.ContentRootPath + Path.DirectorySeparatorChar.ToString() + "Templates" + Path.DirectorySeparatorChar.ToString() + "Email"
                             + Path.DirectorySeparatorChar.ToString()
                             + "Email_Create_Ticket_Layout.html";

            var builder = new BodyBuilder();

            using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile)) {
                builder.HtmlBody = SourceReader.ReadToEnd();
                SourceReader.Close();
            }

            var    url  = _ticketSettings.TicketDetailUrl + nroTicket;
            string body = string.Format(builder.HtmlBody,
                                        user.FirstName, //{0}
                                        nroTicket,      //{1}
                                        url);           //{2}

            EmailComponents email = new EmailComponents();

            email.Server = new Server()
            {
                Host = _emailSettings.EmailServerUrl,
                Port = _emailSettings.EmailServerPort
            };
            email.SenderEmail       = _emailSettings.ReceiverEmailApi;
            email.SenderEmailName   = _emailSettings.ReceiverEmailNameApi;
            email.ReceiverEmail     = user.Email;
            email.ReceiverEmailName = user.FirstName + " " + user.LastName;
            email.Subject           = _OTRSOptions.StoleAlertTicketEmailSubject + " " + nroTicket;
            email.Body = body;
            var sendEmail = await _senderEmailRepository.SendEmail(email);

            return(sendEmail);
        }
Ejemplo n.º 6
0
 public async Task <bool> SendEmail(EmailComponents email)
 {
     return(await _SMTPClient.SendEmail(email));
 }