如何在Teams聊天机器人的AdaptiveCards中显示带头像的可交互用户链接?
实现Teams AdaptiveCard中带头像的可交互用户链接
要在Teams的AdaptiveCard里实现带头像、可交互的用户链接,需要使用Teams专属的**Mention(提及)**功能,而非单纯的文本块。Teams会自动将提及渲染为带头像的可点击/hover交互元素,支持发起聊天、查看资料等操作。
修改后的AdaptiveCard JSON示例
{ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.5", "type": "AdaptiveCard", "body": [ { "type": "TextBlock", "text": "<at>${selected.name}</at>", "size": "extraLarge", "isSubtle": false, "color": "accent" } ], "msteams": { "entities": [ { "type": "mention", "text": "<at>${selected.name}</at>", "mentioned": { "id": "${selected.id}", "name": "${selected.name}" } } ] } }
关键说明
<at>标签:必须在文本块中用<at>用户名</at>包裹,同时在msteams.entities里对应定义提及信息,Teams才会识别并渲染为可交互元素。- 用户ID:
mentioned.id需要填入目标用户的Azure AD Object ID(或用户的UPN/用户Principal Name),这是Teams识别用户的唯一标识,你需要从Bot的上下文或用户数据中获取该值。 - 自动渲染:当Bot发送该卡片到Teams后,Teams会自动替换
<at>标签为带用户头像的可交互链接,hover时会显示用户卡片,点击可快速发起聊天。
内容的提问来源于stack exchange,提问作者Engin Polat
相关产品推荐
相关产品推荐

