private void BeginEventPaging(PrinterEvent newPrinterEvent) { ShortMessageService smsPacket = CreateSmsPacket(newPrinterEvent, EmailAddress); if (!string.IsNullOrEmpty(smsPacket.Message)) { if (PagingEnabled) { ShortMessageService.Send(smsPacket); } WriteToRawConsole($"{smsPacket.ViaEmailAddress} [SUB: {smsPacket.Subject}] [MSG: {smsPacket.Message}]"); } }
private static ShortMessageService CreateSmsPacket(PrinterEvent newPrinterEvent, string emailAddress) { var newPacket = new ShortMessageService { ViaEmailAddress = emailAddress, }; newPacket.Subject = newPrinterEvent.Status; while (newPacket.Subject.Contains(" ")) { newPacket.Subject = newPacket.Subject.Replace(" ", " "); } newPacket.Message = newPrinterEvent.ToString(); return(newPacket); }
public static void Send(ShortMessageService newPacket) { string smtpSender = "*****@*****.**"; int smtpPort = 25; int timeout = 5000; string hostName = "smtp.larc.nasa.gov"; if (newPacket != null) { using (var mail = new MailMessage(smtpSender, newPacket.ViaEmailAddress)) { mail.Subject = newPacket.Subject; mail.Body = newPacket.Message; using (var client = new SmtpClient()) { client.Port = smtpPort; client.Timeout = timeout; client.UseDefaultCredentials = true; client.Host = hostName; try { client.Send(mail); } catch (SmtpException) { MessageBox.Show("Failed to send page. SMTP connection timed out.", "Message", MessageBoxButtons.OK); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error Message", MessageBoxButtons.OK); throw; } }; }; } }