【问题标题】:Microsoft Bot Builder (chat bot) errorMicrosoft Bot Builder(聊天机器人)错误
【发布时间】:2018-06-23 20:34:48
【问题描述】:

机器人状态 API 已弃用。请参考https://aka.ms/I6swrh了解如何更换为自己的存储。有谁知道是什么问题以及如何配置?是本地存储问题吗?

【问题讨论】:

    标签: node.js api bots chatbot


    【解决方案1】:

    在以前的 botbuilder 版本中,微软为机器人提供了一个状态 API。 state api 如你所料管理机器人的状态;诸如用户数据、对话数据、对话数据等。

    他们已经弃用了这个 API,并提供了一种方法,您可以实现自己的存储适配器,或者实际上我们可用的包来实现。

    botbuilder 模块提供内存存储,在 bot 运行时显然很好,但如果 bot 崩溃就会丢失,并且不适合在多台机器上对 bot 进行负载平衡。

    我倾向于将内存存储用于本地开发,而在生产中使用不同的适配器将其切换出来。

    const bot = new builder.UniversalBot(connector, [..waterfall steps..])
       .set('storage', new builder.MemoryBotStorage())
    

    但是,还有其他可用的存储适配器

    Microsoft 包botbuilder-azure 提供表存储、CosmosDB 存储和 SQL 存储。

    我倾向于将以下软件包 botbuilder-storage 与 DynamoDB 适配器一起使用。它还提供 Redis 和 MongoDB 适配器。

    状态管理在这里也有很好的记录

    https://docs.microsoft.com/en-us/bot-framework/nodejs/bot-builder-nodejs-state

    【讨论】:

      【解决方案2】:

      需要手动设置内存来解决这个问题:

      var bot = new builder.UniversalBot(connector, {
          storage: new builder.MemoryBotStorage()
      });
      

      参考: https://github.com/Microsoft/BotBuilder/issues/3785

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-05-31
        • 1970-01-01
        • 1970-01-01
        • 2019-02-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-07
        相关资源
        最近更新 更多