Geopolitische Breaking-News-Alarm

Experte

Dies ist ein Market Research, AI Summarization-Bereich Automatisierungsworkflow mit 30 Nodes. Hauptsächlich werden If, Code, Merge, Telegram, DataTable und andere Nodes verwendet. Verwende KI-Bewertungen und Telegram-Warnungen, um geopolitische Breaking News zu filtern

Voraussetzungen
  • Telegram Bot Token
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "id": "lShjTFAvAhSAuAA6",
  "meta": {
    "instanceId": "083ea1756bbf8db2f276e993d532dc5e33f75383025a15da854248b05c1849de"
  },
  "name": "Geopolitics Breaking News Alert",
  "tags": [],
  "nodes": [
    {
      "id": "7bc7ba9e-31e0-4196-8d00-9f71ff966444",
      "name": "Alle 30 Minuten",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -592,
        384
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 30
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "46266983-54ba-4977-b6af-dabc6ee1ed4a",
      "name": "NYT RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        112
      ],
      "parameters": {
        "url": "https://rss.nytimes.com/services/xml/rss/nyt/World.xml",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "05342734-972c-49d1-82d7-3622f96f42f1",
      "name": "TOI RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        240
      ],
      "parameters": {
        "url": "https://timesofindia.indiatimes.com/rssfeedstopstories.cms",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "2f195f01-5e2e-439b-9954-a25f902f399f",
      "name": "Al Jazeera RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        368
      ],
      "parameters": {
        "url": "https://www.aljazeera.com/xml/rss/all.xml",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "13811cd7-80cb-43cf-a18d-ecebfb56eea9",
      "name": "BBC RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        528
      ],
      "parameters": {
        "url": "http://feeds.bbci.co.uk/news/world/rss.xml",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "e29a459e-5fbf-4703-bcfc-e389b36d7b89",
      "name": "Dynamischer Filter",
      "type": "n8n-nodes-base.code",
      "position": [
        640,
        368
      ],
      "parameters": {
        "jsCode": "// Dynamic Filter Node - Config-Driven Filtering\n  const config = $('Load Config from Google Drive').first().json;\n\n  const primaryKeywords = config.primary_keywords;\n  const secondaryKeywords = config.secondary_keywords;\n\n  const filtered = [];\n\n  for (const item of $input.all()) {\n    const text = `${item.json.title} ${item.json.contentSnippet}`.toLowerCase();\n\n    // Must mention at least one primary keyword\n    const hasPrimary = primaryKeywords.some(kw => text.includes(kw.toLowerCase()));\n\n    // Must mention at least one secondary keyword\n    const hasSecondary = secondaryKeywords.some(kw => text.includes(kw.toLowerCase()));\n\n    if (hasPrimary && hasSecondary) {\n      filtered.push({\n        json: {\n          ...item.json,\n          config: config\n        }\n      });\n    }\n  }\n\n  return filtered;"
      },
      "typeVersion": 2
    },
    {
      "id": "4e7b8918-071d-43da-b39a-68f09d1aa720",
      "name": "Eilmeldungsalarm senden",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2032,
        576
      ],
      "webhookId": "271ae674-a0c3-4b7f-a986-e8709bcd6d2d",
      "parameters": {
        "text": "=={{ $json.message }}",
        "chatId": "={{ $json.config.telegram_chat_id }}",
        "additionalFields": {
          "parse_mode": "HTML"
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "TlRyprl4PMViOx6S",
          "name": "Telegram account 2"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ba46bf0d-81a8-4ea5-8973-79452159ed0a",
      "name": "Eilmeldungsanalysator",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1136,
        368
      ],
      "parameters": {
        "text": "={{ \"Analyze this article:\\n\\nTitle: \" + $json.title + \"\\n\\nContent: \" + $json.contentSnippet + \"\\n\\nLink: \" +\n  $json.link + \"\\n\\nSource: \" + $json.source + \"\\n\\nPublished: \" + $json.pubDate }}",
        "options": {
          "systemMessage": "={{ $json.systemPrompt }}"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "2fd4e417-8ac3-42eb-9a30-c7b9a1346317",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1104,
        576
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {
          "temperature": 0.3
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "7os4DH2Wu3pY84Oy",
          "name": "N8N Key"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "01953c30-52e2-46cd-8255-ec7373d1ff40",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1312,
        560
      ],
      "parameters": {
        "jsonSchemaExample": "{\n    \"score\": 8,\n    \"category\": \"Trade Policy\",\n    \"alert_topic\": \"India announces new tariffs on Chinese imports\",\n    \"alert_description\": \"Government unveils comprehensive tariff structure affecting electronics and manufacturing sectors\",\n    \"impact\": \"Significant escalation in trade tensions, potential retaliation expected\",\n    \"source\": \"Times of India\",\n    \"timestamp\": \"2025-10-25T20:30:00+05:30\",\n    \"link\": \"https://timesofindia.indiatimes.com/article/12345\",\n    \"should_alert\": true\n  }"
      },
      "typeVersion": 1.3
    },
    {
      "id": "5c161610-bfa8-4da1-a82a-23666d185de6",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        1664,
        592
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "8d463a8b-52db-4065-80cd-b6f6ff5ed5ec",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              },
              "leftValue": "={{ $json.output.should_alert }}",
              "rightValue": {}
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "edda078a-b0be-4ee3-845f-88aa6851416a",
      "name": "SCMP RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        704
      ],
      "parameters": {
        "url": "https://www.scmp.com/rss/3/feed",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "95b00893-33a7-4b6c-b365-11c317760351",
      "name": "NDTV RSS-Feed",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        0,
        880
      ],
      "parameters": {
        "url": "https://feeds.feedburner.com/ndtvnews-top-stories",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "393a1952-9bb8-416b-8096-09c8d5b81ff0",
      "name": "Auf Duplikate prüfen",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        800,
        368
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "keyName": "article_link",
              "keyValue": "=={{ $json.link }}"
            }
          ]
        },
        "matchType": "allConditions",
        "operation": "rowNotExists",
        "dataTableId": {
          "__rl": true,
          "mode": "list",
          "value": "pYQedxIAvf9PQdAF",
          "cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
          "cachedResultName": "analyzed_articles"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "92a6bdd3-bc80-46e7-b0a3-3b806ef3bdc1",
      "name": "Analysierten Artikel aufzeichnen",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1504,
        272
      ],
      "parameters": {
        "columns": {
          "value": {
            "score": "={{ $json.output.score }}",
            "title": "=={{ $json.output.alert_topic }}",
            "analyzed_at": "={{ $now.toISO() }}",
            "article_link": "=={{ $json.output.link }}"
          },
          "schema": [
            {
              "id": "article_link",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "article_link",
              "defaultMatch": false
            },
            {
              "id": "title",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "title",
              "defaultMatch": false
            },
            {
              "id": "analyzed_at",
              "type": "dateTime",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "analyzed_at",
              "defaultMatch": false
            },
            {
              "id": "score",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "score",
              "defaultMatch": false
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "dataTableId": {
          "__rl": true,
          "mode": "list",
          "value": "pYQedxIAvf9PQdAF",
          "cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
          "cachedResultName": "analyzed_articles"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4ff7d6dc-8421-439d-a98a-3e8233dbedd3",
      "name": "Alte Einträge bereinigen",
      "type": "n8n-nodes-base.dataTable",
      "position": [
        1744,
        272
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "keyName": "analyzed_at",
              "keyValue": "={{ $now.minus({days: 7}).toISO() }}",
              "condition": "lt"
            }
          ]
        },
        "options": {},
        "operation": "deleteRows",
        "dataTableId": {
          "__rl": true,
          "mode": "list",
          "value": "pYQedxIAvf9PQdAF",
          "cachedResultUrl": "/projects/5Iw2tLn8DOp3x4nk/datatables/pYQedxIAvf9PQdAF",
          "cachedResultName": "analyzed_articles"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        288,
        304
      ],
      "parameters": {
        "numberInputs": 6
      },
      "typeVersion": 3.2
    },
    {
      "id": "54527b07-b8c7-4744-80c8-257bad8bafb6",
      "name": "Alerts aggregieren",
      "type": "n8n-nodes-base.code",
      "position": [
        1856,
        576
      ],
      "parameters": {
        "jsCode": "// Aggregate all alerts into a single message\n  const items = $input.all();\n\n  if (items.length === 0) {\n    return [];\n  }\n\n  // Get config from first item\n  const config = items[0].json.output.config || items[0].json.config;\n\n  // Build consolidated message\n  let message = `🚨 BREAKING NEWS ALERTS (${items.length} items)\\n\\n`;\n\n  items.forEach((item, index) => {\n    const output = item.json.output;\n\n    message += `━━━━━━━━━━━━━━━━━━━━\\n`;\n    message += `${index + 1}. BREAKING: ${output.category}\\n\\n`;\n    message += `📰 Source: ${output.source}\\n`;\n    message += `💥 Impact: ${output.impact}\\n\\n`;\n    message += `📌 ${output.alert_topic}\\n\\n`;\n    message += `📄 ${output.alert_description}\\n\\n`;\n    message += `🔗 Read More: ${output.link}\\n\\n`;\n    message += `⏰ Alert Time: ${output.timestamp}\\n`;\n    message += `Score: ${output.score}\\n\\n`;\n  });\n\n  // Return single item with consolidated message AND config\n  return [{\n    json: {\n      message: message,\n      config: config\n    }\n  }];"
      },
      "typeVersion": 2
    },
    {
      "id": "cd47ab51-4722-497e-874a-7b6f727c0616",
      "name": "Dynamischer KI-Prompt-Generator",
      "type": "n8n-nodes-base.code",
      "position": [
        976,
        368
      ],
      "parameters": {
        "jsCode": "// Dynamic AI Prompt Generator\n  const items = $input.all();\n  const results = [];\n\n  for (const item of items) {\n    // Get config from item or Google Drive HTTP Request node\n    const config = item.json.config || $('Load Config from Google Drive').first().json;\n\n    // Build scoring criteria text\n    let criteriaText = '';\n    for (const rule of config.scoring_criteria) {\n      criteriaText += `  • ${rule.category} (${rule.score_min}-${rule.score_max}): ${rule.description}\\n`;\n    }\n\n    // Generate dynamic system prompt\n    const systemPrompt = `You are a ${config.ai_role}. Analyze RSS articles for breaking news urgency.\n\n  BREAKING NEWS CRITERIA:\n  ${criteriaText}\n  NOT BREAKING (1-4): Routine updates, opinion pieces\n\n  INSTRUCTIONS:\n  You receive: title, contentSnippet, link, source, pubDate\n\n  1. Analyze urgency score (1-10)\n  2. If score < ${config.alert_threshold}: Set should_alert = false\n  3. If score >= ${config.alert_threshold}: Set should_alert = true\n\n  Always return ALL these fields:\n  - score: [1-10 based on breaking news urgency]\n  - category: [Category name matching the score range]\n  - alert_topic: [use the article title]\n  - alert_description: [use contentSnippet]\n  - impact: [your one-sentence impact analysis]\n  - source: [use source field]\n  - timestamp: [use pubDate]\n  - link: [use link field]\n  - should_alert: [false if score < ${config.alert_threshold}, true if score >= ${config.alert_threshold}]`;\n\n    // Add systemPrompt to item\n    results.push({\n      json: {\n        ...item.json,\n        systemPrompt: systemPrompt,\n        config: config\n      }\n    });\n  }\n\n  return results;"
      },
      "typeVersion": 2
    },
    {
      "id": "1fa522e9-1f26-4b4f-98a6-f9815d31c9e4",
      "name": "RSS_Cleanup_Node",
      "type": "n8n-nodes-base.code",
      "position": [
        448,
        368
      ],
      "parameters": {
        "jsCode": " // Strip HTML tags helper function\n  const stripHTML = (html) => {\n    if (!html) return '';\n    return html.replace(/<[^>]*>/g, '').trim();\n  };\n\n  // Process all items and normalize to required fields only\n  const cleanedItems = [];\n\n  for (const item of $input.all()) {\n    const json = item.json;\n\n    // Extract source (try multiple fields with fallback chain)\n    const source = json.creator || json['dc:creator'] || json.author || 'Unknown';\n\n    // Handle empty contentSnippet - fallback to content and strip HTML\n    const contentSnippet = json.contentSnippet || stripHTML(json.content) || '';\n\n    // Use isoDate for consistency (standardized ISO 8601 format)\n    const pubDate = json.isoDate || json.pubDate;\n\n    // Build clean item with ONLY required fields\n    cleanedItems.push({\n      json: {\n        // CRITICAL fields (order matters for readability)\n        link: json.link,                    // Unique identifier\n        title: json.title,                  // Article headline\n        contentSnippet: contentSnippet,     // Clean summary text\n        pubDate: pubDate,                   // Timestamp\n        source: source                      // Source attribution\n      }\n    });\n  }\n\n  return cleanedItems;"
      },
      "typeVersion": 2
    },
    {
      "id": "ad0208aa-904a-40fa-8f76-bd0f67e705cd",
      "name": "Konfiguration von Google Drive laden",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -336,
        384
      ],
      "parameters": {
        "url": "https://drive.usercontent.google.com/download?id=15tO_RUnFTDkANVocx0es7k9PZ-VxFLgc&export=download",
        "options": {
          "response": {
            "response": {
              "responseFormat": "json"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "c8910a76-d742-44ae-bf4b-50fa3ca4bf44",
      "name": "Konfiguration erneut anhängen",
      "type": "n8n-nodes-base.code",
      "position": [
        1504,
        592
      ],
      "parameters": {
        "jsCode": "// Re-attach config that was stripped by AI Agent\n  const items = $input.all();\n  const results = [];\n\n  for (const item of items) {\n    // Get config from earlier in the flow\n    const config = $('Load Config from Google Drive').first().json;\n\n    results.push({\n      json: {\n        ...item.json,\n        config: config\n      }\n    });\n  }\n\n  return results;"
      },
      "typeVersion": 2
    },
    {
      "id": "81d824f6-74e3-49bf-b460-fa8b700a778f",
      "name": "Notizzettel",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1264,
        64
      ],
      "parameters": {
        "width": 528,
        "height": 768,
        "content": "# Geopolitics Breaking News Alert System\n\n**Smart filtering + AI scoring for cost-efficient geopolitical monitoring**\n\nThis workflow filters 200+ daily articles down to critical breaking news alerts using keyword filtering and AI urgency scoring.\n\n## 🎯 Use Case\nMonitor any geopolitical region (India, China, Middle East, Russia-Ukraine) for breaking news. Smart dual-layer filtering reduces AI costs by 80-90%. AI scores urgency (1-10) to distinguish breaking news from routine coverage. Real-time Telegram alerts for high-priority events only.\n\n## 🔧 How it Works\n1. Schedule Trigger runs every 30min (configurable)\n2. Load Config from Google Drive (keywords, scoring rules)\n3. Fetch RSS from 6 international news sources (~200 articles)\n4. Dynamic Filter applies primary + secondary keyword logic (~5 relevant articles)\n5. Check Duplicates to skip already-analyzed articles\n6. AI Analyzer scores geopolitical urgency (1-10 scale)\n7. Send Telegram Alert for consolidated breaking news (score >= threshold)\n\n**Entire documentation available in [Github Repo](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/tree/master)**\n#. [N8N Workflow Architecture](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/ARCHITECTURE.md)\n#. [Config Files](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/tree/master/configs)\n#. [Set Up Guide](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/SETUP_GUIDE.md)\n#. [Different Use Cases](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/USE_CASES.md)"
      },
      "typeVersion": 1
    },
    {
      "id": "43e604e7-36b8-4ef9-a413-d13303419394",
      "name": "Notizzettel1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -688,
        288
      ],
      "parameters": {
        "width": 288,
        "height": 416,
        "content": "## Scheduling Node\ncurrently set at 30 mins interval but change it as per your requirements"
      },
      "typeVersion": 1
    },
    {
      "id": "761c0e99-29a2-42d1-8d77-8b050e2c5438",
      "name": "Notizzettel2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        288
      ],
      "parameters": {
        "width": 256,
        "height": 416,
        "content": "## [Loading Config Info.](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/ARCHITECTURE.md)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n[1) Link to different config json files](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/tree/master/configs)\n[2). Explanation about different config use cases](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/USE_CASES.md)"
      },
      "typeVersion": 1
    },
    {
      "id": "085d279a-499c-4b4a-b1ae-b8dbc6596d21",
      "name": "Notizzettel3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        224,
        64
      ],
      "parameters": {
        "width": 864,
        "height": 672,
        "content": "## [Pre-Processing Nodes](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/ARCHITECTURE.md)\n1. Merge Data coming from various RSS Feeds\n2. Clean up info. not required for processing\n3. Use the Primary and Secondary Filters from the Load Config File\n4. Check for Duplicate Articles (i.e articles already triggered in previous runs) \n5. Create the Dynamic Prompt Generator for use in Breaking News Analyzer Node\n"
      },
      "typeVersion": 1
    },
    {
      "id": "6a57e769-e103-4da1-bb49-1997b2594334",
      "name": "Notizzettel4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1104,
        64
      ],
      "parameters": {
        "width": 320,
        "height": 672,
        "content": "## Breaking News Analyzer\n1. Used to [Score Articles](https://github.com/devdutta/n8n-geopolitics-breaking-news-alert/blob/master/USE_CASES.md#customizing-scoring-mechanism) for different Alert Levels via the Dynamic System Prompt Generator using Scoring Rules coming from Config Files\n2. Uses AI Agent with Open AI Chat Model running gpt-4o-mini (with temperature set at 0.3 for consistent results)"
      },
      "typeVersion": 1
    },
    {
      "id": "44db6207-6985-44a7-b86b-4cdfcf267b62",
      "name": "Notizzettel5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -112,
        64
      ],
      "parameters": {
        "width": 320,
        "height": 960,
        "content": "## Uses 6 RSS News Feeds"
      },
      "typeVersion": 1
    },
    {
      "id": "4e0237b2-ec6b-4494-9b0d-ce3fb7b831d3",
      "name": "Notizzettel6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1456,
        64
      ],
      "parameters": {
        "width": 752,
        "height": 352,
        "content": "## Data Insertion and Clean Up Nodes\n1. Inserts all articles into the \"analyzed_articles\" n8n Data Table so that duplicate article checks can be done on next runs\n2. Clean Up Node - removes articles from \"analyzed_articles\" N8N Data Table for articles which are more than 7 days old"
      },
      "typeVersion": 1
    },
    {
      "id": "4ac931f5-7399-4b3c-b731-21a42aeaf52f",
      "name": "Notizzettel7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1456,
        432
      ],
      "parameters": {
        "width": 752,
        "height": 304,
        "content": "## Post-Processing Nodes\n1. Re-attach Config - To bring the \"alert_threshold\" (Scoring Threshold) value from the upstream Config Files\n2. If Node - Only pass the Articles >6 score to the True Branch (alert_threshold is set to 6)\n3. Aggregate Alerts- Aggregates All Alerts passing the threshold\n4. Telegram Message Node - Send the aggregated messages to Telegram Chat Node using the Telegram Chat Id again referenced from the Config Files"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "d1251d3e-6269-4e02-a2cc-2a6322d81169",
  "connections": {
    "5c161610-bfa8-4da1-a82a-23666d185de6": {
      "main": [
        [
          {
            "node": "54527b07-b8c7-4744-80c8-257bad8bafb6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d339eb01-08c7-4d8b-9ed4-bfb88816f915": {
      "main": [
        [
          {
            "node": "1fa522e9-1f26-4b4f-98a6-f9815d31c9e4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "13811cd7-80cb-43cf-a18d-ecebfb56eea9": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 3
          }
        ]
      ]
    },
    "46266983-54ba-4977-b6af-dabc6ee1ed4a": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "05342734-972c-49d1-82d7-3622f96f42f1": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "95b00893-33a7-4b6c-b365-11c317760351": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "edda078a-b0be-4ee3-845f-88aa6851416a": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "e29a459e-5fbf-4703-bcfc-e389b36d7b89": {
      "main": [
        [
          {
            "node": "393a1952-9bb8-416b-8096-09c8d5b81ff0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "54527b07-b8c7-4744-80c8-257bad8bafb6": {
      "main": [
        [
          {
            "node": "4e7b8918-071d-43da-b39a-68f09d1aa720",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7bc7ba9e-31e0-4196-8d00-9f71ff966444": {
      "main": [
        [
          {
            "node": "ad0208aa-904a-40fa-8f76-bd0f67e705cd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1fa522e9-1f26-4b4f-98a6-f9815d31c9e4": {
      "main": [
        [
          {
            "node": "e29a459e-5fbf-4703-bcfc-e389b36d7b89",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c8910a76-d742-44ae-bf4b-50fa3ca4bf44": {
      "main": [
        [
          {
            "node": "5c161610-bfa8-4da1-a82a-23666d185de6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2fd4e417-8ac3-42eb-9a30-c7b9a1346317": {
      "ai_languageModel": [
        [
          {
            "node": "ba46bf0d-81a8-4ea5-8973-79452159ed0a",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "2f195f01-5e2e-439b-9954-a25f902f399f": {
      "main": [
        [
          {
            "node": "d339eb01-08c7-4d8b-9ed4-bfb88816f915",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "393a1952-9bb8-416b-8096-09c8d5b81ff0": {
      "main": [
        [
          {
            "node": "cd47ab51-4722-497e-874a-7b6f727c0616",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter India Keywords": {
      "main": [
        [
          {
            "node": "393a1952-9bb8-416b-8096-09c8d5b81ff0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ba46bf0d-81a8-4ea5-8973-79452159ed0a": {
      "main": [
        [
          {
            "node": "c8910a76-d742-44ae-bf4b-50fa3ca4bf44",
            "type": "main",
            "index": 0
          },
          {
            "node": "92a6bdd3-bc80-46e7-b0a3-3b806ef3bdc1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "92a6bdd3-bc80-46e7-b0a3-3b806ef3bdc1": {
      "main": [
        [
          {
            "node": "4ff7d6dc-8421-439d-a98a-3e8233dbedd3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "01953c30-52e2-46cd-8255-ec7373d1ff40": {
      "ai_outputParser": [
        [
          {
            "node": "ba46bf0d-81a8-4ea5-8973-79452159ed0a",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "cd47ab51-4722-497e-874a-7b6f727c0616": {
      "main": [
        [
          {
            "node": "ba46bf0d-81a8-4ea5-8973-79452159ed0a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ad0208aa-904a-40fa-8f76-bd0f67e705cd": {
      "main": [
        [
          {
            "node": "46266983-54ba-4977-b6af-dabc6ee1ed4a",
            "type": "main",
            "index": 0
          },
          {
            "node": "05342734-972c-49d1-82d7-3622f96f42f1",
            "type": "main",
            "index": 0
          },
          {
            "node": "2f195f01-5e2e-439b-9954-a25f902f399f",
            "type": "main",
            "index": 0
          },
          {
            "node": "13811cd7-80cb-43cf-a18d-ecebfb56eea9",
            "type": "main",
            "index": 0
          },
          {
            "node": "edda078a-b0be-4ee3-845f-88aa6851416a",
            "type": "main",
            "index": 0
          },
          {
            "node": "95b00893-33a7-4b6c-b365-11c317760351",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - Marktforschung, KI-Zusammenfassung

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes30
Kategorie2
Node-Typen12
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Dev Dutta

Dev Dutta

@devdutta

Data and Product Analytics| Business Intelligence| Data Governance| Tech. Strategy| Driving Digital Transformation Programs| Process Automation | Agentic AI

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34