
## 工作流概述
这个n8n工作流实现了一个智能的邮件摘要系统,能够自动获取Gmail中的新闻邮件,使用AI进行内容摘要,并通过Telegram推送整理后的信息。
## 主要功能
– **触发机制**:通过Telegram发送数字(如”2″)触发工作流,表示获取过去几天的邮件
– **邮件获取**:从Gmail中搜索指定时间范围内的邮件,支持自定义发件人过滤
– **AI摘要**:使用GPT-4.1-mini模型对每封邮件进行智能摘要,提取关键主题
– **内容合并**:将所有邮件的摘要合并成一个统一的Telegram消息
– **格式优化**:自动分割长消息以适应Telegram限制,并进行HTML安全格式化
## 工作流节点详解
### 1. Telegram Trigger
– 接收用户发送的数字指令
– 限制只响应特定用户的Telegram ID,确保安全性
### 2. Get days (Code节点)
– 解析用户输入的天数
– 计算对应的日期格式用于Gmail搜索
### 3. Get many messages (Gmail节点)
– 使用自定义搜索查询获取邮件列表
– 支持多个发件人过滤规则
### 4. Loop Over Items (Split in Batches)
– 批量处理每封邮件
– 确保高效处理大量邮件
### 5. Get a message (Gmail节点)
– 获取单封邮件的完整内容
– 提取邮件payload数据
### 6. Get message data (Code节点)
– 从邮件payload中提取HTML内容
– 规范化发件人名称
– 格式化日期显示
### 7. Clean (Code节点)
– 预处理数据供AI模型使用
– 调整日期格式
### 8. Message a model (OpenAI节点)
– 使用GPT-4.1-mini模型生成JSON格式的邮件摘要
– 根据发件人应用不同的摘要规则
– 保持主题原文,其他内容进行语言转换
### 9. Merge (Code节点)
– 合并所有邮件的摘要主题
– 创建统一的主题列表
### 10. Create TG message (Code节点)
– 构建可读性强的Telegram消息格式
– 使用编号列表和粗体标题
### 11. Split (Code节点)
– 将长消息分割成3500字符的块
– 确保符合Telegram消息长度限制
### 12. Sanitize (Code节点)
– 转义HTML特殊字符
– 修复不平衡的Markdown格式
– 将Markdown转换为Telegram安全的HTML
### 13. Send a message (Telegram节点)
– 发送格式化后的摘要到Telegram
– 禁用网页预览,优化显示效果
## 设置说明
### Telegram配置
– 通过@BotFather创建机器人获取token
– 获取用户ID用于访问限制
– 在Telegram Trigger和Send a message节点中设置chatId
### Gmail配置
– 使用Gmail OAuth2凭证
– 在Get many messages节点中自定义搜索过滤器
### OpenAI配置
– 添加API密钥
– 可根据需要切换不同模型
## 使用场景
– **个人新闻摘要**:每天自动汇总订阅的新闻邮件
– **团队信息同步**:团队成员共享重要邮件摘要
– **知识管理**:将邮件内容转换为易于消化的知识片段
## 安全注意事项
– 邮件内容会发送到OpenAI进行处理,需确保符合数据政策
– Telegram访问限制在特定用户ID
– HTML格式化确保Telegram消息安全
## 自定义选项
– 可调整搜索过滤器使用标签而非全局搜索
– 支持不同语言设置
– 可根据邮件量调整模型选择
– 可修改消息块大小以适应需求

评论(0)