Ir al contenido

Conector Alert

El conector Alert envía notificaciones cuando se cumplen condiciones.

Tipo de Conector: MeddleAlert

Tipos de Notificación: Email

{
"type": "MeddleAlert",
"config": {
"name": "High Temperature Alert",
"condition": "temperature > 80",
"minDuration": 10,
"cooldown": 300,
"notification": {
"type": "Email",
"smtpHost": "smtp.example.com",
"smtpPort": 587,
"smtpUser": "alerts@example.com",
"smtpPass": "password",
"fromEmail": "alerts@example.com",
"toEmails": ["operator@example.com", "manager@example.com"],
"subject": "Temperature Alert",
"body": "Temperature exceeded threshold"
}
}
}
  • name: Nombre de alerta para identificación
  • condition: Expresión MXL para condición de activación
  • minDuration: Segundos mínimos que la condición debe ser verdadera antes de alertar
  • cooldown: Segundos a esperar antes de enviar otra alerta
  • notification: Configuración de notificación
  • type: "Email"
  • smtpHost: Nombre de host del servidor SMTP
  • smtpPort: Puerto del servidor SMTP (típicamente 587 o 465)
  • smtpUser: Usuario SMTP
  • smtpPass: Contraseña SMTP
  • fromEmail: Dirección de email del remitente
  • toEmails: Array de direcciones de email de destinatarios
  • subject: Asunto del email
  • body: Texto del cuerpo del email

Usa expresiones MXL para condiciones:

temperature > 80
pressure < 10
temperature > 80 && pressure < 10
humidity > 60 || temperature > 25
status == "error"

Ver Referencia MXL para sintaxis completa.

Previene falsas alarmas requiriendo que la condición sea verdadera por una duración mínima:

{
"minDuration": 10
}

La condición debe ser verdadera durante 10 segundos antes de que se envíe la alerta.

Previene spam de alertas esperando entre notificaciones:

{
"cooldown": 300
}

Después de enviar una alerta, espera 300 segundos (5 minutos) antes de enviar otra.

{
"type": "MeddleAlert",
"config": {
"name": "Freezer Temperature Alert",
"condition": "temperature > -10",
"minDuration": 30,
"cooldown": 600,
"notification": {
"type": "Email",
"smtpHost": "smtp.gmail.com",
"smtpPort": 587,
"smtpUser": "alerts@company.com",
"smtpPass": "app-password",
"fromEmail": "alerts@company.com",
"toEmails": ["maintenance@company.com"],
"subject": "Freezer Temperature Warning",
"body": "Freezer temperature is above -10°C"
}
}
}
{
"type": "MeddleAlert",
"config": {
"name": "Machine Stopped",
"condition": "status == \"stopped\" && runtime > 0",
"minDuration": 60,
"cooldown": 1800,
"notification": {
"type": "Email",
"smtpHost": "smtp.example.com",
"smtpPort": 587,
"smtpUser": "alerts@factory.com",
"smtpPass": "password",
"fromEmail": "alerts@factory.com",
"toEmails": ["supervisor@factory.com", "maintenance@factory.com"],
"subject": "Machine Stopped Alert",
"body": "Production machine has stopped unexpectedly"
}
}
}
{
"smtpHost": "smtp.gmail.com",
"smtpPort": 587,
"smtpUser": "your-email@gmail.com",
"smtpPass": "app-specific-password"
}

Nota: Usa Contraseñas de Aplicación para Gmail.

{
"smtpHost": "smtp.office365.com",
"smtpPort": 587,
"smtpUser": "your-email@company.com",
"smtpPass": "your-password"
}
{
"smtpHost": "mail.example.com",
"smtpPort": 587,
"smtpUser": "alerts@example.com",
"smtpPass": "password"
}
  1. Establece minDuration apropiada - Evita falsas alarmas
  2. Usa cooldown razonable - Previene fatiga de alertas
  3. Prueba configuración SMTP - Verifica que los emails se entreguen
  4. Usa nombres descriptivos - Identifica alertas fácilmente
  5. Incluye contexto en el cuerpo - Haz las alertas accionables
  • Verifica credenciales SMTP
  • Verifica host y puerto SMTP
  • Asegúrate de que el firewall permita tráfico SMTP
  • Prueba conexión SMTP por separado
  • Verifica carpeta de spam
  • Aumenta minDuration
  • Aumenta cooldown
  • Refina la condición para ser más específica
  • Disminuye minDuration
  • Verifica lógica de condición
  • Verifica que los datos fluyan a través del conector