基于Adaptive Card创建Teams标签并实现程序刷新及Bot关联方案咨询
Teams Adaptive Card 标签开发与刷新关联实现方案
可行性确认
你描述的场景完全可以实现,基于Teams现有搜索消息扩展、Adaptive Card刷新机制、标签开放能力即可完整落地。
核心关联逻辑(解决卡片标签与Bot绑定刷新的疑问)
实现关联的核心是依赖Adaptive Card原生的refresh属性,不需要额外做自定义绑定存储,具体逻辑如下:
- 首先在搜索消息扩展的结果处理逻辑中,给每个可生成标签的Adaptive Card提前配置
refresh字段,字段包含两个核心配置:userIds设为["<all>"](表示所有打开该卡片的用户都会触发刷新逻辑),action绑定Action.Execute类型动作,动作的目标Bot ID指定为你当前开发的Bot应用ID即可。 - 用户选中搜索结果触发标签创建时,直接将携带上述
refresh配置的Adaptive Card作为标签的内容实体写入,Teams会自动将标签内容和卡片内置的刷新规则绑定。 - 在你的Bot服务中注册对
adaptiveCard/action类型invoke请求的处理逻辑:每次用户打开标签时,Teams客户端会自动识别卡片的刷新配置,主动向绑定的Bot发送该类型的invoke请求,你在请求回调中根据当前上下文(如标签所属团队/频道ID、卡片预先埋入的业务自定义参数)生成最新的Adaptive Card内容返回,即可实现标签打开自动刷新。
落地补充说明
- 需要在Teams应用清单中给Bot配置
team、groupchat等对应作用域权限,保证Bot可以接收对应场景下的卡片刷新请求。 - 如果卡片内容有用户权限区分,可不用设置
userIds为["<all>"],直接在Bot的回调逻辑中校验请求携带的用户AAD ID,返回对应权限可见的内容即可。 - 要实现用户选中搜索结果直接创建标签,在搜索消息扩展的结果选中回调中调用对应的标签创建接口,将预配置好刷新规则的Adaptive Card作为内容传入即可,无需用户手动操作。
内容的提问来源于stack exchange,提问作者user25879
相关产品推荐
相关产品推荐

