//void worker_DoWork(object sender, DoWorkEventArgs e) //{ // // Do the thing that needs doing every few minutes... // // (Omitted for simplicity is sentinel logic to prevent re-entering // // DoWork() if the previous "tick" has for some reason not completed.) //} public void Process() { try { var emailService = new EmailServices(); var credentials = emailService.GetCredentials(); emailService.ReadPop3Emails(credentials); emailService.ExecuteScheduledJob("Processrawdata"); emailService.ExecuteScheduledJob("LoadAgentQueue", 1); emailService.SendAutoResponseMail(); } catch (Exception ex) { wslog.WriteLog("ERR", ex.Message.ToString()); } }
public void SendEmail(Email _ObjEmail, string AttachmentPath) { string Username, Password, FromEmailAdress, OutHost, outEmailProtocol; int OutPort = 0; EmailServices emailService = new EmailServices(); var _listFromEmail = emailService.GetCredentials().FirstOrDefault(x => x.SmtpFromAddress == _ObjEmail.MailFrom); if (_listFromEmail != null) { Username = _listFromEmail.SmtpUser; Password = _listFromEmail.SmtpPassword; FromEmailAdress = _listFromEmail.SmtpFromAddress; outEmailProtocol = _listFromEmail.OutEmailProtocol; OutHost = _listFromEmail.OutHost; OutPort = _listFromEmail.OutPort; if (outEmailProtocol == "Exchange") // Added By Bidhan EmailProtocol == "POP3", will removed on production. { //Email _ObjEmail = new Email(); //DispositionAction dispositionAction = new DispositionAction(); const decimal kilobyte = 1024; ExchangeService service1 = new ExchangeService(ExchangeVersion.Exchange2010_SP1) { Credentials = new WebCredentials(Username, Password) }; //to add logic for itemview service1.AutodiscoverUrl(FromEmailAdress, RedirectionUrlValidationCallback); EmailMessage emailmessage = new EmailMessage(service1); emailmessage.Body = _ObjEmail.MailBody; if (_ObjEmail.MailTo != null && _ObjEmail.MailTo != "") { foreach (string emailTo in _ObjEmail.MailTo.Split(';')) { emailmessage.ToRecipients.Add(emailTo); } } if (_ObjEmail.MailSubject != null && _ObjEmail.MailSubject != "") { emailmessage.Subject = Convert.ToString(_ObjEmail.MailSubject); } if (_ObjEmail.MailCC != null && _ObjEmail.MailCC != "") { foreach (string emailCC in _ObjEmail.MailCC.Split(';')) { emailmessage.CcRecipients.Add(emailCC); } } if (AttachmentPath.Length > 0) { emailmessage.Attachments.AddFileAttachment(AttachmentPath); } emailmessage.Send(); } else if (outEmailProtocol.ToUpper() == "SMTP") { const decimal kilobyte = 1024; MailMessage message = new MailMessage(); if (_ObjEmail.MailTo != null && _ObjEmail.MailTo != "") { foreach (string emailTo in _ObjEmail.MailTo.Split(';')) { message.To.Add(emailTo); } } if (_ObjEmail.MailSubject != null && _ObjEmail.MailSubject != "") { message.Subject = Convert.ToString(_ObjEmail.MailSubject); } if (_ObjEmail.MailCC != null && _ObjEmail.MailCC != "") { foreach (string emailCC in _ObjEmail.MailCC.Split(';')) { message.CC.Add(emailCC); } } string strMailBody = _ObjEmail.MailBody; var view = AlternateView.CreateAlternateViewFromString(strMailBody, null, "text/html"); message.AlternateViews.Add(view); message.From = new MailAddress(FromEmailAdress); message.IsBodyHtml = true; System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(OutHost); System.Net.NetworkCredential smtpAuthen = new System.Net.NetworkCredential(Username, Password); smtp.UseDefaultCredentials = false; smtp.Credentials = smtpAuthen; if (AttachmentPath.Length > 0) { message.Attachments.Add(new System.Net.Mail.Attachment(AttachmentPath)); } smtp.Send(message); } } }