使用botpress和mysql连接chatbot

时间:2018-08-07 05:04:56

标签: javascript mysql node.js

我正在尝试使用Botpress构建聊天机器人。我是初学者,正在寻找您的帮助。要求之一是查询数据库以回答问题。我使用mysql als数据库。有人可以帮我解决这个话题吗? 谢谢。

2 个答案:

答案 0 :(得分:1)

如果(仍)尝试创建一个可以回答一些预定义问题的聊天机器人,则有一个名为“ QNA”的模块(用于“问题和答案”)。 您可以在这里找到它:https://github.com/botpress/botpress/tree/master/modules/qna

如果未激活,请不要忘记使用NLU模块(自然语言理解)。
NLU模块在这里:https://github.com/botpress/botpress/tree/master/modules/nlu

答案 1 :(得分:1)

您可以使用自定义操作来创建MySQL数据库实用程序,该实用程序可用于连接MySQL数据库并在其中执行数据库操作。

在自定义操作中,使用knex并连接到数据库

const knex = require('knex')({
    client: 'mysql',
    connection: {
      host: 'localhost',
      user: 'root',
      password: 'lamepassword',
      database: 'sys'
    },
    useNullAsDefault: false,
    log: {
      warn(message) {
        console.log(message);
      },
      error(message) {
        console.error(message);
      },
      deprecate(message) {
        console.log(message);
      },
      debug(message) {
        console.log(message);
      },
    }
  });

await knex.raw(query).on('query', function (data) {
      console.log("Executing: " + data.sql)
}).then(function (data) {
  if (data.length == 2 && name === 'get') {
    user.data = data[0][0][key]
  } else if (data.length == 2 && name === 'set') {
    user.data = undefined;
  } else if (data.length == 2 && name === 'update') {
    console.log(data)
  } else {
    user.data = undefined;
  }
}).catch(err => console.log(err));

有关更多详细信息,请查看下面的演示和this tutorial

https://www.youtube.com/watch?v=zIVnE6bEXZQ