教程

OpenClaw Microsoft Teams 接入指南:Azure Bot 创建、Teams 应用包配置与 RSC 权限

OpenClaw Microsoft Teams 接入完整教程:插件安装、Azure Bot 创建 4 步流程(App ID/Secret/Tenant ID 获取)、本地隧道开发、DM 与群组访问控制(AAD 对象 ID)、RSC 权限清单配置、RSC 与 Graph API 能力对比,以及 Session 路由与故障排查。

2026/3/124分钟 阅读ClaudeEagle

OpenClaw 通过 Azure Bot Framework 接入 Microsoft Teams,支持 DM、群组聊天和频道,需要安装插件并创建 Azure Bot 资源。

注意:MS Teams 从 2026.1.15 起移出核心包,需单独安装插件。

安装插件

bash
openclaw plugins install @openclaw/msteams

快速接入(5 步)

  1. 安装 MS Teams 插件
  2. 创建 Azure Bot(App ID + Client Secret + Tenant ID)
  3. 配置 OpenClaw 凭证
  4. 通过公网 URL 或隧道暴露 /api/messages(默认端口 3978)
  5. 安装 Teams 应用包并启动 Gateway

最简配置

json
{
  "channels": {
    "msteams": {
      "enabled": true,
      "appId": "<APP_ID>",
      "appPassword": "<APP_PASSWORD>",
      "tenantId": "<TENANT_ID>",
      "webhook": { "port": 3978, "path": "/api/messages" }
    }
  }
}

群组聊天默认被屏蔽(groupPolicy: "allowlist")。需设置 groupAllowFromgroupPolicy: "open" 开启。

Azure Bot 创建步骤

Step 1:创建 Azure Bot 资源

前往 Azure 门户 - 创建 Azure Bot,填写:

字段
Bot handle你的机器人名称(全局唯一)
Pricing tierFree(开发/测试)
Type of AppSingle Tenant(推荐)
Creation typeCreate new Microsoft App ID

注意:2025-07-31 后新建多租户 Bot 已废弃,请使用 Single Tenant。

