Exemplo n.º 1
0
        public Task Execute(string subject, string message, string email)
        {
            var config = new IO.ClickSend.Client.Configuration();

            config.Username = Options.ClickSendUser;
            config.Password = Options.ClickSendApiKey;

            var transactionalEmailApi = new TransactionalEmailApi(config);
            var listOfRecipients      = new List <EmailRecipient>();

            listOfRecipients.Add(new EmailRecipient(
                                     email: email,
                                     name: email
                                     ));

            var emailFrom = new EmailFrom(
                emailAddressId: Options.EmailAddressId.ToString(),
                name: "Do Not Reply"
                );

            //response will contain diagnostic information if email confirmation debugging is needed. Probably best to
            //look at the clicksend dashboard first.
            var response = transactionalEmailApi.EmailSendPostAsync(new Email(
                                                                        to: listOfRecipients,
                                                                        cc: null,
                                                                        bcc: null,
                                                                        from: emailFrom,
                                                                        subject: subject,
                                                                        body: message,
                                                                        attachments: null
                                                                        ));

            return(response);
        }
Exemplo n.º 2
0
        public static Response <History> Create(EmailMessage message)
        {
            var response = Response <History> .Create();

            if (message.To == null)
            {
                response.WithBusinessError(nameof(message.To), "Destinatário não informado.");
            }

            if (message.From == null)
            {
                response.WithBusinessError(nameof(message.From), "Remetente não informado.");
            }

            if (response.HasError)
            {
                return(response);
            }

            var to = EmailTo.Create(message.To.Name, message.To.Email);

            var from = EmailFrom.Create(message.From.Name, message.From.Email);

            var data = JsonConvert.SerializeObject(message);

            return(response.SetValue(new History(to, from, message.TemplateId, data)));
        }
Exemplo n.º 3
0
        public void Check()
        {
            try
            {
                var req    = WebRequest.Create(CheckUri);
                var res    = req.GetResponse();
                var stream = res.GetResponseStream();
                var sr     = new StreamReader(stream);
                var body   = sr.ReadToEnd();
                sr.Close();
                stream.Close();

                var matches = _ipPattern.Matches(body);

                // Send these IP address matches in an email to me.
                var msgBody = new StringBuilder();
                msgBody.AppendLine("IP Addresses:");

                foreach (var match in matches)
                {
                    msgBody.AppendLine(match.ToString());
                }

                var msg  = new MailMessage(EmailFrom.ToString(), EmailTo.ToString(), EmailSubject, msgBody.ToString());
                var smtp = new SmtpClient();
                smtp.Send(msg);
            }
            catch (Exception ex)
            {
                EventLog.WriteEntry(Assembly.GetExecutingAssembly().FullName, string.Format("{0}\n\n{1}", ex.Message, ex.StackTrace), EventLogEntryType.Error);
            }
        }
Exemplo n.º 4
0
    public List <EmailFrom> GetEmailFromList()
    {
        List <EmailFrom> EmailFromList = new List <EmailFrom>();

        int fnum = 0;

        while (true)
        {
            fnum++;
            string webStr = ConfigHelper.GetAppSettings("EmailFroms" + fnum);
            if (webStr == null || webStr == "")
            {
                break;
            }
            else
            {
                string[] EFInfo = webStr.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);

                EmailFrom e = new EmailFrom();
                e.nickName = EFInfo[0].Split('=')[1].Trim();
                e.IP       = EFInfo[1].Split('=')[1].Trim();
                e.userName = EFInfo[2].Split('=')[1].Trim();
                e.pwd      = EFInfo[3].Split('=')[1].Trim();
                e.ssl      = Convert.ToBoolean(EFInfo[4].Split('=')[1].Trim());
                e.Port     = string.IsNullOrEmpty(EFInfo[5].Split('=')[1]) ? 25 : Convert.ToInt32(EFInfo[5].Split('=')[1].Trim());

                lock (EmailFromList)
                {
                    EmailFromList.Add(e);
                }
            }
        }

        return(EmailFromList);
    }
Exemplo n.º 5
0
 public History(EmailTo to
                , EmailFrom from
                , string templateId
                , string data) : base(Guid.NewGuid())
 {
     To           = to;
     From         = from;
     TemplateId   = templateId;
     TemplateData = data;
 }
