Beispiel #1
0
        public void SaveMonthlyStatementMessage(MonthlyStatementDTO token, string messageBody, out long emailId, out string error)
        {
            error = string.Empty;
            try
            {
                var message = new EmailMessageDTO
                {
                    Subject       = $"Monthly Statement for {CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(token.Month)} {token.Year}"
                    , MessageFrom = FROM
                    , UserId      = token.User.UserId
                    , ToEmail     = token.User.Email
                    , ToName      = token.User.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = messageBody
                };


                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                error   = Utils.FormatError(ex);
                emailId = -1;
                Logger.Error("save monthly statement email message", token.User.UserId, ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #2
0
        public void SaveSubscriptionCancelMessage(EmailSubscriptionCancelToken token, out long emailId)
        {
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.AUTHOR_CANCELLATION_ALERT);

                var message = new EmailMessageDTO
                {
                    Subject       = String.Format(AUHTOR_SUBSCRIPTION_CANCEL_ALERT_SUBJECT, token.CourseName)
                    , MessageFrom = FROM
                    , UserId      = token.UserID
                    , ToEmail     = token.ToEmail
                    , ToName      = token.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.COURSE_AUTHOR.ToString().Field2Template(), token.FullName)
                                    .Replace(EmailEnums.eTemplateFields.COURSE_NAME.ToString().Field2Template(), token.CourseName)
                                    .Replace(EmailEnums.eTemplateFields.LEARNER_NAME.ToString().Field2Template(), token.LearnerName)
                                    .Replace(EmailEnums.eTemplateFields.LEARNER_EMAIL.ToString().Field2Template(), token.LearnerEmail)
                                    .Replace(EmailEnums.eTemplateFields.FOLLOWING_MONTH.ToString().Field2Template(), token.Month)
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                emailId = -1;
                Logger.Error("email service::save SaveSubscriptionCancelMessage", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #3
0
        public void SaveRegistrationMessage(EmailRegistrationToken token, out long emailId)
        {
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.REGISTRATION);

                var message = new EmailMessageDTO
                {
                    Subject       = REGISTRATION_SUBJECT
                    , MessageFrom = FROM
                    , UserId      = token.UserID
                    , ToEmail     = token.ToEmail
                    , ToName      = token.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.FullName.String2Html(null, NAME_HTML_STYLE, null))
                };


                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                emailId = -1;
                Logger.Error("save registration email message", null, ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #4
0
        public void SaveResetPasswordMessage(EmailForgottenPasswordToken token, out long emailId, out string error)
        {
            error = string.Empty;
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.FORGOTTEN_PASSWORD);

                var message = new EmailMessageDTO
                {
                    Subject       = FORGOTTEN_PASSWORD_SUBJECT
                    , MessageFrom = FROM
                    , UserId      = token.UserID
                    , ToEmail     = token.ToEmail
                    , ToName      = token.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.RESET_PASSWORD_LINK.ToString().Field2Template(), "<a style=\"" + NAME_HTML_BODY_STYLE_UNDERLINE + "\"  href=\"" + token.ResetPasswordURL + "\" >" + "Please follow this Link" + "</a>")
                                    .Replace(EmailEnums.eTemplateFields.BASE_SITE_URL.ToString().Field2Template(), "<a style=\"" + NAME_HTML_STYLE_UNDERLINE + "\"  href=\"" + Utils.GetKeyValue("baseUrl") + "\" >" + Utils.GetKeyValue("baseUrl") + "</a>")
                                    .Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.FullName)
                };


                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                emailId = -1;
                error   = Utils.FormatError(ex);
                Logger.Error("save forgotten password email message", null, ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #5
0
        public void SaveStudentCertificateMessage(StudentCertificateDTO token, string messageBody, out long emailId, out string error)
        {
            error = string.Empty;
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.STUDENT_CERTIFICATE);

                var message = new EmailMessageDTO
                {
                    Subject       = String.Format(STUDENT_CERTIFICATE_SUBJECT, token.CourseName)
                    , MessageFrom = FROM
                    , UserId      = CurrentUserId
                    , ToEmail     = token.StudentInfo.Email
                    , ToName      = token.StudentInfo.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.LEARNER_NAME.ToString().Field2Template(), token.StudentInfo.FullName)
                                    .Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.PresentedBy)
                                    .Replace(EmailEnums.eTemplateFields.COURSE_NAME.ToString().Field2Template(), token.CourseName)
                                    .Replace(EmailEnums.eTemplateFields.ACTIVATION_LINK.ToString().Field2Template(), "<a style=\"" + NAME_HTML_STYLE_UNDERLINE + "\"  href=\"" + token.OnlineCertificateUrl + "\" >Online certificate link</a>")
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                error   = FormatError(ex);
                emailId = -1;
                Logger.Error("email service::SaveStudentCertificateMessage email message", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #6
0
        public void SaveGRPRefundSubmitted(EmailGRPSubmitted token, out long emailId)
        {
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.GRP_REFUND_SUBMITTED);
                html = html.Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.FullName);
                html = html.Replace(EmailEnums.eTemplateFields.LEARNER_NAME.ToString().Field2Template(), token.LearnerName);
                html = html.Replace(EmailEnums.eTemplateFields.LEARNER_EMAIL.ToString().Field2Template(), token.LearnerEmail);
                html = html.Replace(EmailEnums.eTemplateFields.FREE_TEXT.ToString().Field2Template(), token.ReasonText);
                html = html.Replace(EmailEnums.eTemplateFields.COURSE_NAME.ToString().Field2Template(), token.ItemName);

                var message = new EmailMessageDTO
                {
                    Subject       = GRP_REFUND_SUBMITTED_SUBJECT
                    , MessageFrom = FROM
                    , UserId      = token.UserID
                    , ToEmail     = token.ToEmail
                    , ToName      = token.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                emailId = -1;
                Logger.Error("email service::save join refund program email message", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #7
0
        public void SaveQuizContactAuthorMessage(StudentMessageDTO token, out long emailId, out string error)
        {
            error = string.Empty;
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.QUIZ_AUTHOR_REQUEST);

                var message = new EmailMessageDTO
                {
                    Subject       = String.Format(QUIZ_CONTACT_AUTHOR_SUBJECT, token.CourseName)
                    , MessageFrom = FROM
                    , UserId      = CurrentUserId
                    , ToEmail     = token.Author.Email
                    , ToName      = token.Author.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.LEARNER_NAME.ToString().Field2Template(), token.Student.FullName)
                                    .Replace(EmailEnums.eTemplateFields.LEARNER_EMAIL.ToString().Field2Template(), "<a style=\"" + NAME_HTML_STYLE_UNDERLINE + "\"  href=\"mailto:" + token.Student.Email + "\" >" + token.Student.Email + "</a>")
                                    .Replace(EmailEnums.eTemplateFields.QUIZ_NAME.ToString().Field2Template(), token.QuizTitle)
                                    .Replace(EmailEnums.eTemplateFields.FREE_TEXT.ToString().Field2Template(), token.Message)
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                error   = FormatError(ex);
                emailId = -1;
                Logger.Error("email service::SaveQuizContactAuthorMessage email message", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
 public Task SendEmail(EmailMessageDTO emailMessage)
 {
     using (SmtpClient client = new SmtpClient("smtp.mail.ru", 457))
     {
         return(client.SendMailAsync("*****@*****.**", emailMessage.To, emailMessage.Title, emailMessage.Text));
     }
 }
Beispiel #9
0
        public Task SendEmail(EmailMessageDTO emailMessage)
        {
            // отправитель - устанавливаем адрес и отображаемое в письме имя
            MailAddress from = new MailAddress("*****@*****.**", "Tom");
            // кому отправляем
            MailAddress to = new MailAddress(emailMessage.To);
            // создаем объект сообщения
            MailMessage m = new MailMessage(from, to);

            // тема письма
            m.Subject = emailMessage.Title;
            // текст письма
            m.Body = emailMessage.Text;
            // письмо представляет код html
            m.IsBodyHtml = true;
            // адрес smtp-сервера и порт, с которого будем отправлять письмо
            SmtpClient smtp = new SmtpClient("smtp.mail.ru", 587);

            // логин и пароль
            smtp.Credentials = new NetworkCredential("*****@*****.**", "DeNiS300402");
            smtp.EnableSsl   = true;
            //return smtp.SendAsync(, m.To,emailMessage.Title,emailMessage.Text);
            return(smtp.SendMailAsync(m));
            //еще какие то настройки
            //return smtp.SendMailAsync("*****@*****.**", emailMessage.To, emailMessage.Title, emailMessage.Text);
        }
Beispiel #10
0
        public void SaveJoinRefundProgramMessage(EmailBaseToken token, out long emailId)
        {
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.REFUND_PROGRAM_CONFIRMATION);

                var message = new EmailMessageDTO
                {
                    Subject       = REFUND_PROGRAM_JOIN_SUBJECT
                    , MessageFrom = FROM
                    , UserId      = token.UserID
                    , ToEmail     = token.ToEmail
                    , ToName      = token.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.FullName)
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                emailId = -1;
                Logger.Error("email service::save join refund program email message", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
Beispiel #11
0
        public void SaveQuizAuthorResponseMessage(StudentMessageDTO token, out long emailId, out string error)
        {
            error = string.Empty;
            try
            {
                var html = GetTemplateHtml(EmailEnums.eTemplateKinds.QUIZ_AUTHOR_RESPONSE);

                var message = new EmailMessageDTO
                {
                    Subject       = String.Format(QUIZ_AUTHOR_RESPONSE_SUBJECT, token.QuizTitle)
                    , MessageFrom = FROM
                    , UserId      = CurrentUserId
                    , ToEmail     = token.Student.Email
                    , ToName      = token.Student.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.LEARNER_NAME.ToString().Field2Template(), token.Student.FullName)
                                    .Replace(EmailEnums.eTemplateFields.COURSE_AUTHOR.ToString().Field2Template(), token.Author.FullName)
                                    .Replace(EmailEnums.eTemplateFields.QUIZ_NAME.ToString().Field2Template(), token.QuizTitle)
                                    .Replace(EmailEnums.eTemplateFields.QUIZ_ATTEMPT_NO.ToString().Field2Template(), token.AvailableAttempts.ToString())
                };

                SaveMessage(message, out emailId);
            }
            catch (Exception ex)
            {
                error   = FormatError(ex);
                emailId = -1;
                Logger.Error("email service::SaveQuizAuthorResponseMessage email message", ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
 public Task SendEmail(EmailMessageDTO emailMessage)
 {
     using (SmtpClient client = new SmtpClient("smpt.gmail.com", 465))
     {
         // еще что-то
         return(client.SendMailAsync("*****@*****.**", emailMessage.To, emailMessage.Title, emailMessage.Text));
     }
 }
Beispiel #13
0
 public Task CreateEmailMessageAsync(EmailMessageDTO emailMessage)
 {
     return(AddOrUpdateAsync(new EmailMessage
     {
         From = emailMessage.From,
         Tos = emailMessage.Tos,
         CCs = emailMessage.CCs,
         BCCs = emailMessage.BCCs,
         Subject = emailMessage.Subject,
         Body = emailMessage.Body,
     }));
 }
        public void Send(EmailMessageDTO emailMessage)
        {
            var client = new SendGridClient(_options.ApiKey);
            var from   = new EmailAddress(!string.IsNullOrWhiteSpace(_options.OverrideFrom) ? _options.OverrideFrom : emailMessage.From);

            var tos = (!string.IsNullOrWhiteSpace(_options.OverrideTos) ? _options.OverrideTos : emailMessage.Tos)?.Split(';')
                      .Where(x => !string.IsNullOrWhiteSpace(x))
                      .Select(x => new EmailAddress(x))
                      .ToList();

            var msg      = MailHelper.CreateSingleEmailToMultipleRecipients(from, tos, emailMessage.Subject, string.Empty, emailMessage.Body, showAllRecipients: true);
            var response = client.SendEmailAsync(msg).GetAwaiter().GetResult();
        }
Beispiel #15
0
 public static EMAIL_Messages Dto2EmailMesageEntity(this EmailMessageDTO token)
 {
     return(new EMAIL_Messages
     {
         Subject = token.Subject
         , UserId = token.UserId
         , MessageFrom = token.MessageFrom
         , ToEmail = token.ToEmail
         , ToName = token.ToName
         , MessageBoby = token.MessageBody
         , Status = token.Status.ToString()
         , AddOn = token.AddOn
     });
 }
Beispiel #16
0
        public async Task <IActionResult> SendEmail(string to, string title, string text)
        {
            EmailMessageDTO emailMessage = new EmailMessageDTO
            {
                To    = to,
                Text  = text,
                Title = title
            };
            //еще какие то настройки
            //var emailSender = new EmailSenderServies();
            //await emailSender.SendEmail(emailMessage);
            await emailSender.SendEmail(emailMessage);

            return(Ok());
        }
        public Task SendEmail(EmailMessageDTO emailMessage)
        {
            SmtpClient _smtp = new SmtpClient("smtp.yandex.ru", 25);

            _smtp.Credentials = new NetworkCredential("*****@*****.**", "5343454karp99");
            _smtp.EnableSsl   = true;
            MailMessage _mail = new MailMessage();

            _mail.From = new MailAddress("*****@*****.**");
            _mail.To.Add(new MailAddress(emailMessage.To));
            _mail.SubjectEncoding = Encoding.UTF8;
            _mail.BodyEncoding    = Encoding.UTF8;
            _mail.Subject         = emailMessage.Title;
            _mail.Body            = emailMessage.Text;
            return(_smtp.SendMailAsync(_mail));
        }
        public void Send(EmailMessageDTO emailMessage)
        {
            var mail = new MailMessage();

            mail.From = new MailAddress(emailMessage.From);

            emailMessage.Tos?.Split(';')
            .Where(x => !string.IsNullOrWhiteSpace(x))
            .ToList()
            .ForEach(x => mail.To.Add(x));

            emailMessage.CCs?.Split(';')
            .Where(x => !string.IsNullOrWhiteSpace(x))
            .ToList()
            .ForEach(x => mail.CC.Add(x));

            emailMessage.BCCs?.Split(';')
            .Where(x => !string.IsNullOrWhiteSpace(x))
            .ToList()
            .ForEach(x => mail.Bcc.Add(x));

            mail.Subject = emailMessage.Subject;

            mail.Body = emailMessage.Body;

            mail.IsBodyHtml = true;

            var smtpClient = new System.Net.Mail.SmtpClient(_options.Host);

            if (_options.Port.HasValue)
            {
                smtpClient.Port = _options.Port.Value;
            }

            if (!string.IsNullOrWhiteSpace(_options.UserName) && !string.IsNullOrWhiteSpace(_options.Password))
            {
                smtpClient.Credentials = new System.Net.NetworkCredential(_options.UserName, _options.Password);
            }

            if (_options.EnableSsl.HasValue)
            {
                smtpClient.EnableSsl = _options.EnableSsl.Value;
            }

            smtpClient.Send(mail);
        }
        public Task SendEmail(EmailMessageDTO emailMessage)
        {
            MailMessage mail = new MailMessage();

            mail.From = new MailAddress("*****@*****.**");
            mail.To.Add(new MailAddress(emailMessage.To));
            mail.Subject = emailMessage.Title;
            mail.Body    = emailMessage.Text;

            SmtpClient client = new SmtpClient();

            client.Host        = "smtp.yandex.ru";
            client.Port        = 587;
            client.EnableSsl   = true;
            client.Credentials = new NetworkCredential("*****@*****.**", "AzatMukushman123");
            return(client.SendMailAsync(mail));
        }
Beispiel #20
0
        private void SaveMessage(EmailMessageDTO messageToken, out long emailId)
        {
            try
            {
                var entity = messageToken.Dto2EmailMesageEntity();

                EmailMessageRepository.Add(entity);

                EmailMessageRepository.UnitOfWork.CommitAndRefreshChanges();

                emailId = entity.EmailId;
            }
            catch (Exception ex)
            {
                emailId = -1;
                Logger.Error("save email message", null, ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
        public Task SendAsync(EmailMessageDTO emailMessage)
        {
            MailMessage mail       = new MailMessage();
            SmtpClient  smtpServer = new SmtpClient("smtp.mail.ru");

            mail.From = new MailAddress("*****@*****.**");
            mail.To.Add(emailMessage.To);
            mail.Subject = emailMessage.Title;
            mail.Body    = emailMessage.Text;

            smtpServer.Port        = 465;
            smtpServer.Credentials = new System.Net.NetworkCredential("*****@*****.**", "radle689391");
            smtpServer.EnableSsl   = true;

            smtpServer.SendMailAsync(mail);

            return(Task.CompletedTask);
        }
Beispiel #22
0
        public async Task <Response> SendResetPasswordEmail(string email, string code)
        {
            var args = new Dictionary <string, string>
            {
                { "{{Code}}", code },
                { "{{ResetPasswordUrl}}", _urls.ResetPasswordUrl }
            };
            var mailNotificationModel = new EmailMessageDTO
            {
                Html       = true,
                Subject    = "Reset password",
                Args       = args,
                TemplateId = TemplateId.ResetPassword,
                ToEmails   = new [] { email },
            };

            return(await SendEmail(mailNotificationModel));
        }
Beispiel #23
0
        public async Task <Response> SendConfirmNewAdminMailboxEmail(string newEmail, string code)
        {
            var args = new Dictionary <string, string>
            {
                { "{{Code}}", code },
                { "{{ConfirmAdminNewMailboxUrl}}", _urls.ConfirmAdminNewMailboxUrl }
            };
            var mailNotificationModel = new EmailMessageDTO
            {
                Html       = true,
                Subject    = "Confirm email",
                Args       = args,
                TemplateId = TemplateId.ConfirmAdminNewMailbox,
                ToEmails   = new [] { newEmail },
            };

            return(await SendEmail(mailNotificationModel));
        }
Beispiel #24
0
        public async Task <Response> SendEmail(EmailMessageDTO message)
        {
            var templatePath = $"{_fileDirectoryPath.EmailTemplatePath}/{message.TemplateId}.html";

            var mailNotificationModel = new MailNotificationModel
            {
                Body         = message.Body,
                Html         = message.Html,
                Subject      = message.Subject,
                Args         = message.Args,
                TemplatePath = message.TemplateId != null
                    ? $"{_fileDirectoryPath.EmailTemplatePath}/{message.TemplateId}.html"
                    : null,
                ToAddresses = message.ToEmails,
                FromName    = message.FromName
            };

            return(await SendEmail(mailNotificationModel));
        }
Beispiel #25
0
        public async Task <Response> SendInviteEmail(string email, string authorName, string entityName, string entityType, string code)
        {
            var args = new Dictionary <string, string>
            {
                { "{{Code}}", code },
                { "{{InviteUserPageUrl}}", _urls.InviteUserPageUrl },
                { "{{AuthorName}}", authorName },
                { "{{EntityName}}", entityName },
                { "{{EntityType}}", entityType }
            };
            var mailNotificationModel = new EmailMessageDTO
            {
                Html       = true,
                Subject    = "Invite to squad.io",
                Args       = args,
                TemplateId = TemplateId.InviteUser,
                ToEmails   = new [] { email },
            };

            return(await SendEmail(mailNotificationModel));
        }
Beispiel #26
0
        public static bool NewMessage(EmailMessageDTO message)
        {
            try
            {
                Outlook.Application outlook = new Outlook.Application();
                Outlook._MailItem   email   = (Outlook._MailItem)outlook.CreateItem(Outlook.OlItemType.olMailItem);

                foreach (string address in message.ToRecipients)
                {
                    Outlook.Recipient recipient = email.Recipients.Add(address);
                    recipient.Type = (int)Outlook.OlMailRecipientType.olTo;
                    recipient.Resolve();
                }

                foreach (string address in message.CcRecipients)
                {
                    Outlook.Recipient recipient = email.Recipients.Add(address);
                    recipient.Type = (int)Outlook.OlMailRecipientType.olCC;
                    recipient.Resolve();
                }

                email.Subject = message.Subject;
                email.Body    = message.Body;

                foreach (string attachment in message.Attachments)
                {
                    email.Attachments.Add(attachment, Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);
                }

                email.Display(false);
            }
            catch (Exception ex)
            {
                Debugger.Break();
                return(false);
            }

            return(true);
        }
Beispiel #27
0
        private void SavePurchaseAuthor(EmailPurchaseToken token, bool send)
        {
            try
            {
                var html = token.PaymentMethod == BillingEnums.ePaymentMethods.Charge_Free && token.Coupon == null?GetTemplateHtml(EmailEnums.eTemplateKinds.PURCHASE_AUTHOR_FREE) : GetTemplateHtml(EmailEnums.eTemplateKinds.PURCHASE_AUTHOR);

                var authorMessage = new EmailMessageDTO
                {
                    Subject       = String.Format(PURCHASE_AUTHOR_SUBJECT, token.Item.type.ToString().ToLower())
                    , MessageFrom = FROM
                    , UserId      = token.Seller.UserId
                    , ToEmail     = token.Seller.Email
                    , ToName      = token.Seller.FullName
                    , Status      = EmailEnums.eSendInterfaceStatus.Waiting
                    , AddOn       = DateTime.Now
                    , MessageBody = html.Replace(EmailEnums.eTemplateFields.COURSE_AUTHOR.ToString().Field2Template(), token.Seller.FullName)
                                    .Replace(EmailEnums.eTemplateFields.COURSE_NAME.ToString().Field2Template(), token.Item.name)
                                    .Replace(EmailEnums.eTemplateFields.ITEM_TYPE_NAME.ToString().Field2Template(), token.Item.type.ToString().ToLower())
                                    .Replace(EmailEnums.eTemplateFields.FULL_NAME.ToString().Field2Template(), token.Buyer.FullName)
                                    .Replace(EmailEnums.eTemplateFields.PURCHASE_DATE.ToString().Field2Template(), token.SentDate.ToShortDateString() + " " + token.SentDate.ToShortTimeString())
                };

                long emailId;
                SaveMessage(authorMessage, out emailId);

                if (emailId < 0 || !send)
                {
                    return;
                }

                string error;
                _amazonEmailWrapper.SendEmail(emailId, out error);
            }
            catch (Exception ex)
            {
                Logger.Error("save purchase author email message", null, ex, CommonEnums.LoggerObjectTypes.Email);
            }
        }
        public async Task <IActionResult> SendEmail(EmailMessageDTO emailMessage)
        {
            await emailSenderService.SendAsync(emailMessage);

            return(Ok());
        }
Beispiel #29
0
 public MessageEventArgs(EmailMessageDTO message)
 {
     Message = message;
 }
Beispiel #30
0
 public void SendEmail(EmailMessageDTO message)
 {
     emailQueue.Enqueue(message);
 }