如何发送和接收对机器人的回复

时间:2019-05-21 08:20:10

标签: node.js botframework

我试图理解Microsoft SDK参考手册中有关如何与机器人进行通信的信息,但是与之进行交互的方式并没有明确的方法。从文档中可以看出,到目前为止,我可以这样介绍:

const { BotFrameworkAdapter } = require('botbuilder');

const adapter = new BotFrameworkAdapter({
    appId: '123',
    appPassword: '123'
});

// Start a new conversation with the user
adapter.createConversation()

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

Microsoft Bot Framework利用Restify服务器为机器人创建API端点。机器人只是一个Web服务,它将与Bot Connector之间发送和接收消息。您将必须使用以下步骤与漫游器进行通信:

  • 安装Restify
  npm install --save restify
  • 包括restify模块
  const restify = require('restify');
  • 设置Restify服务器

    const server = restify.createServer();
    server.listen(process.env.port || process.env.PORT || 3978,
        function () {
            console.log(`\n${ server.name } listening to ${ server.url }`);
        }
    );

  • 创建主对话框(此处示例使用Echo Bot)
const bot = new EchoBot();
  • 为服务器创建POST端点,并连接适配器以侦听传入的请求
server.post('/api/messages', (req, res) => {
    adapter.processActivity(req, res, async (context) => {
        // route to main dialog.
        await bot.run(context);
    });
});

希望这会有所帮助。