如何从活动源通知创建指向自定义Teams应用特定选项卡的深层链接
实现Microsoft Teams活动源通知到自定义应用特定选项卡的深层链接
要让活动源通知直接跳转到自定义应用的特定选项卡,你需要修改通知payload里的Topic参数,改用Teams官方的深层链接格式,具体操作如下:
- 先拿到目标选项卡的实体ID(entityId)
- 可以在应用的manifest配置文件里查找,或者通过Graph API调用
GET /teams/{teamId}/channels/{channelId}/tabs/{tabId}获取,返回结果里的entityId就是你需要的。
- 可以在应用的manifest配置文件里查找,或者通过Graph API调用
- 构造Teams深层链接URL
- 通用格式:
https://teams.microsoft.com/l/entity/{appId}/{entityId}?context={context参数} - 参数说明:
{appId}:你的自定义Teams应用ID{entityId}:刚才拿到的目标选项卡实体IDcontext参数:如果选项卡在特定团队频道里,填{"subEntityId":"","channelId":"{频道ID}","teamId":"{团队ID}"};如果是个人应用里的选项卡,直接填{"subEntityId":""}即可
- 通用格式:
- 更新通知payload
- 把原来的Topic部分替换成下面的格式,注意
source要改成"url",同时JSON里的双引号要转义:"Topic": { "source": "url", "value": "https://teams.microsoft.com/l/entity/{appId}/{entityId}?context={\"subEntityId\":\"\",\"channelId\":\"{频道ID}\",\"teamId\":\"{团队ID}\"}" } - 如果是个人应用选项卡,payload可以简化成:
"Topic": { "source": "url", "value": "https://teams.microsoft.com/l/entity/{appId}/{entityId}?context={\"subEntityId\":\"\"}" }
- 把原来的Topic部分替换成下面的格式,注意
这样设置后,用户点击活动源里的通知,就能直接跳转到你指定的那个选项卡了。
内容的提问来源于stack exchange,提问作者hello12345
相关产品推荐
相关产品推荐

