使用 AI 和 Google Docs 将会议转录转换为 LinkedIn 内容
高级
这是一个Content Creation, Multimodal AI领域的自动化工作流,包含 25 个节点。主要使用 Set, Wait, Gmail, Filter, Switch 等节点。 使用 AI 和 Google Docs 将会议转录转换为 LinkedIn 内容
前置要求
- •Google 账号和 Gmail API 凭证
- •Google Drive API 凭证
使用的节点 (25)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"meta": {
"instanceId": "8d70623c0c9f4448eda9626cd8185192c28447e191325b0c0d94d3f40d23be3a"
},
"nodes": [
{
"id": "37dbced7-5c49-487d-885f-afce5afebb98",
"name": "简单记忆",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
-120,
100
],
"parameters": {
"sessionIdType": "customKey",
"contextWindowLength": 0
},
"typeVersion": 1.3
},
{
"id": "7aebc8ad-7178-4782-b291-65762958b3aa",
"name": "结构化输出解析器",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
0,
100
],
"parameters": {
"jsonSchemaExample": "{\n \"post_title\": \"Example post title here\",\n \"post_content\": \"Example post content here\"\n}"
},
"typeVersion": 1.2
},
{
"id": "80c294e0-deb6-4b0c-8e66-77413e7459a8",
"name": "过滤不需要的事件类型",
"type": "n8n-nodes-base.filter",
"position": [
-1120,
180
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "d9d8402c-e07b-4c00-9661-da52a85a1d44",
"operator": {
"type": "string",
"operation": "contains"
},
"leftValue": "={{ $('New Event Started').item.json.summary }}",
"rightValue": "key words"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "9ab435eb-a2c6-4b0b-89f9-c4cec9bf75aa",
"name": "等待事件结束",
"type": "n8n-nodes-base.wait",
"position": [
-900,
180
],
"webhookId": "a345f6cd-6269-4797-bede-9b34ab2d0738",
"parameters": {
"resume": "specificTime",
"dateTime": "={{ $('Filter Unwanted Event Type').item.json.end.dateTime }}"
},
"typeVersion": 1.1
},
{
"id": "6be8ad26-9ec6-4c94-928f-ccc1f25a80d3",
"name": "需要提供转录稿",
"type": "n8n-nodes-base.gmail",
"position": [
-680,
180
],
"webhookId": "05fd902b-a7f2-49aa-9906-2870c3708a77",
"parameters": {
"message": "Hi there!\n\nYour meeting has just ended, and I'm ready to help you create an engaging LinkedIn post from your discussion.\n\nWhat I need from you:\nPlease reply to this email with your meeting transcript (copy and paste the text directly into your reply).\n\nWhat happens next:\nOnce I receive your transcript, I'll automatically:\n\n👉 Analyze the key discussion points\n👉 Extract valuable insights and takeaways\n👉 Create a professional LinkedIn post\n👉 Format it for maximum engagement\n\nHow to get your transcript:\n\n👉 Zoom: Go to your Zoom account → Recordings → Find your meeting → Download transcript\n👉 Teams: Check your meeting chat or recording folder for the transcript file\n👉 Google Meet: If recorded, check your Google Drive for the transcript\n👉 Other platforms: Look for \"Transcript\" or \"Recording\" options in your meeting platform\n\nSimply copy the transcript text and paste it as a reply to this email - no need to format it perfectly, I'll handle that!\n\nLooking forward to creating your LinkedIn content! 🚀\n\nThis is an automated message from your n8n workflow. Simply reply with your transcript to continue.",
"options": {},
"subject": "=Action Required: Meeting Transcript for LinkedIn Post Creation - {{ $('Filter Unwanted Event Type').first().json.summary }}",
"operation": "sendAndWait",
"formFields": {
"values": [
{
"fieldType": "textarea",
"fieldLabel": "Meeting Transcript",
"requiredField": true
},
{
"fieldType": "dropdown",
"fieldLabel": "Post Type",
"fieldOptions": {
"values": [
{
"option": "Personal LinkedIn Post"
},
{
"option": "Company LinkedIn Post"
}
]
},
"requiredField": true
},
{
"fieldType": "dropdown",
"fieldLabel": "Tone of Voice",
"multiselect": true,
"fieldOptions": {
"values": [
{
"option": "Professional & Formal"
},
{
"option": "Conversational & Friendly"
},
{
"option": "Thought Leadership"
},
{
"option": "Inspirational & Motivational"
},
{
"option": "Educational & Informative"
}
]
},
"requiredField": true
},
{
"fieldLabel": "Additional Instructions (Optional)",
"placeholder": "Any specific points to highlight, hashtags to include, or special instructions?"
}
]
},
"responseType": "customForm"
},
"typeVersion": 2.1
},
{
"id": "dc8a00d3-1440-437c-8c28-81cfcf084a69",
"name": "个人 LinkedIn 生成器",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-200,
-120
],
"parameters": {
"text": "=You are X , a LinkedIn content creator assistant.\n\nLINKEDIN INSTRUCTIONS TO FOLLOW:\nUse the comprehensive LinkedIn guidelines stored in memory - reference X's voice, style, content approach, and brand elements.\n\nPOST LENGTH REQUIREMENTS:\n- LinkedIn posts should be 1,300-3,000 characters for optimal engagement\n- Aim for 150-300 words\n- Keep it concise but engaging\n\nUSER INPUT:\n- Meeting Transcript: {{ $json.data['Meeting Transcript'] }}\n- Post Type: {{ $json.data['Post Type'] }}\n- Tone: {{ $json.data['Tone of Voice'] }}\n- Additional Instructions: {{ $json.data['Additional Instructions (Optional)'] }}\n\nCRITICAL INSTRUCTIONS:\n1. You MUST use the actual meeting transcript provided above\n2. Extract key insights, learnings, or takeaways from the meeting content\n3. Follow X's voice and style guidelines from memory\n4. Match the requested tone and post type\n5. Do NOT create fictional content or made-up scenarios\n6. Base everything on the real meeting transcript provided\n\nOUTPUT FORMAT REQUIREMENT:\nYou MUST respond with a valid JSON object in exactly this format:\n{\n \"post_title\": \"Your engaging post title here\",\n \"post_content\": \"Your complete LinkedIn post content here\"\n}\n\nDo not include any text before or after the JSON object. Only return the JSON.",
"options": {},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.8
},
{
"id": "28fefb5e-535f-4b31-a8db-6ddb72426a4c",
"name": "简单记忆1",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
-120,
600
],
"parameters": {
"sessionIdType": "customKey",
"contextWindowLength": 0
},
"typeVersion": 1.3
},
{
"id": "eeec7020-e915-445d-a200-4fcdb48d96a9",
"name": "公司 LinkedIn 生成器",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-200,
400
],
"parameters": {
"text": "=You are X, a LinkedIn content creator assistant.\n\nLINKEDIN INSTRUCTIONS TO FOLLOW:\nUse the comprehensive LinkedIn guidelines stored in memory - reference X's voice, style, content approach, and brand elements.\n\nPOST LENGTH REQUIREMENTS:\n- LinkedIn posts should be 1,300-3,000 characters for optimal engagement\n- Aim for 150-300 words\n- Keep it concise but engaging\n\nUSER INPUT:\n- Meeting Transcript: {{ $json.data['Meeting Transcript'] }}\n- Post Type: {{ $json.data['Post Type'] }}\n- Tone: {{ $json.data['Tone of Voice'] }}\n- Additional Instructions: {{ $json.data['Additional Instructions (Optional)'] }}\n\nCRITICAL INSTRUCTIONS:\n1. You MUST use the actual meeting transcript provided above\n2. Extract key insights, learnings, or takeaways from the meeting content\n3. Follow X's voice and style guidelines from memory\n4. Match the requested tone and post type\n5. Do NOT create fictional content or made-up scenarios\n6. Base everything on the real meeting transcript provided",
"options": {},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.8
},
{
"id": "83588d19-2dac-406b-8dcc-bbb90d591019",
"name": "结构化输出解析器1",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
0,
600
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "ef1dad46-9c8c-420f-83b8-93183f8ec826",
"name": "设置字段",
"type": "n8n-nodes-base.set",
"position": [
200,
180
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1aea8c78-d466-436d-823e-1dfc7f2abd26",
"name": "post_title",
"type": "string",
"value": "={{ $json.output.post_title }}"
},
{
"id": "67d6fd85-c8e6-49da-a1b6-b08bab636cf3",
"name": "post_content",
"type": "string",
"value": "={{ $json.output.post_content }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "dbee090f-abb4-44c3-8f43-3ef20a54984f",
"name": "创建新文件夹",
"type": "n8n-nodes-base.googleDrive",
"position": [
380,
180
],
"parameters": {
"name": "= ",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "root",
"cachedResultName": "/ (Root folder)"
},
"resource": "folder"
},
"typeVersion": 3
},
{
"id": "ff8a6003-331a-4beb-bfce-1c02b76f968c",
"name": "创建转录文档",
"type": "n8n-nodes-base.googleDocs",
"position": [
1000,
180
],
"parameters": {
"title": "=Coaching's Transcript",
"folderId": "={{ $('Create New Folder').item.json.id }}"
},
"credentials": {},
"typeVersion": 2
},
{
"id": "ba1be42f-bf33-4710-bef8-3f10bc4203f7",
"name": "创建内容文档",
"type": "n8n-nodes-base.googleDocs",
"position": [
560,
180
],
"parameters": {
"title": "={{ $('Set Fields').item.json.post_title }}",
"folderId": "={{ $('Create New Folder').item.json.id }}"
},
"credentials": {},
"typeVersion": 2
},
{
"id": "9317dba4-f4b4-4eb8-b53c-b5fd0722e228",
"name": "更新转录文档",
"type": "n8n-nodes-base.googleDocs",
"position": [
1220,
180
],
"parameters": {
"actionsUi": {
"actionFields": [
{
"text": "={{ $('Need Transcript to be Provided').item.json.data['Meeting Transcript'] }}",
"action": "insert"
}
]
},
"operation": "update",
"documentURL": "={{ $('Create Transcript Doc').item.json.id }}"
},
"credentials": {},
"typeVersion": 2
},
{
"id": "d9dfdcfa-04ca-4c87-b776-ee3e7e50b083",
"name": "更新内容文档",
"type": "n8n-nodes-base.googleDocs",
"position": [
780,
180
],
"parameters": {
"actionsUi": {
"actionFields": [
{
"text": "={{ $('Set Fields').item.json.post_content }}",
"action": "insert"
}
]
},
"operation": "update",
"documentURL": "={{ $('Create Content Doc').item.json.id }}"
},
"credentials": {},
"typeVersion": 2
},
{
"id": "e933deff-e6ef-4f55-b4bc-158c68112076",
"name": "匹配帖子类型",
"type": "n8n-nodes-base.switch",
"position": [
-460,
180
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6a8abc6f-32f6-4a2d-ba5d-9da35108daa0",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.data['Post Type'] }}",
"rightValue": "Personal LinkedIn Post"
}
]
}
},
{
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "74a97164-a6a6-43b9-9034-70116675fd4b",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.data['Post Type'] }}",
"rightValue": "Company LinkedIn Post"
}
]
}
}
]
},
"options": {}
},
"typeVersion": 3.2
},
{
"id": "49f4b32f-b0dd-42cc-a307-01218f435068",
"name": "内容结果",
"type": "n8n-nodes-base.gmail",
"position": [
1440,
180
],
"webhookId": "82651aa5-c89e-4551-b0dc-e1c64ba11cf7",
"parameters": {
"message": "=Hi there, your content is ready for review ✅ \n\nYou can check the draft here: https://docs.google.com/document/d/{{ $('Create Content Doc').item.json.id }}\n\nYou can check the original transcript here: https://docs.google.com/document/d/{{ $('Create Transcript Doc').item.json.id }}\n\nLooking forward to the next one! 🚀",
"options": {},
"subject": "=",
"emailType": "text"
},
"typeVersion": 2.1
},
{
"id": "f96a5cd7-0f9c-49ef-ba4e-4ce671582e18",
"name": "新事件开始",
"type": "n8n-nodes-base.googleCalendarTrigger",
"position": [
-1340,
180
],
"parameters": {
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "eventStarted",
"calendarId": {
"__rl": true,
"mode": "id",
"value": ""
}
},
"typeVersion": 1
},
{
"id": "1c429619-c7fe-4d85-a735-1311b2666369",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2160,
-100
],
"parameters": {
"width": 640,
"height": 900,
"content": "## 🎯 通用会议转录稿转 LinkedIn 内容"
},
"typeVersion": 1
},
{
"id": "2ffd241f-a7bc-4b7f-aaba-d2211e98a97c",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1380,
-160
],
"parameters": {
"color": 7,
"width": 400,
"height": 300,
"content": "## 1. 会议检测与过滤"
},
"typeVersion": 1
},
{
"id": "339baeed-8a3b-4929-966d-054e344e7c1e",
"name": "便签2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1000,
400
],
"parameters": {
"color": 7,
"width": 300,
"height": 300,
"content": "## 2. 智能等待会议结束"
},
"typeVersion": 1
},
{
"id": "2410f124-8d17-473c-8dd8-c0795070aad0",
"name": "便签3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-760,
-160
],
"parameters": {
"color": 7,
"width": 300,
"height": 300,
"content": "## 3. 交互式转录稿收集"
},
"typeVersion": 1
},
{
"id": "2ddaf06a-deea-44f9-97a8-a0f45defd63e",
"name": "便签4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-200,
-540
],
"parameters": {
"color": 7,
"width": 300,
"height": 300,
"content": "## 4. AI 驱动的内容创建"
},
"typeVersion": 1
},
{
"id": "1be64335-c2d8-4834-8276-6100c020c1d2",
"name": "便签5",
"type": "n8n-nodes-base.stickyNote",
"position": [
400,
400
],
"parameters": {
"color": 7,
"width": 300,
"height": 300,
"content": "## 5. 有序内容存储"
},
"typeVersion": 1
},
{
"id": "260191c9-877d-465c-98a6-ccbd938e6ed5",
"name": "便签6",
"type": "n8n-nodes-base.stickyNote",
"position": [
400,
-220
],
"parameters": {
"color": 3,
"width": 460,
"height": 280,
"content": "### ⚠️ 需要凭据和设置!"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"Set Fields": {
"main": [
[
{
"node": "Create New Folder",
"type": "main",
"index": 0
}
]
]
},
"Simple Memory": {
"ai_memory": [
[
{
"node": "Personal LinkedIn Generator",
"type": "ai_memory",
"index": 0
}
]
]
},
"Simple Memory1": {
"ai_memory": [
[
{
"node": "Company LinkedIn Generator",
"type": "ai_memory",
"index": 0
}
]
]
},
"Create New Folder": {
"main": [
[
{
"node": "Create Content Doc",
"type": "main",
"index": 0
}
]
]
},
"New Event Started": {
"main": [
[
{
"node": "Filter Unwanted Event Type",
"type": "main",
"index": 0
}
]
]
},
"Create Content Doc": {
"main": [
[
{
"node": "Update Content Doc",
"type": "main",
"index": 0
}
]
]
},
"Matching Post Type": {
"main": [
[
{
"node": "Personal LinkedIn Generator",
"type": "main",
"index": 0
}
],
[
{
"node": "Company LinkedIn Generator",
"type": "main",
"index": 0
}
]
]
},
"Update Content Doc": {
"main": [
[
{
"node": "Create Transcript Doc",
"type": "main",
"index": 0
}
]
]
},
"Wait till Even End": {
"main": [
[
{
"node": "Need Transcript to be Provided",
"type": "main",
"index": 0
}
]
]
},
"Create Transcript Doc": {
"main": [
[
{
"node": "Update Transcript Doc",
"type": "main",
"index": 0
}
]
]
},
"Update Transcript Doc": {
"main": [
[
{
"node": "Content Results",
"type": "main",
"index": 0
}
]
]
},
"Structured Output Parser": {
"ai_outputParser": [
[
{
"node": "Personal LinkedIn Generator",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Structured Output Parser1": {
"ai_outputParser": [
[
{
"node": "Company LinkedIn Generator",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Company LinkedIn Generator": {
"main": [
[
{
"node": "Set Fields",
"type": "main",
"index": 0
}
]
]
},
"Filter Unwanted Event Type": {
"main": [
[
{
"node": "Wait till Even End",
"type": "main",
"index": 0
}
]
]
},
"Personal LinkedIn Generator": {
"main": [
[
{
"node": "Set Fields",
"type": "main",
"index": 0
}
]
]
},
"Need Transcript to be Provided": {
"main": [
[
{
"node": "Matching Post Type",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 内容创作, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
WordPress博客自动化专业版(深度研究)v2.1市场
使用GPT-4o、Perplexity AI和多语言支持自动化SEO优化的博客创建
If
Set
Xml
+27
125 节点Daniel Ng
内容创作
完整的 B2B 销售流程:Apollo 潜在客户生成、Mailgun 外展和 AI 回复管理
完整的 B2B 销售流程:Apollo 潜在客户生成、Mailgun 外展和 AI 回复管理
If
Set
Code
+26
116 节点Paul
内容创作
✨🩷自动化社交媒体内容发布工厂 + 系统提示组合
基于动态系统提示和GPT-4o的AI驱动多平台社交媒体内容工厂
If
Set
Code
+20
100 节点Amit Mehta
内容创作
LinkedIn和X病毒内容自动引擎
使用AI生成和发布自动创建LinkedIn和X的病毒内容
If
Set
Wait
+26
156 节点Diptamoy Barman
内容创作
AIAuto - 带深度研究的终极人机回环内容v2
WordPress博客自动化,集成Airtable界面、人工审核和AI研究v2
If
Set
Xml
+23
228 节点Daniel Ng
内容创作
实时 - 使用Gemini和Creatomate自动化病毒式AI视频制作与发布
使用Gemini和Creatomate自动化AI视频创作与多平台发布
Set
Code
Wait
+15
47 节点Intuz
内容创作