示例#1
0
        private bool SendEmail(RokonoConfig configurationDetails, string name, string email, string Subject, string body)
        {
            Program.Logger.Info(name);
            Program.Logger.Info(email);
            Program.Logger.Info(configurationDetails.Username);
            var message = new MimeMessage();

            message.From.Add(new MailboxAddress(Subject, configurationDetails.Username));
            message.To.Add(new MailboxAddress(name, email));
            message.Subject = Subject;

            BodyBuilder bodyBuilder = new BodyBuilder();

            bodyBuilder.HtmlBody = body;
            // bodyBuilder.TextBody = "Hello World!";
            message.Body = bodyBuilder.ToMessageBody();
            try
            {
                using (var client = new SmtpClient())
                {
                    client.Connect(configurationDetails.SMTP, int.Parse(configurationDetails.SmtpPort), true);
                    client.Authenticate(configurationDetails.Username, configurationDetails.Password);
                    client.Send(message);
                    client.Disconnect(true);
                    Program.Logger.Info($"Sending email for {email}, {name}, {Subject} successs");
                }
            }
            catch (Exception ex)
            {
                Program.Logger.Error($"Email for {email}, {name}, {Subject} failed", "51");
                Program.Logger.Error(ex.ToString(), "51");
            }

            return(true);
        }
示例#2
0
 public NotificationHandler(IConfiguration configuration)
 {
     Configuration      = configuration;
     Config             = new RokonoConfig();
     Config.Username    = Startup.Config.EmailConfiguration.Username;
     Config.Password    = Startup.Config.EmailConfiguration.Password;
     Config.SMTP        = Startup.Config.EmailConfiguration.Smtp;
     Config.IMAP        = Startup.Config.EmailConfiguration.Imap;
     Config.SmtpPort    = Startup.Config.EmailConfiguration.SmtpPort.ToString();
     Config.ImapPort    = Startup.Config.EmailConfiguration.ImapPort.ToString();
     Config.CompanyName = Startup.Config.EmailConfiguration.CompanyName;
 }
示例#3
0
 public NotificationHandler(IConfiguration configuration)
 {
     Configuration      = configuration;
     Config             = new RokonoConfig();
     Config.Username    = Configuration.GetValue <string>("EmailConfiguration:Username");
     Config.Password    = Configuration.GetValue <string>("EmailConfiguration:Password");
     Config.SMTP        = Configuration.GetValue <string>("EmailConfiguration:SMTP");
     Config.IMAP        = Configuration.GetValue <string>("EmailConfiguration:IMAP");
     Config.SmtpPort    = Configuration.GetValue <string>("EmailConfiguration:SmtpPort");
     Config.ImapPort    = Configuration.GetValue <string>("EmailConfiguration:ImapPort");
     Config.CompanyName = Configuration.GetValue <string>("EmailConfiguration:CompanyName");
 }
示例#4
0
        private bool SendEmail(RokonoConfig configurationDetails, string name, string email, string Subject, string body)
        {
            var message = new MimeMessage();

            message.From.Add(new MailboxAddress("Rokono Control", configurationDetails.Username));
            message.To.Add(new MailboxAddress(name, email));
            message.Subject = Subject;

            BodyBuilder bodyBuilder = new BodyBuilder();

            bodyBuilder.HtmlBody = body;
            // bodyBuilder.TextBody = "Hello World!";
            message.Body = bodyBuilder.ToMessageBody();
            using (var client = new SmtpClient())
            {
                client.Connect(configurationDetails.SMTP, int.Parse(configurationDetails.SmtpPort), true);
                client.Authenticate(configurationDetails.Username, configurationDetails.Password);

                client.Send(message);
                client.Disconnect(true);
            }
            return(true);
        }