You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无需使用Bot SDK,如何获取Tab应用安装事件?

无需Bot,用Webhook接收Teams Tab安装事件

完全可以用Webhook替代Bot来接收Tab应用的安装事件,具体实现步骤如下:

1. 配置应用Manifest

在你的Teams应用manifest.json中添加webApplicationInfo字段,指定服务端Webhook端点作为事件接收地址,同时为应用配置必要权限(根据Tab适用场景选择,比如团队Tab用TeamTab.ReadWrite.All,个人聊天Tab用ChatTab.ReadWrite.All):

"webApplicationInfo": {
  "id": "<你的Azure AD应用ID>",
  "resource": "https://graph.microsoft.com",
  "applicationPermissions": [
    "TeamTab.ReadWrite.All"
  ]
}

2. 订阅Tab安装事件

通过Microsoft Graph API创建订阅,监听Tab的创建(即安装)事件:

  • 请求方法:POST
  • 请求地址:https://graph.microsoft.com/v1.0/subscriptions
  • 请求体:
{
  "changeType": "created",
  "notificationUrl": "<你的Webhook端点URL>",
  "resource": "/teams/{team-id}/tabs",
  "expirationDateTime": "<订阅过期时间,最长3天>",
  "clientState": "<自定义验证字符串,用于防止伪造请求>"
}

若需监听个人聊天中的Tab安装,将resource替换为/chats/{chat-id}/tabs即可。

3. 处理Webhook通知

当用户安装Tab时,Teams会向你的notificationUrl发送POST请求,服务端可按以下逻辑处理:

  • 验证请求:通过匹配clientState确保请求合法性
  • 解析事件:从请求体中提取Tab ID、团队/聊天ID、安装用户信息等核心数据,完成后续业务逻辑

注意事项

  • Webhook端点必须支持HTTPS,且能被Teams服务正常访问
  • 订阅存在有效期(最长3天),需实现自动续订逻辑
  • 若需监听所有团队/聊天的Tab安装,需使用应用级权限的订阅(需Azure AD后台审批)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 00:47:04