Exemplo n.º 6
0
    protected void Button1_Click(object sender, EventArgs e)
    {
        DataView dvieww;
        string   SMTP;
        string   BCC;
        string   EmailFrom;
        string   Password;

        dvieww    = (DataView)SqlDataSource8.Select(DataSourceSelectArguments.Empty);
        SMTP      = (string)dvieww.Table.Rows[0]["SMTP"];
        BCC       = (string)dvieww.Table.Rows[0]["BCC"];
        EmailFrom = (string)dvieww.Table.Rows[0]["EmailFrom"];
        Password  = (string)dvieww.Table.Rows[0]["Password"];


        MailMessage mail       = new MailMessage();
        SmtpClient  SmtpServer = new SmtpClient(SMTP.ToString());

        mail.From = new MailAddress(EmailFrom.ToString());
        //Email acpe = new Email();
        mail.To.Add(TextBox2.Text);
        mail.Bcc.Add(BCC.ToString());

        StreamReader reader   = new StreamReader(Server.MapPath("~/email/Contact.html"));
        string       readFile = reader.ReadToEnd();
        string       myString = "";

        myString = readFile;
        //string name = HttpUtility.UrlEncode(Encrypt(Session["UserName"].ToString().Trim()));
        //string technology = HttpUtility.UrlEncode(Encrypt(ddlTechnology.SelectedItem.Value));

        myString = myString.Replace("{#Name}", TextBox1.Text);
        myString = myString.Replace("{#Email}", TextBox2.Text);
        myString = myString.Replace("{#Message}", TextBox3.Text);
        //myString = myString.Replace("{#message}", TextBox4.Text);


        mail.Subject           = "New Contact on onlinehcs.com";
        mail.IsBodyHtml        = true;
        mail.Body              = myString.ToString();
        SmtpServer.Port        = 8889;
        SmtpServer.Credentials = new System.Net.NetworkCredential(EmailFrom.ToString(), Password.ToString());
        SmtpServer.EnableSsl   = false;
        object userState = mail;

        SmtpServer.SendCompleted += new SendCompletedEventHandler(SMTPClientForAsy.SmtpClient_OnCompleted);
        SmtpServer.SendAsync(mail, userState);

        TextBox1.Text = string.Empty;
        TextBox2.Text = string.Empty;
        TextBox3.Text = string.Empty;

        Label5.Text = "Submitted Successfully";
    }
Exemplo n.º 7
0
        public bool SendEmail(string subject, string body, string[] recipients, string[] cc = null, bool isBodyHtml = true, string attachments = null)
        {
            var credential   = new NetworkCredential(EmailSmtpUser, EmailSmtpPassword);
            var mailComposer = new EmailSender(EmailSmtpServer, EmailSmtpPort, EmailSmtpEnableSsl, credential);

            MailAddress from;

            if (EmailFrom.Contains(";"))
            {
                var split = EmailFrom.Split(';');
                from = new MailAddress(split[0], split[1]);
            }
            else
            {
                from = new MailAddress(EmailFrom);
            }

            using (var message = new MailMessage(from, new MailAddress(recipients[0])))
            {
                for (var i = 1; i < recipients.Length; i++)
                {
                    message.To.Add(recipients[i]);
                }

                if (cc != null)
                {
                    foreach (var ccEmail in cc)
                    {
                        message.CC.Add(ccEmail);
                    }
                }

                message.Subject    = subject;
                message.IsBodyHtml = isBodyHtml;
                message.Body       = body;

                //if (!string.IsNullOrEmpty(attachments))
                //{
                //    foreach (var file in GetAttachmentFiles(attachments))
                //        message.Attachments.Add(new Attachment(file));
                //}
                try
                {
                    mailComposer.Send(message);
                    return(true);
                }
                catch (Exception ex)
                {
                    Logger.Error(string.Format("email to {0} was failed to sent: {1}", recipients, ex));
                    return(false);
                }
            }
        }
Exemplo n.º 8
0
        public Task <Response> SendEmailAsync(string email, string templateID, EmailFrom from, IEmailTemplateData dynamicTemplateData)
        {
            var fromEmail = "@coronaverdict.com";

            switch (from)
            {
            case EmailFrom.Account:
            {
                fromEmail = "account" + fromEmail;
                break;
            }

            case EmailFrom.Admin:
            {
                fromEmail = "admin" + fromEmail;
                break;
            }

            case EmailFrom.Contact:
            {
                fromEmail = "contact" + fromEmail;
                break;
            }

            case EmailFrom.Report:
            {
                fromEmail = "report" + fromEmail;
                break;
            }

            default:
            {
                fromEmail = "support" + fromEmail;
                break;
            }
            }

            var client = new SendGridClient(Options.ApiKey);
            var msg    = new SendGridMessage();

            msg.SetFrom(new EmailAddress(fromEmail, "CoronaVerdict"));
            msg.SetTemplateId(templateID);
            msg.AddTo(new EmailAddress(email));
            msg.SetTemplateData(dynamicTemplateData);
            msg.SetClickTracking(false, false);

            return(client.SendEmailAsync(msg));
        }
        public IEnumerable <EmailFrom> GetNotifications(string address)
        {
            var Notification = _context.EmailTos.Where(t => t.ToAddresses == address && t.Seen == false).Select(v => v.IdMail).ToList();

            List <EmailFrom> Notification1 = new List <EmailFrom>();

            foreach (var to in Notification)
            {
                EmailFrom Notification2 = new EmailFrom();
                Notification2 = _context.EmailFroms.Find(to);
                if (Notification2.ExceptionMessage == "0")
                {
                    Notification1.Add(Notification2);
                }
            }

            return(Notification1);
        }
