用 Slack 管理 Outlook 日历:OpenAI 智能助手模板
Slack @mention → n8n AI Agent → Outlook 日历查询/创建 → Slack 回复
- 给谁
- 需要在 Slack 中快速查询或管理 Outlook 日历的团队
- 你会得到
- 在 Slack 中 @机器人即可用自然语言查询、搜索和创建 Outlook 日历事件
硬约束
在 n8n 中导入官方模板,配置 Slack、Outlook、OpenAI 三种凭证,设置 Slack App 的 Event Subscription 指向 n8n Webhook,激活后即可通过 @mention 触发 AI 助手。
他们做了什么
作者 jimleuk 在 n8n 官方模板平台发布了该工作流模板,展示如何通过 AI Agent 节点将 Slack 消息与 Outlook 日历操作连接,实现自然语言查询和创建日历事件。
效果如何
模板已发布(createdAt: 2025-04-06),截至采集时已有 1759 次浏览(author_report)。
值得知道
若不使用 Slack,可修改为 Teams 触发,但需要额外配置。Agent 连接的工具过多可能导致混淆,建议按需求拆分为多个 Agent。Simple Memory 基于用户和时间戳做会话隔离,多轮对话需自行扩展。未说明 Outlook 日历的具体权限范围(个人/共享/组织),实际部署时需确认。
步骤
配置 Slack App Event Subscriptions
前往 https://api.slack.com/apps 创建或选择 App。进入 Features > Event Subscriptions,启用 Enable Events。输入该 n8n 工作流的生产 Webhook URL(工作流必须已激活且可公网访问)。Slack 会发送 challenge 请求,工作流中的 Respond to Webhook 节点会自动响应验证。验证通过后,在 Subscribe to bot events 中添加 app_mention,保存更改。
导入模板并配置凭证
在 n8n 中导入模板 3449。在凭证管理中添加并连接:Slack API(用于触发和回复)、Microsoft Outlook OAuth2(用于日历操作)、OpenAI API(用于 AI Agent 对话)。
配置 AI Agent 节点
打开 Outlook Calendar Assistant(AI Agent)节点,确认 promptType 为 define。systemMessage 已预设为日历助手角色,并注入当前时间。可根据需要调整,但保留时间变量以确保时间查询准确。
连接 Outlook Calendar Tools
AI Agent 已连接三个 Outlook 工具节点:Search All Outlook Events(搜索事件)、Create New Calendar Event(创建事件)、Get Available Calendars(获取日历列表)。检查各工具节点的凭证已正确绑定,确认 toolDescription 已填写以便 Agent 自主决定调用时机。
运行提示词 · 来源原文。Search All Outlook Events 节点的 toolDescription
Call this tool to consume Microsoft Outlook API and fetch all outlook calendar events across all available calendars for a given filter.
运行提示词 · 来源原文。Create New Calendar Event 节点的 toolDescription
Call this tool to consume Microsoft Outlook API and create a new outlook calendar event. Ensure the calendar ID exists before proceeding.
运行提示词 · 来源原文。Get Available Calendars 节点的 toolDescription
Call this tool to consume Microsoft Outlook API and fetch a list of available calendars.
安全建议:执行前人工确认
安全建议(编辑补充的安全提示,非模板作者的做法):在 Agent 真正创建 Outlook 日历事件、在 Slack 中回复他人之前,先由你本人确认事件内容和回复。
激活工作流并测试
激活工作流并设置为生产模式。在 Slack 频道中 @mention 机器人并输入查询,例如:「本周产品团队的 sprint demo 有什么安排?」或「Jim 和 Nik 与 Microsoft 的销售会议是什么时候?」Agent 将调用 Outlook 工具查询后,在原线程中回复结果。
运行提示词 · 来源原文。Slack 中 @mention 机器人后的示例查询
What's included in the product team's sprint demo this week?
运行提示词 · 来源原文。Slack 中 @mention 机器人后的示例查询
Who's booked room 7 for this Thursday?
运行提示词 · 来源原文。Slack 中 @mention 机器人后的示例查询
When is Jim & Nik's sales meeting with Microsoft?
可复制提示词
运行提示词 · 来源原文。通过调用该工作流 webhook 的聊天/前端发送
这一段是提示词,页面不会在这里插入广告。
What's included in the product team's sprint demo this week?
搭建前请确认 Slack App 已创建且有权限订阅 bot events;Outlook 账户需有日历读写权限。
来源
Manage calendar events with Slack using OpenAI-powered Outlook assistant · jimleuk · n8n.io · 2025-04-06T18:35:30.751Z
留言与反馈
Agent 反馈
以下反馈由 Agent 提交,经用户确认和审核后公开,不代表平台已验证。