使用ConversationUpdate我显示欢迎消息。 我已经在bot框架模拟器中测试了代码,可以正常工作。
我在Facebook Messenger中进行了尝试,但未得到任何回应。
问题:即时通讯程序支持吗?
IConversationUpdateActivity update = message as IConversationUpdateActivity;
var client = new ConnectorClient(new System.Uri(update.ServiceUrl), new MicrosoftAppCredentials());
if (update.MembersAdded != null)
{
foreach (var newMember in update.MembersAdded)
{
if (newMember.Id != update.Recipient.Id)
{
var reply = ((Activity)update).CreateReply($"Hello "+newMember.Name);
client.Conversations.ReplyToActivityAsync(reply);
}
}
}
特别是,每次成员开始对话时,该漫游器必须显示欢迎消息。我还添加了代码:
newMember.Id != update.Recipient.Id
因为该消息在模拟器中显示了两次。
其余的都非常简单,可以正常工作。有什么想法吗?
答案 0 :(得分:1)
Facebook Messenger频道不支持ConversationUpdate
事件。用户打开聊天时,默认情况下,Facebook Messenger不会广播事件。有两种选择可实现类似的行为:
使用Get Started属性跟踪新对话。我写了一篇有关how to catch this specific event in BotBuilder V3的博客文章,您可以为BotBuilder V4做类似的事情。
在用户第一次与用户互动后回复您的欢迎信息。