使用 GPT-4o-Mini 驱动智能摘要自动同步 Excel 到事件日历
高级
这是一个Personal Productivity, AI Summarization领域的自动化工作流,包含 20 个节点。主要使用 Set, Merge, Filter, EmailSend, GoogleDrive 等节点。 使用 GPT-4o-Mini 智能摘要将 Excel 事件同步至 Google 日历
前置要求
- •Google Drive API 凭证
- •OpenAI API Key
使用的节点 (20)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "erj9VZBeJsCXdIsB",
"meta": {
"instanceId": "b91e510ebae4127f953fd2f5f8d40d58ca1e71c746d4500c12ae86aad04c1502",
"templateCredsSetupCompleted": true
},
"name": "使用 GPT-4o-Mini 驱动智能摘要自动同步 Excel 到事件日历",
"tags": [],
"nodes": [
{
"id": "0f6ea127-37bf-4232-b115-8a2147e62562",
"name": "计划触发器",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-2784,
-352
],
"parameters": {
"rule": {
"interval": [
{
"field": "hours",
"hoursInterval": 6
}
]
}
},
"typeVersion": 1.2
},
{
"id": "4ea9696c-5b24-4642-a406-76f842da7ab4",
"name": "读取 Excel 文件",
"type": "n8n-nodes-base.spreadsheetFile",
"position": [
-2320,
-352
],
"parameters": {
"options": {}
},
"typeVersion": 2
},
{
"id": "6df965c6-b497-47ea-a7cd-79063f125983",
"name": "Google Drive - 下载 Excel",
"type": "n8n-nodes-base.googleDrive",
"position": [
-2480,
-352
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.fileId }}"
},
"options": {},
"operation": "download"
},
"typeVersion": 3
},
{
"id": "89473215-2fe1-41d1-a27b-d0b52d59b2a3",
"name": "设置 Excel 文件 ID",
"type": "n8n-nodes-base.set",
"position": [
-2640,
-352
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "fileId",
"name": "fileId",
"type": "string",
"value": "YOUR_EXCEL_FILE_ID"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "f81be40d-c060-4333-84b5-dec3702981f0",
"name": "筛选有效事件",
"type": "n8n-nodes-base.filter",
"position": [
-2144,
-352
],
"parameters": {
"options": {},
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "event_title_exists",
"operator": {
"type": "string",
"operation": "notEmpty"
},
"leftValue": "={{ $json.title }}",
"rightValue": ""
},
{
"id": "start_date_exists",
"operator": {
"type": "string",
"operation": "notEmpty"
},
"leftValue": "={{ $json.startDate }}",
"rightValue": ""
},
{
"id": "valid_date_format",
"operator": {
"type": "string",
"operation": "notEquals"
},
"leftValue": "={{ new Date($json.startDate).toString() }}",
"rightValue": "Invalid Date"
}
]
}
},
"typeVersion": 2
},
{
"id": "f55e51ce-185b-47dc-9f00-7b0228e8654d",
"name": "Google Calendar - 创建事件",
"type": "n8n-nodes-base.googleCalendar",
"position": [
-1280,
-208
],
"parameters": {
"end": "={{ $json.endDate }}",
"start": "={{ $json.startDate }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "primary",
"cachedResultName": "Primary"
},
"additionalFields": {
"color": "={{ $json.urgency === 'high' ? '11' : ($json.urgency === 'medium' ? '5' : '1') }}",
"location": "={{ $json.location || '' }}",
"showMeAs": "busy",
"attendees": "={{ $json.attendees || '' }}",
"description": "={{ $json.description }}\n\n---\nAI Category: {{ $json.category }}\nTags: {{ $json.tags }}\nUrgency: {{ $json.urgency }}",
"repeatUntil": "",
"sendUpdates": "none",
"maxAttendees": 0,
"repeatHowManyTimes": 1
},
"useDefaultReminders": false
},
"typeVersion": 1.2
},
{
"id": "561f037c-2402-4e55-9458-cfc19ff776bf",
"name": "发送邮件摘要",
"type": "n8n-nodes-base.emailSend",
"position": [
-368,
-208
],
"webhookId": "cda4480d-7d5c-427c-94e6-12deae1fde90",
"parameters": {
"html": "={{ $json.emailBody }}",
"options": {},
"subject": "={{ $json.emailSubject }}",
"toEmail": "recipient@example.com",
"fromEmail": "your-email@example.com"
},
"typeVersion": 2.1
},
{
"id": "93e37187-97e4-4250-afb1-6aec29ae661e",
"name": "AI - 分析事件上下文",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1984,
-224
],
"parameters": {
"text": "={{ $json.title }}\n{{ $json.description }}\n{{ $json.location }}",
"agent": "conversationalAgent",
"options": {
"systemMessage": "You are an intelligent calendar event analyzer. Extract and enhance event information:\n1. Categorize the event (meeting, appointment, deadline, social, etc.)\n2. Suggest optimal duration if not provided (return in hours, e.g., 1 or 0.5)\n3. Add smart tags based on content\n4. Detect urgency level (low/medium/high)\n5. Suggest reminder times\n\nReturn ONLY valid JSON:\n{\"category\":\"meeting\",\"suggestedDuration\":1,\"tags\":[\"work\",\"planning\"],\"urgency\":\"medium\",\"reminderMinutes\":30,\"enhancedDescription\":\"improved description\"}"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.6
},
{
"id": "53f163ec-9b94-4d4a-a2b8-10d97cfc3e5a",
"name": "OpenAI 聊天模型",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-2032,
-48
],
"parameters": {
"options": {}
},
"credentials": {
"openAiApi": {
"id": "OGYj7DgYv5GFLFZk",
"name": "OpenAi account 2"
}
},
"typeVersion": 1
},
{
"id": "06b34d52-bf62-4478-8d70-e201cbb19297",
"name": "多表:您可以连接多个表以实现有组织的数据结构",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-1824,
-48
],
"parameters": {
"jsonSchema": "{\n \"type\": \"object\",\n \"properties\": {\n \"category\": {\"type\": \"string\"},\n \"suggestedDuration\": {\"type\": \"number\"},\n \"tags\": {\"type\": \"array\", \"items\": {\"type\": \"string\"}},\n \"urgency\": {\"type\": \"string\"},\n \"reminderMinutes\": {\"type\": \"number\"},\n \"enhancedDescription\": {\"type\": \"string\"}\n }\n}"
},
"typeVersion": 1
},
{
"id": "ce58f968-33a0-4e6c-bb43-8c45f997aabd",
"name": "合并 AI 洞察",
"type": "n8n-nodes-base.merge",
"position": [
-1632,
-96
],
"parameters": {
"mode": "combine",
"options": {}
},
"typeVersion": 3
},
{
"id": "e6484d5c-c814-43f7-9f14-f61b68ebe4b9",
"name": "AI - 生成智能摘要",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-784,
-208
],
"parameters": {
"text": "Events created:\n{{ $json.aggregatedEvents }}\n\nTotal: {{ $json.totalEvents }}\nTimestamp: {{ $json.syncTimestamp }}",
"options": {
"systemMessage": "You are an executive assistant. Create a professional, concise email summary of calendar events. Include:\n1. Executive summary (2-3 sentences)\n2. Breakdown by category\n3. Urgency highlights\n4. Suggested preparations\n5. Next sync information\n\nUse HTML formatting for email readability."
},
"promptType": "define"
},
"typeVersion": 1.6
},
{
"id": "f1f696b4-8d0d-495c-b577-090e2a2c7a42",
"name": "OpenAI 聊天模型1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-704,
16
],
"parameters": {
"options": {}
},
"typeVersion": 1
},
{
"id": "5b46d55e-866d-4f07-97e5-593f9247fbd1",
"name": "丰富事件数据",
"type": "n8n-nodes-base.set",
"position": [
-1472,
-96
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "enhanced_title",
"name": "title",
"type": "string",
"value": "={{ $json.title }}"
},
{
"id": "ai_category",
"name": "category",
"type": "string",
"value": "={{ $('AI - Analyze Event Context').item.json.category }}"
},
{
"id": "ai_tags",
"name": "tags",
"type": "string",
"value": "={{ $('AI - Analyze Event Context').item.json.tags.join(', ') }}"
},
{
"id": "enhanced_description",
"name": "description",
"type": "string",
"value": "={{ $('AI - Analyze Event Context').item.json.enhancedDescription || $json.description }}"
},
{
"id": "urgency",
"name": "urgency",
"type": "string",
"value": "={{ $('AI - Analyze Event Context').item.json.urgency }}"
},
{
"id": "calculated_end",
"name": "endDate",
"type": "string",
"value": "={{ $json.endDate || new Date(new Date($json.startDate).getTime() + ($('AI - Analyze Event Context').item.json.suggestedDuration * 3600000)).toISOString() }}"
},
{
"id": "reminder_minutes",
"name": "reminderMinutes",
"type": "number",
"value": "={{ $('AI - Analyze Event Context').item.json.reminderMinutes }}"
}
]
},
"includeOtherFields": true
},
"typeVersion": 3.4
},
{
"id": "36a9bb8e-d171-4e59-89ae-205e14b8ce4d",
"name": "更新日历事件",
"type": "n8n-nodes-base.googleCalendar",
"position": [
-1104,
-208
],
"parameters": {
"eventId": "={{ $json.id }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "primary",
"cachedResultName": "Primary"
},
"operation": "update",
"updateFields": {
"description": "={{ $json.description }}\n\n---\nAI Insights:\nCategory: {{ $json.category }}\nUrgency: {{ $json.urgency }}\nTags: {{ $json.tags }}"
}
},
"typeVersion": 1.2
},
{
"id": "dbec3dc3-12ea-41d6-9515-e0616a41cc5a",
"name": "准备 AI 摘要数据",
"type": "n8n-nodes-base.set",
"position": [
-928,
-208
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "total_events",
"name": "totalEvents",
"type": "number",
"value": "={{ $input.all().length }}"
},
{
"id": "aggregated_events",
"name": "aggregatedEvents",
"type": "string",
"value": "={{ $input.all().map(item => `${item.json.summary} | ${item.json.category || 'Uncategorized'} | ${item.json.urgency || 'Normal'} | ${new Date(item.json.start.dateTime || item.json.start.date).toLocaleDateString()}`).join('\\n') }}"
},
{
"id": "sync_time",
"name": "syncTimestamp",
"type": "string",
"value": "={{ new Date().toLocaleString() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "5d55e282-1fff-491c-9576-a840d8f83e45",
"name": "格式化 AI 邮件",
"type": "n8n-nodes-base.set",
"position": [
-528,
-208
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "email_body",
"name": "emailBody",
"type": "string",
"value": "={{ $json.output }}"
},
{
"id": "email_subject",
"name": "emailSubject",
"type": "string",
"value": "📅 AI-Enhanced Calendar Sync - {{ $('Prepare AI Summary Data').item.json.syncTimestamp }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "4b2eb9fd-21d2-4e49-9c0d-bce61fab9baa",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
-3232,
-624
],
"parameters": {
"width": 1904,
"height": 736,
"content": "## **简介**"
},
"typeVersion": 1
},
{
"id": "22ceba2a-6fbd-4677-b335-03d3d0cfb9c2",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1312,
-624
],
"parameters": {
"color": 5,
"width": 512,
"height": 368,
"content": "## **使用场景**"
},
"typeVersion": 1
},
{
"id": "23b97c18-a4be-46fb-a7b0-60d1ec20b3f9",
"name": "便签2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-768,
-624
],
"parameters": {
"color": 6,
"width": 336,
"height": 224,
"content": "## **先决条件**"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "5b4aeb05-14da-43be-94f7-e2e8a87312c2",
"connections": {
"Format AI Email": {
"main": [
[
{
"node": "Send Email Summary",
"type": "main",
"index": 0
}
]
]
},
"Read Excel File": {
"main": [
[
{
"node": "Filter Valid Events",
"type": "main",
"index": 0
}
]
]
},
"Aggregate Events": {
"main": [
[
{
"node": "Prepare Email Summary",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "Set Excel File ID",
"type": "main",
"index": 0
}
]
]
},
"Enrich Event Data": {
"main": [
[
{
"node": "Google Calendar - Create Event",
"type": "main",
"index": 0
}
]
]
},
"Merge AI Insights": {
"main": [
[
{
"node": "Enrich Event Data",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI - Analyze Event Context",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Set Excel File ID": {
"main": [
[
{
"node": "Google Drive - Download Excel",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "AI - Generate Smart Summary",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Filter Valid Events": {
"main": [
[
{
"node": "Google Calendar - Create Event",
"type": "main",
"index": 0
},
{
"node": "AI - Analyze Event Context",
"type": "main",
"index": 0
},
{
"node": "Merge AI Insights",
"type": "main",
"index": 1
}
]
]
},
"Prepare Email Summary": {
"main": [
[
{
"node": "Send Email Summary",
"type": "main",
"index": 0
}
]
]
},
"Update Calendar Event": {
"main": [
[
{
"node": "Prepare AI Summary Data",
"type": "main",
"index": 0
}
]
]
},
"Prepare AI Summary Data": {
"main": [
[
{
"node": "AI - Generate Smart Summary",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "AI - Analyze Event Context",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"AI - Analyze Event Context": {
"main": [
[
{
"node": "Merge AI Insights",
"type": "main",
"index": 0
}
]
]
},
"AI - Generate Smart Summary": {
"main": [
[
{
"node": "Format AI Email",
"type": "main",
"index": 0
}
]
]
},
"Google Drive - Download Excel": {
"main": [
[
{
"node": "Read Excel File",
"type": "main",
"index": 0
}
]
]
},
"Google Calendar - Create Event": {
"main": [
[
{
"node": "Aggregate Events",
"type": "main",
"index": 0
},
{
"node": "Update Calendar Event",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 个人效率, AI 摘要总结
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
AI驱动的Grok-3健康预警系统(含家属通知功能)
基于Grok-3 AI分析的健康监测系统,含家属/医生邮件警报
If
Set
Merge
+7
17 节点Cheng Siong Chin
个人效率
Sonar Pro AI作业评估与多截止日期提醒
通过Sonar Pro AI和多渠道截止日期提醒自动化同行评审分配
Set
Filter
Discord
+13
23 节点Cheng Siong Chin
文档提取
AI驱动的GPT-4o-mini招聘流程:从简历筛选到面试安排
使用GPT-4o-mini在Airtable中自动化招聘:从简历筛选到面试安排
Slack
Filter
Webhook
+10
21 节点Cheng Siong Chin
人力资源
使用 Mistral AI、LinkedIn 和 Google Sheets 自动化职位搜索与简历定制
使用 Mistral AI、LinkedIn 和 Google Sheets 自动化职位搜索与简历定制
Set
Code
Html
+18
46 节点Jordan Hoyle
个人效率
AI驱动的同行评审作业系统,带自动评分标准生成
使用GPT-4-nano、Slack和邮件通知自动化同行评审分配
Set
Code
Slack
+9
22 节点Cheng Siong Chin
文档提取
AI Sonar-Pro黄金市场追踪器:基于新闻经济数据预测价格
使用Perplexity Sonar-Pro、FRED数据和WordPress报告的黄金市场预测系统
Set
Merge
Slack
+7
22 节点Cheng Siong Chin
加密货币交易
工作流信息
难度等级
高级
节点数量20
分类2
节点类型12
作者
Cheng Siong Chin
@cschinProf. Cheng Siong CHIN serves as Chair Professor in Intelligent Systems Modelling and Simulation in Newcastle University, Singapore. His academic credentials include an M.Sc. in Advanced Control and Systems Engineering from The University of Manchester and a Ph.D. in Robotics from Nanyang Technological University.
外部链接
在 n8n.io 查看 →
分享此工作流