目录

群晖 Chat:搭建私有团队通讯平台

群晖科技(Synology Inc.)推出的 Synology Chat 是一款私有化部署的即时通讯工具,类似于自建的 Slack 或微信企业版。所有消息、文件、聊天记录都存储在你的 NAS 上,数据不会经过第三方服务器。

什么是 Synology Chat?

Synology Chat 是群晖 DSM 套件中心中的一款第一方套件,提供团队即时通讯、频道管理、文件分享、消息搜索等功能1).

与公共 IM 工具相比,它的核心差异在于:

核心功能

频道与讨论

文件与媒体

搜索与历史

集成与扩展

安装与配置

安装

客户端

Synology Chat 提供全平台客户端:

外网访问

和所有群晖服务一样,Chat 支持多种外网访问方式:

Webhook 集成

Webhook 是 Synology Chat 对接外部系统的核心机制。简单来说,它是一种反向 API——不是你去轮询查消息,而是系统在有事件发生时主动通知你。

Chat 支持两种方向的 Webhook:

Incoming Webhook:外部系统 → 推消息到 Chat

概念:Incoming Webhook 相当于一个专用入口 URL。外部系统(监控系统、CI/CD 工具、自定义脚本)向这个 URL 发一条 HTTP POST 请求,Chat 就会把消息显示在指定频道里。

架构:

外部系统(监控/CI/脚本)
      │
      │ HTTP POST(JSON 格式消息)
      ▼
Synology Chat Server
      │
      ▼
指定频道中显示消息

也就是说,消息的流向是从外到内——外部系统主动推送。

典型用途:

配置 Incoming Webhook

在目标频道 → 频道设置 → 整合 → 新增 Incoming Webhook,设置名称和图标,即可获得一个专属 URL。

Webhook URL 格式: https://你的NAS:5001/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=你的token

调用方法:向此 URL 发送 HTTP POST 请求,payload 参数为 JSON 字符串。

最简单的例子——用 curl 发送一条消息:

curl -sk -X POST "https://你的NAS:5001/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=你的token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "payload={\"text\":\"Hello from bot!\"}"

发送富文本消息(支持 Synology Chat 的 Markdown 格式):

curl -sk -X POST "https://你的NAS:5001/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=你的token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "payload={\"text\":\"**构建完成**\\n项目:my-app\\n状态:✅ 成功\\n耗时:2分34秒\"}"

不只是 curl,任何支持 HTTP POST 的语言或工具(Python requests、JavaScript fetch、PowerShell Invoke-RestMethod 等)都可以调用 Webhook。

Outgoing Webhook:Chat 里的消息 → 触发外部服务

概念:Outgoing Webhook 的方向与 Incoming 相反。你在频道里发一条以特定关键词开头的消息,Chat 就会把这条消息的内容转发给你指定的外部服务 URL。你的服务处理后,可以把结果回复到频道。

架构:

用户在频道发消息(例如:「/status 磁盘」)
      │
      ▼
Synology Chat Server
      │
      │ HTTP POST(将消息内容发给你的服务)
      ▼
你的外部服务(Web 服务器、脚本、API)
      │
      │ HTTP 响应(可选的回复消息)
      ▼
频道中显示服务回复

也就是说,消息的流向是从内到外再到内——Chat 将消息转给外部程序,外部程序处理后把结果送回频道。

典型用途:

配置 Outgoing Webhook

在频道 → 频道设置 → 整合 → 新增 Outgoing Webhook,设置触发关键词(例如 “/status”)和你的回调 URL。

当有人在频道发送以触发词开头的消息时,Chat 会将消息内容和发送者信息 POST 到你的回调 URL。你的服务处理请求后,可以在 HTTP 响应中返回消息文本,Chat 会自动将其发送到频道。

详细的配置步骤请参考官方文档4).

QuickConnect 与 Chat 的配合

如果你通过 QuickConnect 访问 Chat,需要注意:

Webhook 回调 URL 必须使用 NAS 的内网地址或 DDNS 域名,不能使用 QuickConnect 域名。因为 QuickConnect 是中继/穿透服务,不支持作为 webhook 回调目标。

也就是说:

企业级功能

对于有更高需求的企业用户,Synology Chat 还提供:

Synology Chat vs 其他方案

对比项 Synology Chat Mattermost Rocket.Chat Slack / Discord
部署方式 DSM 套件,一键安装 Docker / 手动部署 Docker / 手动部署 云端 SaaS
数据私有 ✅ 完全私有 ✅ 完全私有 ✅ 完全私有 ❌ 数据在第三方服务器
费用 免费(含在 DSM 中) 免费(自托管) 免费(自托管) 免费版有消息限制,付费版按人收费
用户数 无限制 无限制 无限制 免费版限制 90 天消息历史
维护难度 极低,DSM 自动维护 需要自己维护数据库和升级 需要自己维护 零维护
移动端推送 ✅ 支持 ✅ 支持 ✅ 支持 ✅ 支持
与 NAS 集成 ✅ 深度集成(File Station、Office) ❌ 需自行对接 ❌ 需自行对接 ❌ 无法集成
适合场景 群晖用户、小团队 技术团队、需要高度定制 需要丰富第三方集成 不在乎数据隐私的团队

典型使用场景

场景一:小团队内部通讯

一个 10 人小团队使用群晖 Chat 作为日常沟通工具。所有人使用 DSM 账号登录,按项目创建频道(如「前端开发」「后端开发」「运维通知」),配合 Synology Office 在线协作编辑文档。

场景二:运维告警通知

服务器监控系统(如 Prometheus + Alertmanager)通过 incoming webhook 将告警推送到 Chat 的「运维告警」频道。当磁盘空间不足或服务宕机时,团队成员即时收到通知,可以直接在 Chat 中讨论应对方案。

场景三:自定义机器人

如果你熟悉编程,可以利用 Outgoing Webhook 编写自定义机器人,实现自动化响应——例如查询服务器状态、执行命令、对接内部系统等。

总结

Synology Chat 是群晖 NAS 上最被低估的套件之一。对于已经拥有群晖 NAS 的用户来说,它提供了一个零成本、零维护、数据完全私有的团队通讯方案。

它的优势不在于功能堆叠(这方面不如 Mattermost 或 Rocket.Chat 丰富),而在于和 DSM 生态的无缝集成——用户管理、文件存储、Office 协作、移动端推送全部开箱即用,无需额外搭建数据库或配置反向代理。

如果你已经有群晖 NAS 且有小团队沟通需求,Synology Chat 值得一试——毕竟装一下不花钱,不满意卸载就是6)。