如何使用 BotFramework 发送主动消息,该消息将在 Teams 上触发警报并显示在"Activities"选项卡中?



我想提醒我的机器人的用户注意某种危险。我正在使用主动消息机制来通知用户发生了什么事情。消息传递正确,但我认为不可能在MS Teams中触发消息警报并在活动选项卡中显示;高";但这无济于事。如何配置/格式化消息以实现这样的行为?谢谢你的回答。

如果您可以在聊天消息中提及用户(即使是1:1(,它将出现在活动提要中。我自己并没有这么做,但微软有一些关于Construction的文档。

我试图在一条使用标准活动处理程序的消息中使用<at>@username</at>来实现一个真正快速的PoC,但它不起作用。但如果你能够关注链接的消息,你应该能够做到这一点。

-您可以在个人范围(1:1(对话中提及用户以及您的消息

-无论何时在团队或个人中安装bot,您都需要获取ServiceUrl(turnContext.Activity.ServiceUrl(、ConversationId(turnCntext.Activity.Conversation.Id(和TeamId(如果您想在通道中共享内容,则为可选-var teamsDetails=turnContext.Activity.TeamsGetTeamInfo((;(

-按照此文档向用户发送主动通知。对于ConversationReference,这里有关于如何创建它的代码片段

var conversationReference = new ConversationReference() 
{
Bot = new ChannelAccount() { Id = $"28:{botId}" },
ChannelId = "msteams",
ServiceUrl = serviceUrl,
} 

conversationReference.Conversation = new ConversationAccount() { Id = conversationId };//用于个人。

conversationReference = new ConversationAccount() { ConversationType = conversationType , IsGroup = true, Id = teamsDetails.Id, TenantId = tenantId };//用于团队或组。

最新更新