自动化每日Outlook日历会议摘要邮件发送n8n工作流 | Schedule Trigger Microsoft Outlook
n8n工作流,Outlook日历自动化,会议摘要邮件,Schedule Trigger,Microsoft Outlook,电子邮件通知,数据管理

## 概述

这个n8n工作流能够自动在预定时间(默认每天上午8点)运行,计算当前日期的范围,从指定的Microsoft Outlook账户获取当天的所有日历事件,将这些事件格式化为用户友好的HTML邮件,然后将摘要发送到指定的邮箱地址。

## 工作流程详解

### 节点1: Schedule Trigger (计划触发器)
– **类型**: n8n-nodes-base.scheduleTrigger
– **作用**: 在预定义时间自动启动工作流
– **配置**:
– 规则 > 间隔 > 触发时间: 8
– 根据n8n服务器的时区每天上午8:00触发
– **输出**: 在预定时间触发工作流执行

### 节点2: Code (代码节点)
– **类型**: n8n-nodes-base.code
– **作用**: 动态计算”今天”的开始和结束时间戳
– **配置(JS代码)**:
– 获取当前日期和时间(工作流运行时间)
– 设置今天为当前日期的开始时间(00:00:00)
– 设置明天为下一天的开始时间(00:00:00)
– 转换为ISO字符串格式
– **输出**: 包含今天和明天ISO日期字符串的JSON对象

### 节点3: Microsoft Outlook (微软Outlook节点)
– **类型**: n8n-nodes-base.microsoftOutlook
– **作用**: 在计算的时间范围内从Outlook获取日历事件
– **配置**:
– 资源: 事件
– 过滤器(自定义):
– start/dateTime ge ‘{{$json.today}}’ and start/dateTime lt ‘{{$json.tomorrow}}’
– (OData过滤器获取今天开始的所有事件)
– **输出**: Outlook事件对象列表

### 节点4: Edit Fields (设置节点)
– **类型**: n8n-nodes-base.set
– **作用**: 转换和简化Outlook事件数据结构
– **配置**: 将Outlook事件字段映射到新字段名:
– id
– subject
– description (来自bodyPreview)
– meeting_start
– meeting_end
– attendees
– meeting_organizer
– meeting_organizer_email
– meeting_link
– **输出**: 包含简化会议详情的JSON对象列表

### 节点5: Generate HTML (代码节点)
– **类型**: n8n-nodes-base.code
– **作用**: 生成汇总所有会议的HTML邮件正文并创建邮件主题行
– **配置(JS代码)**:
– 处理来自”Edit Fields”节点的所有会议项目
– 定义generateMeetingReminderEmail函数将每个会议格式化为HTML”卡片”
– 转义HTML特殊字符,格式化时间、参会者等
– 将所有卡片连接成完整的HTML文档
– 生成主题行
– **输出**: JSON对象包含subject和html字段

### 节点6: Send Email (邮件发送节点)
– **类型**: n8n-nodes-base.emailSend
– **作用**: 将生成的HTML摘要邮件发送到指定收件人
– **配置**:
– 发件邮箱: test@gmail.com
– 收件邮箱: akhilgadiraju@gmail.com
– 主题: {{ $json.subject }}
– HTML: {{ $json.html }}
– **输出**: 邮件发送状态

## 便签说明

– **更新时间**: 在”Schedule Trigger”节点附近;根据需要配置触发时间
– **更新邮件详情**: 在”Send Email”节点附近;更改发件人和收件人邮箱地址

## 自定义方法

### 计划 (Schedule Trigger节点)
修改触发时间、分钟或星期几来更改工作流运行时间

### 日期范围 (Code节点)
调整JS代码来更改日期范围(如下一个工作日、下周)

### Outlook日历 (Microsoft Outlook节点)
指定日历ID或优化OData过滤器进行事件选择

### 事件详情 (Edit Fields节点)
添加/删除/修改提取的事件字段

### 邮件外观和内容 (Generate HTML节点)
更改CSS样式、会议详情或主题行逻辑

### 无会议场景
在”Edit Fields”后使用”If”节点处理无会议日(如发送”今天无会议!”邮件或跳过邮件)

### 邮件收件人 (Send Email节点)
更新”From”和”To”邮箱;多个收件人用逗号分隔

## 错误处理

– 使用”Error Trigger”节点捕获和处理故障(Outlook API、SMTP错误)
– 相应地发送警报或记录错误

## 应用场景

– **自动化每日个人会议简报**: 获取每日会议摘要邮件
– **自动化团队会议摘要**: 发送每日团队日历摘要邮件
– **主动每日规划**: 自动了解当天的日程安排

## 所需凭证

在n8n实例的凭证下添加这些凭证:

### Microsoft Outlook (OAuth2 API):
– 使用节点: “Microsoft Outlook”节点
– 工作流中的凭证名称: Outlook
– 需要具有Calendars.Read权限的OAuth2

### SMTP:
– 使用节点: “Send Email”节点
– 工作流中的凭证名称: SMTP account
– 需要SMTP服务器详情(主机、端口、用户名、密码)

确保这些凭证配置正确并具有所需权限。激活工作流以进行计划执行。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。