Database 多公司数据库通信的bot

Database 多公司数据库通信的bot,database,botframework,Database,Botframework,我正在开发bot,我们将为多家公司提供bot服务,每家公司都有自己的db(SAS),但我们只使用一个bot,每当客户请求时,我们都会查看客户属于哪家公司,bot将分别连接到db,然后回复用户, 我们如何更好地处理这一问题。我可以想到一些情况: 如果每个公司的机器人程序逻辑都是相同的,并且部署的机器人程序实例应该是一个(每个公司都是相同的),那么您需要检查要处理哪个公司数据库的代码,如您所说。在这里,可以在内部进行多种设计选择,以使您的代码具有通用性和“公司”独立性 但是我想做的(避免每次检查客户

我正在开发bot,我们将为多家公司提供bot服务,每家公司都有自己的db(SAS),但我们只使用一个bot,每当客户请求时,我们都会查看客户属于哪家公司,bot将分别连接到db,然后回复用户,
我们如何更好地处理这一问题。

我可以想到一些情况:

  • 如果每个公司的机器人程序逻辑都是相同的,并且部署的机器人程序实例应该是一个(每个公司都是相同的),那么您需要检查要处理哪个公司数据库的代码,如您所说。在这里,可以在内部进行多种设计选择,以使您的代码具有通用性和“公司”独立性 但是我想做的(避免每次检查客户属于哪个公司)是让用户只进行一次身份验证,这样您就可以在某个地方存储用户的会话ID(识别特定于bot的用户会话)和您应该为该用户点击的公司服务或数据库之间的映射。我会将其存储在Azure表存储或SQL Server数据库中

    将来,每当该用户查询bot时,您将查询该数据库并知道要重定向消息的服务

  • 如果每个公司的机器人程序逻辑相同,但每个客户都部署了一个特定的机器人程序实例(例如:不同的品牌形象、不同的名称、不同的产品),那么也很简单,只需以通用、可重用和可扩展的方式构建机器人程序,因此,您可以使用相同的机器人程序逻辑,并使其适应特定场景

  • 如果逻辑不同,则为每个公司构建一个自定义bot


  • 我对所有公司都使用相同的bot逻辑。你是在问如何对用户进行身份验证吗?请参见AuthBot示例: