Esempio n. 1
0
        private MimeMessage CreateMimeMessage(EmailNotification message)
        {
            var mimeMessage = new MimeMessage();

            mimeMessage.From.Add(new MailboxAddress(message.Sender));
            mimeMessage.Subject = message.Subject;
            mimeMessage.Body    = new TextPart("plain")
            {
                Text = message.Body
            };

            foreach (var recipient in message.Recipients)
            {
                mimeMessage.To.Add(new MailboxAddress(recipient));
            }

            return(mimeMessage);
        }
Esempio n. 2
0
        private void SendEmail(EmailNotification message)
        {
            this.logger.Debug("Email notification message received");

            using (var client = new SmtpClient())
            {
                var msg = this.CreateMimeMessage(message);

                client.Connect(
                    this.smtpSettings.Host,
                    this.smtpSettings.Port,
                    this.smtpSettings.UseTls ? SecureSocketOptions.StartTls : SecureSocketOptions.None);
                client.Authenticate(this.smtpSettings.User, this.smtpSettings.Password);
                client.Send(msg);
                client.Disconnect(true);
            }

            this.logger.Debug("Email was succesfully sent");
        }