当前位置: 首页 > news >正文

OpenClaw 中文文档 — Discord 与 Slack 接入

本文覆盖 Discord 和 Slack 两个渠道的完整接入配置。前者定位开发者社区和游戏社群,后者面向企业团队协作场景。两者的接入复杂度都高于 Telegram,但功能也更丰富。

Discord

接入架构

Discord 渠道通过官方 Discord Gateway 接入,使用 discord.js 框架。支持服务器频道和私信两种通信模式。

配置流程

Discord 的设置步骤较多,涉及 Developer Portal 操作:

第 1 步:创建应用和 Bot

在 Discord Developer Portal 创建应用,进入 Bot 页面设置用户名。

第 2 步:启用特权意图

意图 必要性 说明
Message Content Intent 必需 不开则收到的消息内容为空
Server Members Intent 推荐 角色白名单和名称解析所需
Presence Intent 可选 仅在线状态更新需要

第 3 步:获取 Bot Token 和 ID

  • Bot 页面点 Reset Token 获取 Bot Token
  • 开启 Developer Mode(User Settings → Advanced)
  • 右键服务器图标获取 Server ID
  • 右键自己头像获取 User ID

第 4 步:邀请 Bot 到服务器

OAuth2 页面生成邀请 URL,勾选 bot + applications.commands,权限选择:View Channels、Send Messages、Read Message History、Embed Links、Attach Files。

第 5 步:配置 OpenClaw

{channels: {discord: {enabled: true,token: "YOUR_BOT_TOKEN",},},
}

环境变量备选:DISCORD_BOT_TOKEN=...(仅默认账户)。Token 也支持 SecretRef 值。

第 6 步:配对

需要先在 Discord 服务器的 Privacy Settings 中开启 Direct Messages,否则 Bot 无法发送配对码。

openclaw pairing list discord
openclaw pairing approve discord <CODE>

服务器工作区配置

Discord 的一个特色是可以将服务器设置为完整的工作区,每个频道拥有独立的 Agent 会话:

{channels: {discord: {groupPolicy: "allowlist",guilds: {"SERVER_ID": {requireMention: true,users: ["USER_ID"],},},},},
}

值得注意的是,Discord 使用 guilds 而非 groups 作为服务器配置键——这与 Discord 内部术语一致(Discord 称服务器为 Guild)。

私人服务器(仅自己和 Bot)可设置 requireMention: false,无需 @提及即可回复。

特性概述

  • 线程支持:每个线程可有独立会话
  • 按频道配置:不同频道可配不同工具权限和系统提示词
  • 斜杠命令:支持注册和使用
  • 多账户:支持多个 Discord Bot 账户

Slack

接入架构

Slack 渠道基于 Bolt SDK,支持两种连接模式:Socket Mode(默认,推荐)和 HTTP Events API。

Socket Mode 配置

Socket Mode 不需要公网入口,适合大多数场景。

第 1 步:创建 Slack 应用

  • 启用 Socket Mode
  • 创建 App Token(xapp-...),权限 connections:write
  • 安装应用并获取 Bot Token(xoxb-...

第 2 步:订阅事件

订阅 Bot 事件:app_mentionmessage.channelsmessage.groupsmessage.immessage.mpimreaction_addedreaction_removed 等。同时启用 App Home 的 Messages Tab。

第 3 步:配置

{channels: {slack: {enabled: true,mode: "socket",appToken: "xapp-...",botToken: "xoxb-...",},},
}

HTTP Events API 配置

适合需要公网 webhook 的场景:

{channels: {slack: {enabled: true,mode: "http",botToken: "xoxb-...",signingSecret: "your-signing-secret",webhookPath: "/slack/events",},},
}

多账户 HTTP 模式下,每个账户需要唯一的 webhookPath 以避免冲突。

Token 模型

模式 所需 Token
Socket Mode botToken + appToken
HTTP botToken + signingSecret

可选的 userTokenxoxp-...)默认为只读行为,用于操作/目录读取。

访问控制

频道策略

频道白名单使用稳定的频道 ID。名称到 ID 的解析在启动时进行(需 Token 有相应权限)。默认使用 ID 优先匹配,直接名称匹配需显式启用 dangerouslyAllowNameMatching: true

{channels: {slack: {groupPolicy: "allowlist",channels: {"C01234567": {requireMention: true,users: ["U01234567"],},},},},
}

按频道配置支持的选项:requireMentionusers(白名单)、allowBotsskillssystemPrompttoolstoolsBySender

特色功能

交互式回复

{channels: { slack: { capabilities: { interactiveReplies: true } } },
}

启用后,Agent 可以生成 Slack Block Kit 控件:

  • [[slack_buttons: Approve:approve, Reject:reject]]
  • [[slack_select: Choose | Option1:val1, Option2:val2]]

交互回调通过 Slack 交互事件路径路由回 Agent。如果生成的区块超过 Slack 限制,自动回退到纯文本。

原生流式传输

通过 Slack Agents and AI Apps API 实现实时流式输出。需要 assistant:write 权限和 Agents and AI Apps 功能启用。

流程:首个分块启动流(chat.startStream)→ 后续分块追加(chat.appendStream)→ 结束(chat.stopStream)。媒体和非文本回退到正常投递。

命令系统

Slack 的原生命令自动模式默认关闭(与 Telegram 不同)。需要显式启用:

{ channels: { slack: { commands: { native: true } } } }

