每日日历摘要:将Google日历活动发送到Telegram与Claude AI
中级
这是一个Personal Productivity, Multimodal AI领域的自动化工作流,包含 12 个节点。主要使用 Set, Telegram, Aggregate, GoogleCalendar, ScheduleTrigger 等节点。 每日日历摘要:使用Claude 3.5 Sonnet格式化Google日历活动并发送到Telegram
前置要求
- •Telegram Bot Token
- •Anthropic API Key
使用的节点 (12)
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "NESyp0PWCUmIyVaM",
"meta": {
"instanceId": "1422505ff9db4b219ef5b5897bccc38680baade2a018cfc274b2a5db17b8cf14"
},
"name": "Daily Calendar Digest: Send Events from Google Calendar to Telegram with Claude AI",
"tags": [
{
"id": "djaHxwkkobjYFHSD",
"name": "Time_trigger",
"createdAt": "2025-08-04T20:03:57.042Z",
"updatedAt": "2025-08-04T20:03:57.042Z"
},
{
"id": "OIkcx66LViipctPF",
"name": "Calendar",
"createdAt": "2025-08-04T21:58:38.044Z",
"updatedAt": "2025-08-04T21:58:38.044Z"
},
{
"id": "soI0f6nC5gfL5B7b",
"name": "Telegram",
"createdAt": "2025-08-04T19:52:57.456Z",
"updatedAt": "2025-08-04T19:52:57.456Z"
},
{
"id": "9kcsz79cjuoXWIKa",
"name": "info_extract",
"createdAt": "2025-08-06T19:49:00.933Z",
"updatedAt": "2025-08-06T19:49:00.933Z"
}
],
"nodes": [
{
"id": "708c9698-7dae-4355-928f-a91c39d41441",
"name": "Anthropic Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
"position": [
896,
272
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "claude-3-5-sonnet-20241022",
"cachedResultName": "Claude Sonnet 3.5 (New)"
},
"options": {}
},
"credentials": {
"anthropicApi": {
"id": "BCHyBNpt3zlBfr1u",
"name": "Anthropic Descodino"
}
},
"typeVersion": 1.3
},
{
"id": "0110b3a5-3120-40c5-8783-6791348c8ed5",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-384,
-128
],
"parameters": {
"content": "## Set a time\nSet a time when you want to get a reminder"
},
"typeVersion": 1
},
{
"id": "dfce79da-79cf-49f8-90f9-a0075872bc5d",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-128,
-176
],
"parameters": {
"color": 3,
"width": 400,
"height": 368,
"content": "## Get all events for that day\nBy using 'get many events' and the time schedule, you get events for the current day.\n\n## Get ID, event, and time\nYou get the event, ID, and time of the events."
},
"typeVersion": 1
},
{
"id": "e9eb3b68-54c4-4e19-8123-dc11b2abf725",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
320,
-176
],
"parameters": {
"color": 5,
"width": 400,
"height": 368,
"content": "## Combine all data into one\nBy aggregating and editing fields into a string"
},
"typeVersion": 1
},
{
"id": "0561b03a-41de-45b2-9295-60dc773474ad",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
768,
-80
],
"parameters": {
"color": 7,
"width": 640,
"height": 272,
"content": "## Important extract of data\n\nAnd send it via Telegram"
},
"typeVersion": 1
},
{
"id": "92e643c7-da9c-4f25-8ba2-c8fad44b4109",
"name": "Schedule Trigger",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-320,
48
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 6
}
]
}
},
"typeVersion": 1.2
},
{
"id": "1660332e-a135-4c8d-aed3-f36eee30ca91",
"name": "Get many events",
"type": "n8n-nodes-base.googleCalendar",
"position": [
-96,
48
],
"parameters": {
"options": {},
"timeMax": "={{ $now.endOf('day') }}",
"timeMin": "={{ $now.startOf('day') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": ""
},
"operation": "getAll"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "coX74688k4KvyNuP",
"name": "Your OAuth2 API"
}
},
"typeVersion": 1.3
},
{
"id": "4852fca5-856e-4ad2-ad09-9c3bfef3a0fa",
"name": "ID, Summary, Time",
"type": "n8n-nodes-base.set",
"position": [
128,
48
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "efeb6508-c015-4e86-b3a6-e79a8baf673e",
"name": "id",
"type": "string",
"value": "={{ $json.id }}"
},
{
"id": "0c45f801-f432-4864-b5f7-8397ffd8bf6e",
"name": "summary",
"type": "string",
"value": "={{ $json.summary }}"
},
{
"id": "99b015ef-7462-4d0c-800d-affdca9b626b",
"name": "dateTime",
"type": "string",
"value": "={{ $json.start.dateTime }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "f147f0dd-eb9d-45ee-9076-14a68e83cdb1",
"name": "Combine data",
"type": "n8n-nodes-base.aggregate",
"position": [
352,
48
],
"parameters": {
"options": {},
"aggregate": "aggregateAllItemData"
},
"typeVersion": 1
},
{
"id": "6d8f26f7-8f86-443c-9cc4-c5b8ccf01730",
"name": "Get string",
"type": "n8n-nodes-base.set",
"position": [
576,
48
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "dc8e7306-f4d8-4eb5-8393-f8472c99f189",
"name": "data",
"type": "string",
"value": "={{ $json.data }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "47c10230-261a-435e-8264-4afa763dd80d",
"name": "Event extractor",
"type": "@n8n/n8n-nodes-langchain.informationExtractor",
"position": [
800,
48
],
"parameters": {
"text": "={{ $json.data }}",
"options": {
"systemPromptTemplate": "You are event extractor. \nYour task is get event with date and time."
},
"attributes": {
"attributes": [
{
"name": "Summary",
"description": "Get all events"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "ec0b2302-f893-4432-b72c-112cfcbcf690",
"name": "Send a text message",
"type": "n8n-nodes-base.telegram",
"position": [
1216,
48
],
"webhookId": "a16876a5-dc9e-4fcc-b940-b547152f80d3",
"parameters": {
"text": "={{ $json.output.Summary }}",
"chatId": "={{ your chat ID }}",
"additionalFields": {
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"id": "34S7yU6OACtjcDia",
"name": "ToDo reminder"
}
},
"typeVersion": 1.2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "12e5c5f6-aba1-473b-bac4-6b1021602a78",
"connections": {
"6d8f26f7-8f86-443c-9cc4-c5b8ccf01730": {
"main": [
[
{
"node": "47c10230-261a-435e-8264-4afa763dd80d",
"type": "main",
"index": 0
}
]
]
},
"f147f0dd-eb9d-45ee-9076-14a68e83cdb1": {
"main": [
[
{
"node": "6d8f26f7-8f86-443c-9cc4-c5b8ccf01730",
"type": "main",
"index": 0
}
]
]
},
"47c10230-261a-435e-8264-4afa763dd80d": {
"main": [
[
{
"node": "ec0b2302-f893-4432-b72c-112cfcbcf690",
"type": "main",
"index": 0
}
]
]
},
"1660332e-a135-4c8d-aed3-f36eee30ca91": {
"main": [
[
{
"node": "4852fca5-856e-4ad2-ad09-9c3bfef3a0fa",
"type": "main",
"index": 0
}
]
]
},
"92e643c7-da9c-4f25-8ba2-c8fad44b4109": {
"main": [
[
{
"node": "1660332e-a135-4c8d-aed3-f36eee30ca91",
"type": "main",
"index": 0
}
]
]
},
"4852fca5-856e-4ad2-ad09-9c3bfef3a0fa": {
"main": [
[
{
"node": "f147f0dd-eb9d-45ee-9076-14a68e83cdb1",
"type": "main",
"index": 0
}
]
]
},
"708c9698-7dae-4355-928f-a91c39d41441": {
"ai_languageModel": [
[
{
"node": "47c10230-261a-435e-8264-4afa763dd80d",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
中级 - 个人效率, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
使用Suno API、Claude和Telegram机器人创建完整
使用Suno API、Claude和Telegram机器人创建完整的20首YouTube播放列表
If
Set
Code
+
If
Set
Code
150 节点Joseph
内容创作
使用AI求职信自动搜索职位
使用 Google Jobs、RemoteOK 和 GPT-3.5 自动化带AI求职信的职位搜索
If
Set
Code
+
If
Set
Code
17 节点Shelly-Ann Davy
个人效率
在可视化参考库中探索n8n节点
在可视化参考库中探索n8n节点
If
Ftp
Set
+
If
Ftp
Set
113 节点I versus AI
其他
基于AI的会议研究与每日议程(Google日历、Attio CRM和Slack)
基于AI的会议研究与每日议程:使用Google日历、Attio CRM和Slack
If
Set
Code
+
If
Set
Code
30 节点Harry Siggins
AI 摘要总结
YouTube评论情感和关键词提取器
使用Gemini AI分析YouTube评论情感和关键词并通过Telegram报告
Set
Code
Telegram
+
Set
Code
Telegram
20 节点Budi SJ
市场调研
Freelancer.com自动投标器(含Telegram审批和AI提案)
Freelancer.com自动投标器,支持Telegram审批和AI提案生成
If
Set
Split Out
+
If
Set
Split Out
26 节点Mohamed Abdelwahab
客户培育