[英]Microsoft Bot Framework dialog with multiple users
我正在使用Microsoft Bot Framework for .NET创建一个简单的问题/答案机器人,作为用C#编写的ASP.NET MVC WebApi,主要用于具有多个用户的Slack通道。
我创建了一个对话框,我根据框架文档从我的消息控制器启动:
await Conversation.SendAsync(activity, () => new QuestionDialog());
lambda表达式向Bot Framework指示用于对话框的构造函数。 QuestionDialog实现了IDialog。 启动对话框后,对话框类被序列化并存储在Bot Connector云中,保存当前问题和预期答案,然后在当前对话中收到新消息时进行反序列化。
我希望任何用户能够回答Bot提出的随机问题,无论哪个用户发起了对话,但似乎为每个与僵尸机器人交互的用户创建了一个新的QuestionDialog,因此只有发起问题的用户才能回答它。
是否有任何方法可以创建仅与会话/频道相关联的对话框,而不是会话/频道和用户的组合? 尝试以这种方式使用对话框是否有意义?
我想我实现这个的方式是:
Azure表存储是一种便于存储状态的服务。当然,您可以使用任何您喜欢的服务。 请记住,内存状态存储仅适用于测试。
此外,您根本不必使用此解决方案的对话框 - 您可以在MessagesController中执行所有操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.