Step 2:获取凭证

  1. Azure Bot 资源 → Configuration → 复制 Microsoft App ID(即 appId
  2. 点击 Manage Password → 进入应用注册
  3. Certificates & secretsNew client secret → 复制值(即 appPassword
  4. Overview → 复制 Directory (tenant) ID(即 tenantId

Step 3:配置 Messaging Endpoint

Azure Bot → Configuration → Messaging endpoint:

https://your-gateway-host:3978/api/messages

Step 4:启用 Teams 频道

Azure Bot → Channels → 添加 Microsoft Teams 频道 → 保存。

本地开发(隧道)

bash
# 使用 ngrok
ngrok http 3978
# 将生成的 HTTPS URL 填入 Azure Bot Messaging Endpoint

# 或使用 Tailscale Funnel
tailscale funnel --bg --set-path /api/messages http://127.0.0.1:3978/api/messages

访问控制

DM 访问

json
{
  "channels": {
    "msteams": {
      "dmPolicy": "pairing",
      "allowFrom": ["<AAD_OBJECT_ID>"]
    }
  }
}

重要:使用稳定的 AAD 对象 ID,不要用 UPN(邮箱)或显示名——这些是可变的。

群组和频道访问

json
{
  "channels": {
    "msteams": {
      "groupPolicy": "allowlist",
      "groupAllowFrom": ["user@org.com"],
      "teams": {
        "My Team": {
          "channels": {
            "General": { "requireMention": true }
          }
        }
      }
    }
  }
}

RSC 权限(Teams 应用清单)

Teams 应用包需要声明 RSC 权限,示例关键字段:

json
{
  "$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.17/MicrosoftTeams.schema.json",
  "manifestVersion": "1.17",
  "id": "<APP_ID>",
  "bots": [{
    "botId": "<APP_ID>",
    "scopes": ["personal", "team", "groupChat"]
  }],
  "authorization": {
    "permissions": {
      "resourceSpecific": [
        { "name": "ChannelMessage.Read.Group", "type": "Application" },
        { "name": "ChatMessage.Read.Chat", "type": "Application" },
        { "name": "TeamMember.Read.Group", "type": "Application" }
      ]
    }
  }
}

RSC vs Graph API 能力对比

能力RSC OnlyRSC + Graph API
DM 文字消息
群聊文字消息
频道文字消息✅(已安装)
媒体/附件下载
频道历史记录

路由与 Session

场景Session Key
DMagent:<id>:msteams:dm:<userId>
群聊agent:<id>:msteams:group:<conversationId>
Teams 频道agent:<id>:msteams:channel:<channelId>

附件与图片(DM)

json
{
  "channels": {
    "msteams": {
      "mediaMaxMb": 20
    }
  }
}

群组/频道发送文件需要 SharePoint 权限,详见官方文档。

故障排查

Bot 无响应:验证 Messaging Endpoint URL;检查 Client Secret 是否过期;确认 Teams 频道已启用。

RSC 权限未生效:重新安装 Teams 应用包;确认清单中 authorization.permissions.resourceSpecific 正确。

清单上传报错:检查必填字段($schemamanifestVersionidversionnameicons)。


原文:Microsoft Teams - OpenClaw | 来源:OpenClaw 官方文档

相关文章推荐

教程OpenClaw Microsoft Teams 接入指南:Azure Bot 创建、Teams 应用包配置与 RSC 权限OpenClaw Microsoft Teams 接入完整教程:插件安装、Azure Bot 创建 4 步流程(App ID/Secret/Tenant ID 获取)、本地隧道开发、DM 与群组访问控制(AAD 对象 ID)、RSC 权限清单配置、RSC 与 Graph API 能力对比,以及 Session 路由与故障排查。2026/3/12教程OpenClaw Microsoft Teams 接入指南:Azure Bot 创建、Teams 应用包配置与 RSC 权限OpenClaw Microsoft Teams 接入完整教程:插件安装、Azure Bot 创建 4 步流程(App ID/Secret/Tenant ID 获取)、本地隧道开发、DM 与群组访问控制(AAD 对象 ID)、RSC 权限清单配置、RSC 与 Graph API 能力对比,以及 Session 路由与故障排查。2026/3/12教程OpenClaw 接入 Microsoft Teams:Azure Bot 配置、RSC 权限与 SharePoint 文件发送OpenClaw 接入 Microsoft Teams 完整教程:插件安装、Azure Bot 创建(App ID/Secret/Tenant ID)、消息端点配置、Teams Manifest 与 RSC 权限、仅 RSC vs RSC+Graph 两种能力模式、SharePoint 群组文件发送,以及 Webhook 超时和 Manifest 上传常见问题。2026/3/3教程OpenClaw 飞书机器人接入完全指南:WebSocket 配置、权限设置与多 Agent 路由OpenClaw 飞书机器人接入完整教程:7 步创建飞书企业应用(含权限批量导入 JSON)、WebSocket 长连接配置(无需公网 URL)、Lark 国际版支持、DM 与群组双层访问控制、获取 Group/User ID 方法、多 Agent 路由绑定,以及流式卡片回复配置。2026/3/12教程OpenClaw Skills 开发完全指南:从零编写高质量 SKILL.md 自定义技能文件OpenClaw Skills 开发完整教程:SKILL.md 文件结构详解、自动触发 vs 显式触发原理、三个实战模板(GitHub 仓库管理/每日信息简报/代码健康检查)、让技能精准自动触发的描述写法,以及技能质量标准和 clawhub.ai 使用方法。2026/4/19教程OpenClaw 零基础完全入门:安装、Telegram 配置、记忆系统和技能插件完整指南OpenClaw 从零开始完整教程:用宠物龙虾类比理解架构、npm 安装步骤、Telegram Bot 配置、SOUL.md 性格定义、三层记忆系统(每日日志/长期记忆/MEMORY.md)、HEARTBEAT.md 主动任务、技能安装,以及安全配置和常见问题解决。2026/4/18