private void SendMail(EMessageAction action, EMessageStyle style, string name, DateTime date) { PlainTextMessage mess = new PlainTextMessage(action, style, name, date); HTMLMessage htmmess = new HTMLMessage(action, style, name, date); MailMessage mailMessage = new MailMessage(); // Direciones mailMessage.From = new MailAddress(_source); mailMessage.To.Add(_destination); // Asunto mailMessage.Subject = mess.Subject; // Cuerpo en texto plano mailMessage.Body = mess.Body; // Add HTML View AlternateView altHtml = AlternateView.CreateAlternateViewFromString(htmmess.Body, null, "text/html"); mailMessage.AlternateViews.Add(altHtml); try { EnviaEmail(mailMessage); } catch (Exception ex) { Builder.Output(string.Format("{0}.SendMail: Ocurrió una excepción: {1}", ClassName, ex.Message), TraceEventType.Error); throw ex; } }
private void SendMail(EMessageAction action, DateTime date, ClientData client) { // incorporar el estilo en dependencia de la accion EMessageStyle style; switch (action) { case EMessageAction.Timeout: case EMessageAction.Restart: style = EMessageStyle.Alert; break; case EMessageAction.Dead: style = EMessageStyle.Alarm; break; case EMessageAction.SysStart: case EMessageAction.SysEnd: case EMessageAction.Operational: case EMessageAction.Pause: case EMessageAction.Resume: default: style = EMessageStyle.Info; break; } SendMail(action, style, client, date); }
// Constructor public PlainTextMessage(EMessageAction action, EMessageStyle style, string client, DateTime date) { Action = action; Style = style; RealTimeDate = date; ClientName = client; }
private void SendMail(EMessageAction action, DateTime date) { // Para notificar eventos del sistema de monitoreo y no de los clientes if (action == EMessageAction.SysStart | action == EMessageAction.SysEnd) { SendMail(action, EMessageStyle.Info, "Sistema de Monitoreo", date); } }
private void SendMail(EMessageAction action, EMessageStyle style, ClientData client, DateTime date) { PlainTextMessage mess = new PlainTextMessage(action, style, client.Name, date); HTMLMessage htmmess = new HTMLMessage(action, style, client.Name, date); MailMessage mailMessage = new MailMessage(); // Direciones mailMessage.From = new MailAddress(_source); mailMessage.To.Add(_destination); // Asunto mailMessage.Subject = mess.Subject; // Cuerpo en texto plano mailMessage.Body = mess.Body; // Add HTML View AlternateView altHtml = AlternateView.CreateAlternateViewFromString(htmmess.Body, null, "text/html"); mailMessage.AlternateViews.Add(altHtml); // Incorporar adjunto si esta configurado en el cliente // y es una accion Timeout o Dead bool UseAttach = client.LogAttachEnabled && (action == EMessageAction.Timeout) || (action == EMessageAction.Dead); FileStream fs = null; if (UseAttach && File.Exists(client.LogFilePath)) { fs = new FileStream(client.LogFilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); mailMessage.Attachments.Add(new Attachment(fs, "Archivo Log", "text/plain")); } try { EnviaEmail(mailMessage); } catch (Exception ex) { Builder.Output(string.Format("{0}.SendMail: Ocurrió una excepción: {1}", ClassName, ex.Message), TraceEventType.Error); throw ex; } finally { if (fs != null) { fs.Close(); } } }
public RequestSendEmail(EMessageAction action, DateTime date, ClientData client) { Action = action; Date = date; Client = client; }
public RequestSendEmail(EMessageAction action, DateTime date) { Action = action; Date = date; Client = null; }
public HTMLMessage(EMessageAction action, EMessageStyle style, string client, DateTime date) : base(action, style, client, date) { }