AutomationFlowsSlack & Telegram › Otdr Vodafone Alerts

Otdr Vodafone Alerts

OTDR Vodafone Alerts. Uses emailSend, slack, googleSheets. Webhook trigger; 9 nodes.

Webhook trigger★★★★☆ complexity9 nodesEmail SendSlackGoogle Sheets
Slack & Telegram Trigger: Webhook Nodes: 9 Complexity: ★★★★☆ Added:

This workflow follows the Emailsend → Google Sheets recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "OTDR Vodafone Alerts",
  "nodes": [
    {
      "parameters": {
        "httpMethod": "POST",
        "path": "otdr-alerts",
        "responseMode": "lastNode",
        "options": {}
      },
      "name": "Webhook \u2014 Receive from FastAPI",
      "type": "n8n-nodes-base.webhook",
      "position": [
        200,
        300
      ]
    },
    {
      "parameters": {
        "conditions": {
          "boolean": [
            {
              "value1": "={{$json[\"should_alert\"]}}",
              "value2": true
            }
          ]
        }
      },
      "name": "Should Alert?",
      "type": "n8n-nodes-base.if",
      "position": [
        420,
        300
      ]
    },
    {
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$json[\"severity\"]}}",
              "operation": "equals",
              "value2": "CRITICAL"
            }
          ]
        }
      },
      "name": "Is CRITICAL?",
      "type": "n8n-nodes-base.if",
      "position": [
        640,
        200
      ]
    },
    {
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$json[\"severity\"]}}",
              "operation": "equals",
              "value2": "HIGH"
            }
          ]
        }
      },
      "name": "Is HIGH?",
      "type": "n8n-nodes-base.if",
      "position": [
        640,
        400
      ]
    },
    {
      "parameters": {
        "fromEmail": "otdr-alerts@vodafone.de",
        "toEmail": "manager@vodafone.de",
        "subject": "=\ud83d\udea8 KRITISCH: OTDR Alarm \u2014 {{$json[\"technician\"]}} \u2014 {{$json[\"location\"]}}",
        "text": "=KRITISCHER OTDR ALARM\n=============================\n{{$json[\"summary_line\"]}}\n\nTechniker  : {{$json[\"technician\"]}}\nAuftrag    : {{$json[\"order_number\"]}}\nStandort   : {{$json[\"location\"]}}\nGPS        : {{$json[\"gps_lat\"]}}, {{$json[\"gps_lon\"]}}\nAdresse    : {{$json[\"gps_address\"]}}\nGoogle Maps: {{$json[\"maps_link\"]}}\nZeit       : {{$json[\"timestamp_human\"]}}\nDatei      : {{$json[\"filename\"]}}\n\nErgebnis   : {{$json[\"overall_pass\"] ? \"BESTANDEN\" : \"FEHLGESCHLAGEN\"}}\nSchwere    : {{$json[\"severity\"]}}\n\nFehlgeschlagene Pr\u00fcfungen:\n{{$json[\"failed_checks\"].map(c => `  - ${c.parameter}: ${c.measured} (Limit: ${c.threshold})`).join('\\n')}}\n\nML Ereignisse: {{$json[\"ml_event_count\"]}} erkannt, {{$json[\"ml_suspicious_count\"]}} verd\u00e4chtig\n\nKI-Analyse:\n{{$json[\"ai_summary\"]}}\n\n---\nOTDR System \u2014 Vodafone Deutschland"
      },
      "name": "Email CRITICAL \u2014 Management",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        860,
        100
      ]
    },
    {
      "parameters": {
        "authentication": "webhook",
        "resource": "message",
        "operation": "post",
        "channel": "vodafone-otdr-alerts",
        "text": "=:rotating_light: *KRITISCHER OTDR ALARM*\n\n*{{$json[\"summary_line\"]}}*\n\n:technologist: Techniker: {{$json[\"technician\"]}}\n:clipboard: Auftrag: {{$json[\"order_number\"]}}\n:round_pushpin: Standort: {{$json[\"location\"]}}\n:world_map: <{{$json[\"maps_link\"]}}|Google Maps \u00f6ffnen>\n:clock3: Zeit: {{$json[\"timestamp_human\"]}}\n\n:x: Fehlgeschlagen: {{$json[\"failed_count\"]}} Checks\n:warning: ML verd\u00e4chtig: {{$json[\"ml_suspicious_count\"]}} Ereignisse\n\nKI: {{$json[\"ai_summary\"].substring(0,200)}}..."
      },
      "name": "Slack/Teams CRITICAL",
      "type": "n8n-nodes-base.slack",
      "position": [
        860,
        220
      ]
    },
    {
      "parameters": {
        "fromEmail": "otdr-alerts@vodafone.de",
        "toEmail": "supervisor@vodafone.de",
        "subject": "=\u274c OTDR Fehlgeschlagen \u2014 {{$json[\"technician\"]}} \u2014 {{$json[\"location\"]}}",
        "text": "=OTDR MESSUNG FEHLGESCHLAGEN\n=============================\n{{$json[\"summary_line\"]}}\n\nTechniker  : {{$json[\"technician\"]}}\nAuftrag    : {{$json[\"order_number\"]}}\nStandort   : {{$json[\"location\"]}}\nGPS        : {{$json[\"gps_lat\"]}}, {{$json[\"gps_lon\"]}}\nAdresse    : {{$json[\"gps_address\"]}}\nMaps       : {{$json[\"maps_link\"]}}\nZeit       : {{$json[\"timestamp_human\"]}}\n\nFehlgeschlagene Checks:\n{{$json[\"failed_checks\"].map(c => `  - ${c.parameter}: ${c.measured} (Limit: ${c.threshold})`).join('\\n')}}\n\nML: {{$json[\"ml_event_count\"]}} Ereignisse erkannt\n\nKI-Analyse:\n{{$json[\"ai_summary\"]}}"
      },
      "name": "Email HIGH \u2014 Supervisor",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        860,
        380
      ]
    },
    {
      "parameters": {
        "fromEmail": "otdr-alerts@vodafone.de",
        "toEmail": "team@vodafone.de",
        "subject": "=\u26a0\ufe0f OTDR Warnung \u2014 {{$json[\"technician\"]}} \u2014 {{$json[\"location\"]}}",
        "text": "=OTDR WARNUNG / MEDIUM PRIORITY\n\n{{$json[\"summary_line\"]}}\n\nTechniker: {{$json[\"technician\"]}}\nStandort : {{$json[\"location\"]}}\nZeit     : {{$json[\"timestamp_human\"]}}\nMaps     : {{$json[\"maps_link\"]}}\n\nBitte \u00fcberpr\u00fcfen."
      },
      "name": "Email MEDIUM/WARNING \u2014 Team",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        860,
        560
      ]
    },
    {
      "parameters": {
        "operation": "append",
        "documentId": "YOUR_GOOGLE_SHEET_ID",
        "sheetName": "Messungen",
        "columns": {
          "mappingMode": "defineBelow",
          "value": {
            "Datum": "={{$json[\"date\"]}}",
            "Uhrzeit": "={{$json[\"time\"]}}",
            "Techniker": "={{$json[\"technician\"]}}",
            "Auftrag": "={{$json[\"order_number\"]}}",
            "Standort": "={{$json[\"location\"]}}",
            "GPS Lat": "={{$json[\"gps_lat\"]}}",
            "GPS Lon": "={{$json[\"gps_lon\"]}}",
            "GPS Adresse": "={{$json[\"gps_address\"]}}",
            "GPS Genauigkeit": "={{$json[\"gps_accuracy\"]}}",
            "GPS Methode": "={{$json[\"gps_method\"]}}",
            "GPS Verifiziert": "={{$json[\"gps_verified\"]}}",
            "GPS Abstand (m)": "={{$json[\"gps_distance_from_plan_m\"]}}",
            "Ergebnis": "={{$json[\"overall_pass\"] ? \"BESTANDEN\" : \"FEHLGESCHLAGEN\"}}",
            "Schwere": "={{$json[\"severity\"]}}",
            "Bestanden": "={{$json[\"passed_count\"]}}",
            "Fehler": "={{$json[\"failed_count\"]}}",
            "ML Ereignisse": "={{$json[\"ml_event_count\"]}}",
            "ML Verd\u00e4chtig": "={{$json[\"ml_suspicious_count\"]}}",
            "Maps Link": "={{$json[\"maps_link\"]}}",
            "Dateiname": "={{$json[\"filename\"]}}",
            "KI Zusammenfassung": "={{$json[\"ai_summary\"]}}"
          }
        }
      },
      "name": "Google Sheets \u2014 Archive ALL",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        420,
        560
      ]
    }
  ],
  "connections": {
    "Webhook \u2014 Receive from FastAPI": {
      "main": [
        [
          {
            "node": "Should Alert?",
            "type": "main",
            "index": 0
          },
          {
            "node": "Google Sheets \u2014 Archive ALL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Should Alert?": {
      "main": [
        [
          {
            "node": "Is CRITICAL?",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Is CRITICAL?": {
      "main": [
        [
          {
            "node": "Email CRITICAL \u2014 Management",
            "type": "main",
            "index": 0
          },
          {
            "node": "Slack/Teams CRITICAL",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Is HIGH?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is HIGH?": {
      "main": [
        [
          {
            "node": "Email HIGH \u2014 Supervisor",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Email MEDIUM/WARNING \u2014 Team",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

OTDR Vodafone Alerts. Uses emailSend, slack, googleSheets. Webhook trigger; 9 nodes.

Source: https://github.com/hocinelho/otdr-einblasen-mvp/blob/2276c861c039e2f3a74c7a32babe9b95cb093b94/n8n/workflow.json — original creator credit. Request a take-down →

More Slack & Telegram workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Slack & Telegram

This workflow is a production-ready Meta Ads Webhook dispatcher for the Ad Account object. It receives webhook deliveries from Meta, returns the required acknowledgement, routes events by , logs them

Google Sheets, Slack
Slack & Telegram

Enhance financial oversight with this automated n8n workflow. Triggered every 5 minutes, it fetches real-time bank transactions via an API, enriches and transforms the data, and applies smart logic to

HTTP Request, Email Send, Google Sheets +1
Slack & Telegram

This workflow automates competitive price intelligence using Bright Data's enterprise web scraping API. On a scheduled basis (default: daily at 9 AM), the system loops through configured competitor pr

HTTP Request, Google Sheets, Slack +1
Slack & Telegram

SEO managers, content marketers, bloggers, and growth teams who want to automatically catch declining content performance before it's too late — without manually checking Google Search Console every w

HTTP Request, Google Sheets, Slack +1
Slack & Telegram

Automate tax deadline monitoring with AI-powered insights. This workflow checks your tax calendar daily at 8 AM, uses GPT-4 to analyze upcoming deadlines across multiple jurisdictions, detects overdue

Google Sheets, HTTP Request, Email Send +1