public static GmailMessage GetFakeGmailMessage( string from = "*****@*****.**", string to = "*****@*****.**", string subject = "test subject", string content = "test content") { var mess = new MailMessage { Subject = subject, From = new MailAddress(from) }; mess.To.Add(new MailAddress(to)); var adds = AlternateView.CreateAlternateViewFromString(content, new System.Net.Mime.ContentType("text/plain")); adds.ContentType.CharSet = Encoding.UTF8.WebName; mess.AlternateViews.Add(adds); var mime = MimeMessage.CreateFromMailMessage(mess); var gmailMessage = new GmailMessage() { Raw = GMailService.Base64UrlEncode(mime.ToString()), ThreadId = "1" }; return(gmailMessage); }
public ActionResult EmailAdmin(EmailAdminViewModel model) { // Test error handling. throw new DivideByZeroException(); GMailService.SendMail(EnvironmentSecret.Instance.EmailAdmin, model.Subject, "User:"******" <br/>" + model.Body); return(RedirectToAction("Index")); }
public GMailServiceTests() { //Before running the test, fill it in with the appsetting secret value _networkCredentialsMock = new Mock <NetworkCredential>("username here", "password here"); _smtpClientMock = new Mock <SmtpClient>("smtp.gmail.com", 587); _sut = new GMailService(_smtpClientMock.Object, _networkCredentialsMock.Object); }
public ActionResult TestEmail(TestEmailViewModel model) { var userId = User.Identity.GetUserId(); GMailService.SendMail(model.EmailTo, model.Subject, model.Body, userId); return(View()); }
public new Task <GmailMessage> ExecuteAsync() { if (UserId != "me") { throw new Exception("User ID not support"); } var mime = GMailService.DecodeToMessage(Body.Raw); return(Task.FromResult(this.Body)); }
public Task SendAsync(IdentityMessage message) { // Plug in your email service here to send an email. return(Task.Run(() => { // Use google mail provider. GMailService.SendMail(message.Destination, message.Subject, message.Body); })); }
public JsonNetResult SendMail(ContactViewModel contact) { const string newline = "<br/>"; var result = new JsonNetResult { Data = $"E:{contact.EmailAddress} M:{contact.Message}N:{contact.Name}S:{contact.Subject}" }; GMailService.SendMail( EnvironmentSecret.Instance.EmailAdmin, $"Contact From {contact.EmailAddress} : {contact.Subject} on {EnvironmentService.Stage}", $"{EnvironmentService.Environment()}Contact Name:{contact.Name}{newline}Contact Email:{contact.EmailAddress}{newline}Message:{contact.Message}"); return(result); }
protected override void OnApplicationError(object sender, EventArgs e) { const string newline = "<br/>"; base.OnApplicationError(sender, e); Exception exc = Server.GetLastError(); string innerException = exc.InnerException?.ToString() ?? "No inner exception"; GMailService.SendMail(EnvironmentSecret.Instance.EmailAdmin, $"Global Application Error on {EnvironmentService.Stage} {EnvironmentService.Domain}", EnvironmentService.Environment() + newline + "Error Message:" + exc.Message + newline + "Stack Trace:" + exc.StackTrace + newline + "Inner Exception:" + innerException + newline); }
/// <inheritdoc/> public IMailService InitMailService(string token, TimeZoneInfo timeZoneInfo, MailSource source) { switch (source) { case MailSource.Microsoft: var serviceClient = GraphClient.GetAuthenticatedClient(token, timeZoneInfo); return(new MSGraphMailAPI(serviceClient, timeZoneInfo)); case MailSource.Google: var googleClient = GoogleClient.GetGoogleClient(_settings); var googleServiceClient = GMailService.GetServiceClient(googleClient, token); return(new GMailService(googleServiceClient)); default: throw new Exception("Event Type not Defined"); } }
public ActionResult ManageProfile(ApplicationUser model, string action) { if (ModelState.IsValid) { ApplicationUser u = UserManager.FindById(model.Id); if (action == "Delete") { UserManager.Delete(u); AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); } else { if (model.WhatsAppMember && (u.WhatsAppMember != model.WhatsAppMember) && (model.PhoneNumber.Length > 0)) { // New request to join whats app group. GMailService.SendMailNewWhatsAppMember(u.UserName, model.PhoneNumber); } u.WhatsAppMember = model.WhatsAppMember; u.PhoneNumber = model.PhoneNumber; u.NewsSubscription = model.NewsSubscription; u.Name = model.Name; if (model.AddressId != -1) { u.AddressId = model.AddressId; } UserManager.Update(u); } return(RedirectToAction("Index", "Home")); } return(View(model)); }