命令菜单自适应渲染:5 个以下选项用按钮,6-100 用静态选择菜单,100 以上用异步过滤。

线程行为

  • thread.historyScope 默认 thread
  • thread.initialHistoryLimit 控制新线程会话的历史注入量(默认 20)
  • replyToMode 控制回复线程行为

值得注意的差异:Slack 的 replyToMode="off" 会禁用所有回复线程(包括显式标签),而 Telegram 在 off 下仍处理显式标签。这反映了平台差异——Slack 线程将消息从频道流中隐藏,Telegram 回复在主流中可见。

故障排查

症状 检查项
频道无回复 groupPolicy → 频道白名单 → requireMention → users
私信被忽略 dm.enabled → dmPolicy → 配对/白名单
Socket 连不上 Bot Token + App Token + Socket Mode 启用状态
HTTP 无事件 signing secret → webhook 路径 → Slack Request URL

架构对比

维度 Discord Slack
框架 discord.js Bolt SDK
连接模式 Gateway Socket Mode / HTTP
群组模型 Guild → Channel Workspace → Channel → Thread
白名单标识 数字 ID Channel ID (C*) / User ID (U*)
交互控件 基础按钮 Block Kit(按钮、菜单、模态框)
流式传输 消息编辑 原生 Streaming API
命令 斜杠命令 斜杠命令 + 自适应菜单
配置复杂度 中等 较高

从架构层面来看,Slack 的功能更丰富(Block Kit、原生流式 API、自适应命令菜单),但配置复杂度也更高。Discord 相对简洁,但服务器工作区模式为每个频道提供了良好的会话隔离。

本文是渠道篇的第三篇。下一篇覆盖 iMessage 和 Signal 的接入配置。


完整中文文档:OpenClaw 中文文档

GitHub 仓库:openclaw/openclaw

http://www.jsqmd.com/news/524670/

相关文章:

  • Windows/Mac/Linux三平台实测:用Npcap抓取本地127.0.0.1数据包最全指南(附排错方法)
  • 无尽冬日客服咨询AI流量赋能,重塑智能体验新标杆 - 王老吉弄
  • Python办公自动化:用python-docx库将数据分析结果一键导出到Word(附完整代码)
  • 2026年镀铝板厂家推荐排行榜:国产/进口/唐钢/马钢/国标正品,DC51D+AS至DC53D+AS全系,0.5mm-1.0mm厚度精准供应,优选实力源头! - 品牌企业推荐师(官方)
  • A7core项目实战:如何正确处理SDC时钟约束与MMMC多角分析
  • 嘎嘎降AI不达标退款真的会退吗?300名用户实测口碑大揭秘 - 还在做实验的师兄
  • 工业精密传动产品推荐适配多生产场景:直线模组、研磨丝杠定制、KK模组、SBC导轨、TBI丝杠加工、WON导轨、WON模组平台选择指南 - 优质品牌商家
  • 基于T型三电平并网逆变器的低电压穿越技术探究
  • 2026年工业烘干机厂家实力推荐榜:医用/乳胶/自动/蒸汽/电加热/缩绒/面料烘干机,专业高效烘干解决方案深度解析 - 品牌企业推荐师(官方)
  • Qt串口示波器开发实战:从数据解析到动态波形展示
  • OpenWebUI与Dify无缝集成实战:5分钟搞定ChatFlow应用部署
  • 408考研党必看:计算机组成原理存储系统大题TLB实战解析(附真题答案)
  • Unity微信小游戏CDN部署实战:从打包到加速的完整链路
  • 2026年01优质线缆缠绕机厂家推荐:180度翻转机、90度翻转机、O 型翻转机、V 型翻转机、卧式缠绕机、卷材缠绕机选择指南 - 优质品牌商家
  • 我的世界花园客服咨询AI流量赋能,重塑智能体验新标杆 - 王老吉弄
  • 2026指纹浏览器在网络数据采集场景中的合规应用与技术实践
  • 2268816-76-6,Sulfo-DBCO-TFPester,一种水溶性的异双功能生物正交交联试剂
  • 保姆级教程:如何在Ubuntu 20.04上为RK3588搭建完整的编译环境
  • 2026年自媒体去AI味工具推荐:这3款写出来真不像AI写的 - 还在做实验的师兄
  • 计算机毕业设计:基于Flask与Echarts的动漫数据可视化分析平台 Flask框架 可视化 爬虫 大数据 机器学习 番剧推荐(建议收藏)✅
  • 读书-让我心甘情愿早睡的方法
  • 2026年论文AI率100%怎么降到合格线?3步拆解完整路径 - 还在做实验的师兄
  • ArcGIS新手必看:地块面积统计失败的5个常见原因及解决方法(附Global Mapper对比)
  • 保姆级教程:用YOLOv5s训练一个能区分‘人车一体’的电动车检测模型(附5000+监控数据集)
  • 图像处理入门:别再死记硬背了,用Moore边界跟踪算法理解‘邻域’与‘搜索顺序’的本质
  • 从原理到实践:基于AD603的AGC电路设计与性能调优
  • 解决.NetCore2.2升级3.1时的HTTP 500.37错误:ANCM启动超时全攻略
  • 从命令行到点鼠标:iStore增强插件如何让OpenWrt小白也能玩转Docker和内网穿透
  • MNase-seq实验避坑指南:从样本制备到数据分析的完整流程
  • WPF自定义树形表格控件:从零构建TreeListView