Zentralisierte Verwaltung von WhatsApp-Chats in Slack

Experte

Dies ist ein Support-Bereich Automatisierungsworkflow mit 20 Nodes. Hauptsächlich werden Slack, Filter, Switch, WhatsApp, HttpRequest und andere Nodes verwendet. WhatsApp-Chats zentral in Slack verwalten

Voraussetzungen
  • Slack Bot Token oder Webhook URL
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich

Kategorie

Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "meta": {
    "instanceId": "4e229722e6c43a4914d2d66178b48335adf795d73afbee5b0ea0c52938ef4d8e"
  },
  "nodes": [
    {
      "id": "30fcebd0-d271-47ee-98e7-e1c9db4ae1f1",
      "name": "WhatsApp Trigger",
      "type": "n8n-nodes-base.whatsAppTrigger",
      "position": [
        -2740,
        120
      ],
      "webhookId": "864469fd-2008-445c-83fe-852dac2b236a",
      "parameters": {
        "options": {},
        "updates": [
          "messages"
        ]
      },
      "credentials": {
        "whatsAppTriggerApi": {
          "id": "a41n62XWot5Pm1XE",
          "name": "WhatsApp OAuth account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "a71a46a0-72c6-43d3-a001-b9a2f57da8f5",
      "name": "Nachricht in Kanal senden",
      "type": "n8n-nodes-base.slack",
      "position": [
        -1640,
        -180
      ],
      "webhookId": "34b58325-6711-42c5-802f-177047c02da1",
      "parameters": {
        "text": "={{ $('WhatsApp Trigger').item.json.messages[0].text.body }}",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "otherOptions": {
          "includeLinkToWorkflow": false
        }
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "aef4c666-5e07-4692-b9f1-4049bb06e6c8",
      "name": "Slack Trigger",
      "type": "n8n-nodes-base.slackTrigger",
      "position": [
        -2700,
        920
      ],
      "webhookId": "88033a8d-c5a4-4226-a742-909e005bb5b3",
      "parameters": {
        "options": {},
        "trigger": [
          "message"
        ],
        "watchWorkspace": true
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b665feac-c851-4463-851f-f723a940ce80",
      "name": "Nachrichtentyp",
      "type": "n8n-nodes-base.switch",
      "position": [
        -1860,
        99
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "text",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "668fdd23-fb5c-4473-b34f-15157b2059f9",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('WhatsApp Trigger').item.json.messages[0].type }}",
                    "rightValue": "text"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "audio",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "25381929-f26b-446e-a460-baee6b2a420e",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('WhatsApp Trigger').item.json.messages[0].type }}",
                    "rightValue": "audio"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "image",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "2dbde15e-324c-46f8-82e8-ccd8084e5718",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('WhatsApp Trigger').item.json.messages[0].type }}",
                    "rightValue": "image"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "document",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "b5ed8fb5-0519-4245-81c4-84139e4b14c0",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('WhatsApp Trigger').item.json.messages[0].type }}",
                    "rightValue": "document"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "bbe095f2-914f-41b9-ad69-b47d0217e392",
      "name": "Audio-URL abrufen",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1640,
        20
      ],
      "webhookId": "cc335545-7c02-4d40-a751-0eccaaf8b3f7",
      "parameters": {
        "resource": "media",
        "operation": "mediaUrlGet",
        "mediaGetId": "={{ $('WhatsApp Trigger').item.json.messages[0].audio.id }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "yVJyvYLlRszyE5sV",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c645ad49-d722-47fe-9b1e-c8685f0322ea",
      "name": "Dokumenten-URL abrufen",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1640,
        420
      ],
      "webhookId": "b052dd6a-55b8-4195-a64e-c0088b7419cc",
      "parameters": {
        "resource": "media",
        "operation": "mediaUrlGet",
        "mediaGetId": "={{ $('WhatsApp Trigger').item.json.messages[0].document.id }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "yVJyvYLlRszyE5sV",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2c5eb333-0d26-4ce4-b4ac-a94e183d910c",
      "name": "Bild-URL abrufen",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1640,
        220
      ],
      "webhookId": "57b20ff1-0931-4eaf-8582-d0eec8bb8ad6",
      "parameters": {
        "resource": "media",
        "operation": "mediaUrlGet",
        "mediaGetId": "={{ $('WhatsApp Trigger').item.json.messages[0].image.id }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "yVJyvYLlRszyE5sV",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "78012279-114e-4b8c-bd18-3e33d537c7c8",
      "name": "Kanal erstellen",
      "type": "n8n-nodes-base.slack",
      "onError": "continueRegularOutput",
      "position": [
        -2520,
        120
      ],
      "webhookId": "233813f2-e7d7-4e00-bcf0-a97bdefd4a9e",
      "parameters": {
        "resource": "channel",
        "channelId": "={{ $('WhatsApp Trigger').item.json.messages[0].from }}",
        "channelVisibility": "private"
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "9413ee28-9b92-409a-807a-38b1139cd837",
      "name": "Alle Kanäle abrufen",
      "type": "n8n-nodes-base.slack",
      "position": [
        -2300,
        120
      ],
      "webhookId": "56a4374b-19ac-453e-b6fa-4ae9f1dc7650",
      "parameters": {
        "filters": {
          "types": [
            "private_channel"
          ]
        },
        "resource": "channel",
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "40d09c7b-aeb2-491f-864e-b92023dc8e57",
      "name": "Kanal nach Namen filtern",
      "type": "n8n-nodes-base.filter",
      "position": [
        -2080,
        120
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "586f6026-e893-46f8-ac89-4b16db24339a",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.name }}",
              "rightValue": "={{ $('WhatsApp Trigger').item.json.messages[0].from }}"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 2.2
    },
    {
      "id": "f0ed5738-9442-42a9-bc76-bd71eaf2fb5b",
      "name": "Medien hochladen",
      "type": "n8n-nodes-base.slack",
      "position": [
        -1200,
        220
      ],
      "webhookId": "88e62808-3455-4e17-9a9b-9a21216c8daa",
      "parameters": {
        "options": {
          "channelId": "={{ $('Message Type').item.json.id }}"
        },
        "resource": "file"
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "6a749b7b-78c0-4462-9019-f059d0845382",
      "name": "Medien herunterladen",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1420,
        220
      ],
      "parameters": {
        "url": "={{ $json.url }}",
        "options": {
          "response": {
            "response": {}
          }
        },
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "id": "Ihwbk0P1mYkOZZlr",
          "name": "Whatsapp APi Token"
        },
        "httpHeaderAuth": {
          "id": "Rymur2oAzX9lewU9",
          "name": "Whatsapp API Token"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "66423f74-1ce5-44e2-8b41-2dcb6d22b1a9",
      "name": "Kanal nach ID abrufen",
      "type": "n8n-nodes-base.slack",
      "position": [
        -2480,
        920
      ],
      "webhookId": "dfd24042-e341-4123-acb5-61a07e888431",
      "parameters": {
        "options": {},
        "resource": "channel",
        "channelId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.channel }}"
        },
        "operation": "get"
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "5587398a-5a6b-48b4-b056-1ef2ae40aaae",
      "name": "Nachrichtentyp prüfen",
      "type": "n8n-nodes-base.switch",
      "position": [
        -2260,
        920
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "media",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "7e42c494-a9eb-45ea-86cc-8a1e1d100fe1",
                    "operator": {
                      "type": "array",
                      "operation": "notEmpty",
                      "singleValue": true
                    },
                    "leftValue": "={{ $('Slack Trigger').item.json.files }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "text",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "f1f5bbbd-5536-4a8c-9c93-910cf51b1847",
                    "operator": {
                      "type": "string",
                      "operation": "notEmpty",
                      "singleValue": true
                    },
                    "leftValue": "={{ $('Slack Trigger').item.json.text }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "00abbd13-b397-4a8b-ac9a-5f4c7bb37823",
      "name": "Nachricht senden",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -2040,
        1020
      ],
      "webhookId": "296d05b6-53d0-4391-9a01-17d738889eba",
      "parameters": {
        "textBody": "={{ $('Slack Trigger').item.json.blocks[0].elements[0].elements[0].text }}",
        "operation": "send",
        "phoneNumberId": "=674099929114802",
        "additionalFields": {},
        "recipientPhoneNumber": "={{ $('Get Channel by ID').item.json.name }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "yVJyvYLlRszyE5sV",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "52c609ed-0085-4762-badc-5fab0e526dfe",
      "name": "Medien-URL abrufen",
      "type": "n8n-nodes-base.slack",
      "position": [
        -2040,
        820
      ],
      "webhookId": "693b6769-065e-4fb3-9548-2f37faeadc21",
      "parameters": {
        "fileId": "={{ $('Slack Trigger').item.json.files[0].id }}",
        "resource": "file",
        "operation": "get"
      },
      "credentials": {
        "slackApi": {
          "id": "5PavU8rt9kHN9pW4",
          "name": "n8n user"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "f8d972de-add6-4858-abe8-d13ceebee263",
      "name": "Medien herunterladen",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1820,
        820
      ],
      "parameters": {
        "url": "={{ $json.url_private_download }}",
        "options": {
          "response": {
            "response": {}
          }
        },
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "TTp4u7ld1rzfYb3s",
          "name": "Slack n8n"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "1552ab2b-d8c4-4324-a1a2-4a27e981f292",
      "name": "Nachricht senden1",
      "type": "n8n-nodes-base.whatsApp",
      "position": [
        -1600,
        820
      ],
      "webhookId": "dd7a6617-6a3f-4312-9b1c-b924260026a7",
      "parameters": {
        "mediaPath": "useMedian8n",
        "operation": "send",
        "messageType": "document",
        "phoneNumberId": "=674099929114802",
        "additionalFields": {},
        "recipientPhoneNumber": "={{ $('Get Channel by ID').item.json.name }}"
      },
      "credentials": {
        "whatsAppApi": {
          "id": "yVJyvYLlRszyE5sV",
          "name": "WhatsApp account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "592dd9e2-8b95-420a-910d-f6f3a5bd583e",
      "name": "Kurznotiz",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2840,
        620
      ],
      "parameters": {
        "width": 1860,
        "height": 560,
        "content": "## Slack to WhatsApp Flow\n- Trigger: Slack Trigger listens for Slack messages (text or media).\n- Message Type Handling: Checking Message Type uses a Switch to determine whether it’s text or media.\n- Text Handling: Extracts text and sends it back to WhatsApp via Send Message.\n- Media Handling: Gets media URL (Get Media URL).\n- Downloads the file (Download Media) and (presumably in the missing portion) sends it to WhatsApp as a document/media."
      },
      "typeVersion": 1
    },
    {
      "id": "23ee1ef0-ad8d-4c4a-8558-40bcbbfb1406",
      "name": "Kurznotiz1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2840,
        -200
      ],
      "parameters": {
        "width": 1860,
        "height": 780,
        "content": "## WhatsApp to Slack Flow\n- Trigger: WhatsApp Trigger listens for new WhatsApp messages.\n- Message Type Routing: Message Type node uses a Switch to check if the message is text, audio, image, or document.\n- Slack Channel Management: Checks if a private Slack channel already exists for the WhatsApp contact (from field).\n- If not, creates one using Create Channel.\n- Media Processing (for non-text): Gets WhatsApp media URL via get audio/image/document URL.\n- Downloads it (download media) and uploads to Slack using upload media.\n- Text Handling: For text, sends message directly to Slack using Send Message in Channel."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "b665feac-c851-4463-851f-f723a940ce80": {
      "main": [
        [
          {
            "node": "a71a46a0-72c6-43d3-a001-b9a2f57da8f5",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "bbe095f2-914f-41b9-ad69-b47d0217e392",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2c5eb333-0d26-4ce4-b4ac-a94e183d910c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "c645ad49-d722-47fe-9b1e-c8685f0322ea",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "52c609ed-0085-4762-badc-5fab0e526dfe": {
      "main": [
        [
          {
            "node": "f8d972de-add6-4858-abe8-d13ceebee263",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "aef4c666-5e07-4692-b9f1-4049bb06e6c8": {
      "main": [
        [
          {
            "node": "66423f74-1ce5-44e2-8b41-2dcb6d22b1a9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bbe095f2-914f-41b9-ad69-b47d0217e392": {
      "main": [
        [
          {
            "node": "f8d972de-add6-4858-abe8-d13ceebee263",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2c5eb333-0d26-4ce4-b4ac-a94e183d910c": {
      "main": [
        [
          {
            "node": "f8d972de-add6-4858-abe8-d13ceebee263",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "78012279-114e-4b8c-bd18-3e33d537c7c8": {
      "main": [
        [
          {
            "node": "9413ee28-9b92-409a-807a-38b1139cd837",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f8d972de-add6-4858-abe8-d13ceebee263": {
      "main": [
        [
          {
            "node": "f0ed5738-9442-42a9-bc76-bd71eaf2fb5b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "30fcebd0-d271-47ee-98e7-e1c9db4ae1f1": {
      "main": [
        [
          {
            "node": "78012279-114e-4b8c-bd18-3e33d537c7c8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9413ee28-9b92-409a-807a-38b1139cd837": {
      "main": [
        [
          {
            "node": "40d09c7b-aeb2-491f-864e-b92023dc8e57",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c645ad49-d722-47fe-9b1e-c8685f0322ea": {
      "main": [
        [
          {
            "node": "f8d972de-add6-4858-abe8-d13ceebee263",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "66423f74-1ce5-44e2-8b41-2dcb6d22b1a9": {
      "main": [
        [
          {
            "node": "5587398a-5a6b-48b4-b056-1ef2ae40aaae",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5587398a-5a6b-48b4-b056-1ef2ae40aaae": {
      "main": [
        [
          {
            "node": "52c609ed-0085-4762-badc-5fab0e526dfe",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "00abbd13-b397-4a8b-ac9a-5f4c7bb37823",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "40d09c7b-aeb2-491f-864e-b92023dc8e57": {
      "main": [
        [
          {
            "node": "b665feac-c851-4463-851f-f723a940ce80",
            "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 - Support

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 Nodes20
Kategorie1
Node-Typen8
Schwierigkeitsbeschreibung

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

Autor
Usman Liaqat

Usman Liaqat

@usmanliaqat

Full Stack Website Developer & Automation Expert

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34