在用户发送任何内容之前,我可以在Microsoft Bot框架模拟器中发送文本吗?
问题描述:
我使用模拟器中的微软机器人框架。我想在一开始发送一个简短的“你好,这个机器人你可以......”。我想到用户启动模拟器,连接到机器人,然后机器人会发送此消息。 之后,用户知道他能用机器人做什么,并可以开始对话。 它可能以某种方式?在用户发送任何内容之前,我可以在Microsoft Bot框架模拟器中发送文本吗?
答
这是我过去使用过的一些代码。这是在HandleSystemMessage方法中的控制器中添加的。 我希望这可以帮助你。
请谨慎将重要信息放入此邮件中。并非所有通道都支持“对话更新”消息。
if (message.Type == ActivityTypes.ConversationUpdate)
{
string reply = "";
foreach (var member in message.MembersAdded)
{
if(member.Name != "Bot")
{
reply += $"Hello {member.Name}!" + Environment.NewLine;
}
}
if (!string.IsNullOrEmpty(reply))
{
reply += "Hello, How are you doing? How can I help you today?";
}
return message.CreateReply(reply);
}
您会收到类型的消息'ActivityTypes.ConversationUpdate'当用户发送的第一条消息,但直到它收到一个框架无法通过仿真器发送消息。 – stuartd
@stuartd好的,非常感谢。这是记录在某处吗?因此我可以将它显示给我的公司 – Lisa
[本页](https://docs.botframework.com/en-us/csharp/builder/sdkreference/d2/d7d/class_microsoft_1_1_bot_1_1_connector_1_1_activity_types.html),作为我所知道的唯一文档。 – stuartd