在用户发送任何内容之前,我可以在Microsoft Bot框架模拟器中发送文本吗?

问题描述:

我使用模拟器中的微软机器人框架。我想在一开始发送一个简短的“你好,这个机器人你可以......”。我想到用户启动模拟器,连接到机器人,然后机器人会发送此消息。 之后,用户知道他能用机器人做什么,并可以开始对话。 它可能以某种方式?在用户发送任何内容之前,我可以在Microsoft Bot框架模拟器中发送文本吗?

+0

您会收到类型的消息'ActivityTypes.ConversationUpdate'当用户发送的第一条消息,但直到它收到一个框架无法通过仿真器发送消息。 – stuartd

+0

@stuartd好的,非常感谢。这是记录在某处吗?因此我可以将它显示给我的公司 – Lisa

+0

[本页](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

这是我过去使用过的一些代码。这是在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); 
    }