Exemplo n.º 10
0
        private void SendEmailWorker(int ToManagerID, EmailType Type, EmailFrom FromEntity, string FromName, List <int> PlaceholderIDs)
        {
            WorldAdapter wa = new WorldAdapter();

            Email e = new Email();

            e.From          = FromEntity;
            e.FromOtherName = (FromEntity == EmailFrom.Other ? FromName : "");
            e.UniqueID      = wa.GetNextEmailID();
            e.Date          = wa.CurrentDate;
            e.Read          = false;
            e.TemplateID    = GetRandomEmailTemplateForType(Type).UniqueID;
            e.Data          = PlaceholderIDs;

            if (!World.Emails.ContainsKey(ToManagerID))
            {
                World.Emails[ToManagerID] = new List <Email>();
            }

            World.Emails[ToManagerID].Add(e);
        }
Exemplo n.º 11
0
 public Task <Response> SendEmailAsync(string email, string templateID, EmailFrom from, IEmailTemplateData dynamicTemplateData)
 {
     _logger.LogInformation($"To: {email} TemplateID: {templateID} From: {from} Data: {(dynamicTemplateData != null ? dynamicTemplateData.ToString() : "No Data")}");
     return(Task.Run(() => new Response(System.Net.HttpStatusCode.Accepted, null, null)));
 }
        public string Send(EmailMessage emailMessage)
        {
            string NameFrom = emailMessage.FromAddresses.Substring(1, emailMessage.FromAddresses.IndexOf("/") - 1);
            string NameTo   = emailMessage.FromAddresses.Substring(1, emailMessage.FromAddresses.IndexOf("/") - 1);
            var    message  = new MimeMessage();

            try
            {
                message.From.Add(new MailboxAddress(NameFrom, emailMessage.FromAddresses));
                message.To.Add(new MailboxAddress(NameTo, emailMessage.ToAddresses));
                message.Subject = emailMessage.Subject;
                var bodyBuilder1 = new BodyBuilder();
                bodyBuilder1.HtmlBody = emailMessage.Content;


                var builder = new BodyBuilder();
                var image   = builder.LinkedResources.Add(@"./poulinalogo.png");
                image.ContentId = MimeUtils.GenerateMessageId();


                builder.HtmlBody = string.Format(@"<br><br><br>

<table>
  <thead>
    <tr>
    <td>
      {0}
      </td>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>E-Mail : {1}</td>
    </tr>
    <tr>
      <td>Service : Informatique Operationnelle</td>
    </tr>
    <tr>
      <td>Poste : 801249</td>
    </tr>
    <tr>
      <td>GSM : 58278855</td>
    </tr>
</tbody>
<tfoot> 
<center><img src=""cid:{2}""></center>
</tfoot>
</table>", NameFrom, message.From.ToString(), image.ContentId);



                var multipart = new Multipart("mixed");
                multipart.Add(bodyBuilder1.ToMessageBody());
                multipart.Add(builder.ToMessageBody());


                var multipart1 = new Multipart("Attachements");
                message.Body = multipart;



                using (var emailClient = new SmtpClient())
                {
                    emailClient.Connect(_emailConfiguration.SmtpServer, _emailConfiguration.SmtpPort, false);

                    emailClient.Send(message);
                    emailClient.Disconnect(true);


                    EmailFrom emailFrom = new EmailFrom();

                    emailFrom.FromAddresses = emailMessage.FromAddresses;

                    emailFrom.FromName         = NameFrom;
                    emailFrom.Subject          = emailMessage.Subject;
                    emailFrom.Content          = emailMessage.Content;
                    emailFrom.SendDate         = DateTime.Now;
                    emailFrom.MessageType      = "info";
                    emailFrom.ExceptionMessage = "0";

                    _context.EmailFroms.Add(emailFrom);

                    EmailTo emailTo = new EmailTo();

                    emailTo.IdMail      = emailFrom.IdMail;
                    emailTo.Seen        = false;
                    emailTo.ToAddresses = emailMessage.ToAddresses;

                    emailTo.ToName      = NameTo;
                    emailTo.ReceiveType = "A";

                    _context.EmailTos.Add(emailTo);


                    _context.SaveChanges();
                    return("Mail success");
                }
            }
            catch (Exception ex)
            {
                EmailFrom emailFrom = new EmailFrom();

                emailFrom.FromAddresses = emailMessage.FromAddresses;

                emailFrom.FromName         = NameFrom;
                emailFrom.Subject          = emailMessage.Subject;
                emailFrom.Content          = emailMessage.Content;
                emailFrom.SendDate         = DateTime.Now;
                emailFrom.MessageType      = "info";
                emailFrom.ExceptionMessage = ex.Message;

                _context.EmailFroms.Add(emailFrom);


                EmailTo emailTo = new EmailTo();

                emailTo.IdMail      = emailFrom.IdMail;
                emailTo.Seen        = false;
                emailTo.ToAddresses = emailMessage.ToAddresses;

                emailTo.ToName      = NameTo;
                emailTo.ReceiveType = "A";
                _context.EmailTos.Add(emailTo);

                _context.SaveChanges();
                return(ex.Message);
            }
        }
Exemplo n.º 13
0
 public void SendEmail(int ToManagerID, EmailType Type, EmailFrom FromEntity, List <int> PlaceholderIDs)
 {
     SendEmailWorker(ToManagerID, Type, FromEntity, "", PlaceholderIDs);
 }