跳转到内容

Chat Trigger · 把 Agent 接入真实入口

第 5 章 · 第 6 节

到现在你的 Agent 还只能在 n8n 编辑器里聊。最后一节:把它推出去——接到 Slack、Telegram、WhatsApp,或者嵌在你自己的网站上。

方式节点适合
n8n Chat UIChat Trigger内部使用、原型 demo
嵌入网站Chat Trigger + 前端 SDK给客户用的对外 Bot
Slack / Discord / TeamsApp Trigger(Slack Trigger 等)团队内 Bot
Telegram / WhatsAppTelegram Trigger / WhatsApp Trigger个人助手

Chat Trigger 节点生成一个公开的聊天页面 URL。打开就能聊:

💬 chat-trigger-config.txt
Chat Trigger 节点参数: Make Chat Publicly Available: ON (要打开) Authentication: None / Basic / n8n User Auth Initial Messages: "你好!我能帮你查公司手册。问吧。" Allowed Origins (CORS): * (任意网站可嵌) Title: "AI 助手" 激活 workflow 后,节点会显示两个 URL: - Chat URL(直接打开就是聊天界面) - Webhook URL(前端 SDK 用)

直接把 Chat URL 发给同事就能用了——零前端代码。

n8n 提供了一个 npm 包 @n8n/chat,几行代码嵌到任意网页:

🌐 embed-chat.txt
<!-- 你网站的 HTML --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@n8n/chat/dist/style.css" /> <script type="module"> import { createChat } from 'https://cdn.jsdelivr.net/npm/@n8n/chat/dist/chat.bundle.es.js'; createChat({ webhookUrl: 'https://n8n.example.com/webhook/<chat-trigger-id>', mode: 'window', // 或 'fullscreen' initialMessages: ['你好!'], }); </script> 效果:网页右下角出现聊天泡泡,点开就能跟你的 Agent 对话。

替换 Chat Trigger 为 Slack Trigger,输出接 Slack 发消息节点:

💼 slack-bot.txt
[Slack Trigger] 监听 @AI-Bot 的提及 Trigger Event: App Mention ↓ [AI Agent] Chat Model: OpenAI Memory: Postgres Chat Memory Session Key: ={{ $json.user }} Slack 用户 ID 作为会话 key Tool: Vector Store Tool / HTTP Tool / etc. Prompt: ={{ $json.text }} 剥掉 @ 后的纯消息 ↓ [Slack - Send Message] Channel: ={{ $('Slack Trigger').item.json.channel }} 回到原频道 Text: ={{ $json.output }} Thread: ={{ $('Slack Trigger').item.json.ts }} 回成 thread

设置好后,团队在任何 Slack 频道 @AI-Bot 帮我查... 就触发 Agent,回答会以 thread 形式回复。

方式 4 · Telegram Bot(最简单的个人助手)

Section titled “方式 4 · Telegram Bot(最简单的个人助手)”
📱 telegram-bot.txt
步骤: 1. 找 @BotFather 在 Telegram 里创建一个 bot,拿到 token 2. 在 n8n 配 Telegram Credentials,填 token 3. workflow: [Telegram Trigger] Updates: Messages ↓ [AI Agent] Memory Session Key: ={{ $json.message.chat.id }} Prompt: ={{ $json.message.text }} ↓ [Telegram - Send Message] Chat ID: ={{ $('Telegram Trigger').item.json.message.chat.id }} Text: ={{ $json.output }} 4. 激活 workflow 后,给你的 bot 发消息,就回你了。 成本:只要 OpenAI API 钱 + n8n 部署成本,自己用足够了。

默认 Agent 是”等全部生成完了一次性返回”。如果想要 ChatGPT 那种一字一字蹦的效果:

  • Chat Trigger 自带的 UI 已支持流式输出——开 Agent 的 “Enable Streaming” 即可
  • 嵌入式 chat(@n8n/chat) 同上
  • Slack / Telegram 不支持流式(API 本身不支持),只能等完整答案

Chat Trigger 支持用户上传图片/文件:

📎 file-handling.txt
Chat Trigger 配置: Allow File Uploads: ON Max File Size: 10 MB Allowed Mime Types: image/*, application/pdf 用户在 chat 里上传文件后,workflow 收到: $json.chatInput 文字部分 $json.files 上传的文件数组 下游可以: - 图片 → 加 Vision 节点(OpenAI gpt-4o vision) - PDF → 走 5.5 节那套 RAG ingest 流程

实战:把 5.5 节的 RAG 助手接到 Telegram

Section titled “实战:把 5.5 节的 RAG 助手接到 Telegram”
🎯 rag-on-telegram.txt
workflow: "RAG Telegram Bot" [Telegram Trigger] ↓ [AI Agent] Chat Model: OpenAI gpt-4o-mini Memory: Postgres Chat Memory (Session Key = chat.id) Tool: Vector Store Tool (pinecone "my-knowledge-base") Prompt: ={{ $json.message.text }} ↓ [Telegram - Send Message] Chat ID: ={{ $('Telegram Trigger').item.json.message.chat.id }} Text: ={{ $json.output }} 效果:在 Telegram 跟 bot 聊天,它能就你 5.5 节灌进去的员工手册回答问题, 跨设备记忆持久化(Postgres)。

本节要点回顾(也是整个第 5 部分回顾)

Section titled “本节要点回顾(也是整个第 5 部分回顾)”
  • 4 种入口:n8n Chat UI / 嵌入网站 / Slack-Discord / Telegram-WhatsApp
  • Slack & Telegram 接入:Trigger 节点 → AI Agent → Send Message
  • Memory Session Key 用各自的用户 ID(chat.id / user.id)
  • 流式输出:Chat UI / 嵌入式支持,IM 平台不支持
  • 文件上传:Chat Trigger 直接支持,下游接 Vision / RAG ingest
  • 生产前配 Auth、Rate Limit、PII 过滤

至此你已学完前 5 部分——核心能力已经够你独立设计大多数复杂工作流了。

下一部分 Part 6 · 实战案例集 —— 24 个真实场景的完整 workflow,每个含可视化 + 可复制 JSON。