You need to enable JavaScript to run this app. 能否通过Bot、Webhook或连接器获取Teams在线会议参会状态事件通知?
优惠活动
大模型
产品
解决方案
定价
更多

能否通过Bot、Webhook或连接器获取Teams在线会议参会状态事件通知?

核心结论

你提到的三类会议事件(参会人加入、参会人离开、全员离场后的会议结束)完全可以通过官方支持的能力实现监听,且全流程适配你通过Graph API动态创建即时会议的场景,不需要提前预置排程、也不需要手动在会议里做额外配置。

可用的技术选型说明

先把容易踩坑的无效方案和正式可用的路径理清楚,避免做无用功:

  • 完全走不通的方案:Teams通用连接器(Connector)、传入式Webhook(Incoming Webhook)。很多团队一开始会尝试用这两类能力接会议监听需求,实际落地会发现它们本质是单向推送通道,只能让外部系统往Teams频道/会议推消息,完全不支持反向订阅会议生命周期、参会人动态类的事件,没有事件回调的入口,根本无法实现你的需求。
  • 正式可用的组合方案:Teams Bot + Microsoft Graph 事件订阅,这是目前官方唯一支持该类事件监听的全链路可编程路径。
可原生监听的事件匹配度

你需要的三个场景,均在Graph的在线会议事件覆盖范围内,触发逻辑完全匹配业务要求:

  • 参会人加入会议:对应microsoft.graph.meetingParticipantJoining事件,每有一个参会人进入会议会话,就会触发一次回调通知
  • 参会人离开会议:对应microsoft.graph.meetingParticipantLeft事件,每有一个参会人退出会议(无论是主动退出、网络掉线都会触发),就会触发一次回调通知
  • 全员离场后的会议结束:对应microsoft.graph.onlineMeetingEnd事件,只有当会议内最后一名参与者退出、会议会话正式终止时才会触发,不会出现中途某个人退出就误判会议结束的问题,完全匹配你对“所有参会人员均已离场”的判断标准。
针对动态创建即时会议的编程接入方式

你提到的“通过Graph动态创建非排程会议、不想手动给每个会议加配置”的需求,完全可以通过代码全流程实现,整个流程可以无缝嵌入你现有的建会逻辑,没有额外的人工操作环节:

  1. 首先通过Graph的即时会议创建接口POST /onlineMeetings生成会议实例,接口返回的对象会包含全局唯一的onlineMeetingId,这是后续绑定订阅的核心标识
  2. 拿到onlineMeetingId后,直接调用Graph的订阅创建接口POST /subscriptions,将订阅范围精准锁定到该特定会议实例,把需要监听的三个事件类型写入订阅配置,同时填入你的Webhook回调地址、验证密钥
  3. 配套的Teams Bot不需要手动拉进会议:创建订阅时给Bot授权该会议的读取权限后,Bot会自动作为服务主体关联到对应会议的权限体系内,天然具备事件接收权限,不需要像普通参会人一样手动加入会议。
落地注意事项
  • 权限配置需要使用应用级权限(而非用户委托权限),对应的权限范围包括OnlineMeeting.ReadBasic.All、订阅创建权限,避免因为用户身份和动态创建的会议不绑定,导致的收不到事件的问题
  • Graph对单个资源的事件订阅有最长有效期限制(常规上限为24小时),创建订阅时把过期时间设置为和你的会议最长预期时长匹配即可,完全覆盖即时会议的常规生命周期
  • 首次配置Webhook回调地址时,需要提前处理Graph的订阅验证请求,否则会导致订阅创建失败

内容的提问来源于stack exchange,提问作者JoeH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.01 09:36:01