如何在Node.js上制作MS Bot Framework等待用户的下一条消息?

时间:2017-05-31 03:54:28

标签: javascript node.js botframework

我正在尝试使用Node.js和MS Bot Framework编写我的第一个机器人。从Microsoft提供的示例中,我无法弄清楚如何实现这种情况:

  1. Bot向用户发送消息。
  2. Bot等待用户的回答。
  3. Bot运行另一个函数来处理这个答案。
  4. 示例包含以下代码:

            if (!item.size) {
                // Prompt for size
                builder.Prompts.choice(session, "What size would you like?", "Small|Medium|Large|Extra Large");
            } else {
                //Skip to next waterfall step
                next();
            }
    

    第一种方法(builder.Prompts.choice())达到了我想要的效果,但我不想使用丑陋的内置提示。我宁愿手动做(向用户发送消息,提供选项,等待响应)。

    第二种方法(next())只是跳到下一步而不等待用户的输入。

    我有一个像这样的对话框:

    bot.dialog('name', [function 1() {}, function 2() {}]);
    

    所以我只是想找到一种方法让function 1输出一条消息并等待用户输入,然后转到function 2

1 个答案:

答案 0 :(得分:2)

builder.Prompts.text()是您的方案的解决方案吗?

你可以用它来提出一个问题(字符串文本),用户可以回答他想要的任何内容。

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