From 328e88e8c481b1caf2bf1abf075d00ed72de37f8 Mon Sep 17 00:00:00 2001 From: engigu Date: Wed, 14 Jan 2026 21:12:26 +0800 Subject: [PATCH] feat: udpate docs --- .release_log | 1 + README.md | 3 +- docs/guide/channels.md | 138 +++++++++++++++++++++++++ docs/guide/features.md | 5 +- docs/guide/self-hosted-messages-old.md | 29 +++--- 5 files changed, 160 insertions(+), 16 deletions(-) diff --git a/.release_log b/.release_log index dad77b5..ca8917e 100644 --- a/.release_log +++ b/.release_log @@ -27,3 +27,4 @@ 27. [2025.10.12] 增加cookies过期天数设置 28. [2025.12.06] 增加模板功能:集成预览到编辑器、优化ID生成规则、增强发送API日志记录 29. [2025.12.17] 新增飞书机器人渠道、阿里云短信动态接收者、代码架构优化(注册模式重构、常量统一管理) +30. [2026.01.14] 新增 Telegram 机器人渠道、支持 HTTP/HTTPS/SOCKS5 代理配置、修复渠道测试类型断言错误、优化首页图表跨年显示 diff --git a/README.md b/README.md index 9b15c36..02f508e 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Message Nest 是一个灵活而强大的消息推送整合平台,旨在简化 ## 特色 ✨ -- 🔄 **整合性:** 提供了多种消息推送方式,包括邮件、钉钉、企业微信等,方便你集中管理和定制通知。 +- 🔄 **整合性:** 提供了多种消息推送方式,包括邮件、钉钉、企业微信、飞书、Telegram 等,方便你集中管理和定制通知。 - 🎨 **自定义性:** 可以根据需求定制消息推送策略,满足不同场景的个性化需求。 - 📝 **模板化(⭐推荐):** 支持消息模板功能,通过占位符实现动态内容替换,一次定义多处复用,大幅提高开发效率和维护便利性。 - 🛠 **开放性:** 易于扩展和集成新的消息通知服务,以适应未来的变化。 @@ -28,6 +28,7 @@ Message Nest 是一个灵活而强大的消息推送整合平台,旨在简化 ### 最近更新 +**2026.01.14** - 新增 Telegram 机器人渠道、支持 HTTP/SOCKS5 代理 **2025.12.17** - 新增飞书机器人渠道、阿里云短信、代码架构优化 **2025.12.06** - 新增消息模板功能、V2 API **2025.10.12** - 增加 cookies 过期天数设置 diff --git a/docs/guide/channels.md b/docs/guide/channels.md index 9abb9de..974ba8e 100644 --- a/docs/guide/channels.md +++ b/docs/guide/channels.md @@ -176,6 +176,144 @@ Message Nest 支持多种消息推送渠道,您可以根据需求配置不同 - 建议使用 Markdown 格式,展示效果更好 ::: +## 飞书机器人 + +通过飞书群机器人发送消息到飞书群。 + +### 配置步骤 + +1. **创建飞书群** + - 在飞书中创建群聊 + +2. **添加自定义机器人** + - 进入群设置 → 群机器人 → 添加机器人 → 自定义机器人 + - 设置机器人名称和描述 + +3. **配置安全设置** + - 选择"签名校验"方式 + - 记录 Webhook 地址和签名密钥 + +4. **在 Message Nest 中配置** + - 渠道名称:自定义名称 + - Webhook URL:复制的 Webhook 地址 + - 签名密钥:复制的签名密钥 + +### 配置参数 + +| 参数 | 说明 | 必填 | +|------|------|------| +| 渠道名称 | 自定义渠道名称 | 是 | +| Webhook URL | 机器人 Webhook 地址 | 是 | +| 签名密钥 | 签名校验密钥 | 否 | + +### 消息格式 + +飞书支持以下格式: +- **Text** - 纯文本 +- **Markdown** - 支持 Markdown 格式(推荐) + +### 使用场景 + +- ✅ 团队协作通知 +- ✅ 项目进度更新 +- ✅ 系统监控告警 +- ✅ 工作流提醒 +- ✅ 日报周报推送 + +### 注意事项 + +::: warning 注意 +- 每个机器人每分钟最多发送 20 条消息 +- 建议使用签名校验提高安全性 +- 机器人被移除后 Webhook 将失效 +- Markdown 格式展示效果更好 +::: + +## Telegram 机器人 + +通过 Telegram Bot 发送消息到 Telegram 聊天。 + +### 配置步骤 + +1. **创建 Telegram Bot** + - 在 Telegram 中搜索 `@BotFather` + - 发送 `/newbot` 命令创建新机器人 + - 按提示设置机器人名称和用户名 + - 记录 Bot Token(格式:`123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11`) + +2. **获取 Chat ID** + - **个人聊天**:向机器人发送任意消息,然后访问 `https://api.telegram.org/bot/getUpdates` 查看 `chat.id` + - **群组聊天**:将机器人添加到群组,发送消息后同样方式获取 `chat.id`(群组 ID 通常为负数) + - **频道**:将机器人添加为频道管理员,使用频道用户名(如 `@channel_name`)或频道 ID + +3. **在 Message Nest 中配置** + - Bot Token:填入创建机器人时获得的 Token + - Chat ID:填入接收消息的聊天 ID + - 自定义 API 地址(可选):如使用自建代理服务器 + - 代理地址(可选):如需通过代理访问 Telegram API + +### 配置参数 + +| 参数 | 说明 | 必填 | 示例 | +|------|------|------|------| +| 渠道名称 | 自定义渠道名称 | 是 | `Telegram通知` | +| Bot Token | 机器人 Token | 是 | `123456:ABC-DEF...` | +| Chat ID | 接收消息的聊天 ID | 是 | `123456789` 或 `-100123456789` | +| 自定义 API 地址 | 自建代理服务器地址 | 否 | `https://api.example.com` | +| 代理地址 | HTTP/SOCKS5 代理 | 否 | `socks5://127.0.0.1:1080` | + +### 代理配置说明 + +Telegram 在某些地区可能无法直接访问,支持以下代理方式: + +**1. 自定义 API 地址(优先级最高)** +- 适用于自建 Telegram API 代理服务器 +- 示例:`https://api.example.com` +- 如果配置了此项,代理地址将被忽略 + +**2. 代理地址(优先级较低)** +- 支持 HTTP/HTTPS/SOCKS5 代理 +- HTTP 代理:`http://127.0.0.1:7890` +- HTTPS 代理:`https://proxy.example.com:8080` +- SOCKS5 代理:`socks5://127.0.0.1:1080` +- 带认证的 SOCKS5:`socks5://username:password@host:1080` + +### 消息格式 + +Telegram 支持以下格式: +- **Text** - 纯文本 +- **Markdown** - Markdown 格式(支持 Telegram Markdown 语法) +- **HTML** - HTML 格式(支持部分 HTML 标签) + +### 使用场景 + +- ✅ 个人消息通知 +- ✅ 系统监控告警 +- ✅ 自动化脚本通知 +- ✅ 跨国团队协作 +- ✅ 服务器状态推送 +- ✅ 定时任务提醒 + +### 注意事项 + +::: warning 注意 +- Bot Token 需要妥善保管,泄露后需要重新生成 +- 群组 Chat ID 通常为负数(如 `-100123456789`) +- 机器人需要有发送消息的权限 +- 在群组中使用时,需要将机器人添加为成员 +- 在频道中使用时,需要将机器人设为管理员 +- 代理配置优先级:自定义 API 地址 > 代理地址 +- 如果在国内使用,建议配置代理或自定义 API 地址 +::: + +::: tip 提示 +**获取 Chat ID 的简便方法:** +1. 将机器人添加到聊天中 +2. 向机器人发送任意消息 +3. 在浏览器访问:`https://api.telegram.org/bot/getUpdates` +4. 在返回的 JSON 中找到 `"chat":{"id":123456789}` 即为 Chat ID +::: + ## 微信测试公众号 通过微信测试公众号发送模板消息。 diff --git a/docs/guide/features.md b/docs/guide/features.md index f80122f..26f8a2c 100644 --- a/docs/guide/features.md +++ b/docs/guide/features.md @@ -11,6 +11,9 @@ Message Nest 提供了丰富的功能,帮助您轻松实现多渠道消息推 - **邮件发送** - 支持标准SMTP邮件发送,适用于正式通知和账单发送 - **钉钉** - 支持钉钉机器人消息推送,适用于团队协作和系统告警 - **企业微信** - 支持企业微信应用消息推送,适用于企业内部通知 +- **飞书** - 支持飞书机器人消息推送,适用于团队协作和项目管理 +- **Telegram** - 支持 Telegram Bot 消息推送,适用于个人通知和跨国协作 +- **阿里云短信** - 支持阿里云短信服务,适用于验证码和重要通知 - **微信测试公众号** - 支持微信测试公众号模板消息发送,适用于开发测试 - **自定义 Webhook** - 支持自定义的Webhook消息发送,灵活对接第三方系统 - **自托管消息** - 可以将站点作为消息的接收方,登录站点查看消息 @@ -25,7 +28,7 @@ Message Nest 提供了丰富的功能,帮助您轻松实现多渠道消息推 - ✅ 支持 Text、HTML、Markdown 三种格式 - ✅ 占位符动态替换(`{{key}}` 语法) - ✅ 多实例配置,一次发送多渠道 -- ✅ @提醒功能(钉钉、企业微信) +- ✅ @提醒功能(钉钉、企业微信、飞书) - ✅ 模板启用/禁用控制 - ✅ 版本管理和灰度发布 diff --git a/docs/guide/self-hosted-messages-old.md b/docs/guide/self-hosted-messages-old.md index e0eaf23..8f0864c 100644 --- a/docs/guide/self-hosted-messages-old.md +++ b/docs/guide/self-hosted-messages-old.md @@ -274,7 +274,7 @@ Markdown 格式,支持格式化文本。 **实现方案:** 1. 创建"系统告警"模板 -2. 配置自托管消息渠道(同时可配置钉钉/邮件用于即时通知) +2. 配置自托管消息渠道(同时可配置钉钉/邮件/Telegram 用于即时通知) 3. 系统监控触发告警时发送到自托管渠道 4. 管理员登录 Message Nest 站点查看和管理告警 @@ -297,8 +297,9 @@ Markdown 格式,支持格式化文本。 **实现方案:** 1. 为所有任务/模板添加自托管消息渠道实例 -2. 所有消息都会存储在 Message Nest 站点 -3. 用户登录站点查看历史消息 +2. 配合钉钉/Telegram 等渠道实现即时提醒 +3. 所有消息都会存储在 Message Nest 站点 +4. 用户登录站点查看历史消息 4. 定期导出归档数据 **典型应用:** @@ -414,15 +415,15 @@ Markdown 格式,支持格式化文本。 ## 与其他渠道对比 -| 特性 | 自托管消息 | 邮件 | 钉钉/企业微信 | -|------|-----------|------|--------------| -| 实时性 | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐⭐ | -| 到达率 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | -| 格式支持 | Text/HTML/Markdown | Text/HTML | Text/Markdown | -| 历史查询 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ | -| 成本 | 免费 | 免费/付费 | 免费 | -| 依赖 | 无 | SMTP 服务器 | 钉钉/企业微信 | -| 适用场景 | 站内通知、归档 | 正式通知、账单 | 即时通知、协作 | +| 特性 | 自托管消息 | 邮件 | 钉钉/企业微信/飞书 | Telegram | +|------|-----------|------|-------------------|----------| +| 实时性 | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | +| 到达率 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | +| 格式支持 | Text/HTML/Markdown | Text/HTML | Text/Markdown | Text/HTML/Markdown | +| 历史查询 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐ | +| 成本 | 免费 | 免费/付费 | 免费 | 免费 | +| 依赖 | 无 | SMTP 服务器 | 对应平台 | Telegram(可能需要代理) | +| 适用场景 | 站内通知、归档 | 正式通知、账单 | 即时通知、协作 | 个人通知、跨国协作 | ## 常见问题 @@ -430,7 +431,7 @@ Markdown 格式,支持格式化文本。 **A:** - **自托管消息** - 存储在系统内,需要登录后台查看 -- **其他渠道** - 推送到外部平台(邮件、钉钉等),用户在对应平台查看 +- **其他渠道** - 推送到外部平台(邮件、钉钉、Telegram 等),用户在对应平台查看 ### Q: 可以同时使用自托管消息和其他渠道吗? @@ -443,7 +444,7 @@ Markdown 格式,支持格式化文本。 ### Q: 如何提高消息的查看率? **A:** -1. 配合其他渠道(如邮件、钉钉)提醒用户 +1. 配合其他渠道(如邮件、钉钉、Telegram)提醒用户 2. 在应用中显示未读消息数量 3. 提供消息通知功能 4. 定期提醒用户查看