将 formflow 与 botbuilder v4 结合使用

using formflow with botbuilder v4

大家好,

对于一个项目,我必须创建一个聊天机器人,首先用户应该选择一个介于 1 和 5 之间的数字。 最后如果用户写 1,机器人会要求你写:

在 bot return 你的名字,你的 phone 号码之后显示 welcomeMessage

如果用户写 2,机器人会要求您写:

在机器人 return 你的地址、你的生日和机器人显示 welcomeMessage 之后

一开始我用的是formflow,但是没用,因为我用的是SDKBotBuilder V4.

    if (turnContext.Activity.Type == ActivityTypes.Message)
        {

            if ("1".Equals(turnContext.Activity.Text))
            {
                //name
                //phoneNumer
            }
            else if ("2".Equals(turnContext.Activity.Text))
            {
                //adress
                //birthday
            }
            else if ("3".Equals(turnContext.Activity.Text))
            {
                await turnContext.SendActivityAsync($"you choose 3");
            }
            else if ("4".Equals(turnContext.Activity.Text))
            {
                await turnContext.SendActivityAsync($"you choose 4");
            }
            else if ("5".Equals(turnContext.Activity.Text))
            {
                await turnContext.SendActivityAsync($"you choose 5");
            }
            else
            {
                await turnContext.SendActivityAsync($"choose a number between 1 and 5");
            }
        }

虽然 FormFlow 非常适合此任务,但您认为 V4 中没有 FormFlow 是正确的。然而,V4 确实有瀑布式对话框,它们可能对您想要做的事情同样有用。瀑布对话框由类似于提示用户信息的迷你对话框的瀑布步骤组成。查看文档以了解如何使用瀑布对话框:https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-dialog-manage-conversation-flow

FormFlow 现在可用于 v4 只需添加 Nuget(或多或少)

https://www.nuget.org/packages/Bot.Builder.Community.Dialogs.FormFlow/