BotFramework中FormFlow的图形用户界面

时间:2016-11-21 20:48:08

标签: c# botframework

我们可以使用表单流来启用用户在提示流中与机器人交互。 Here是一个很好的例子,可以用来做一个简单的"订购三明治"任务。我想知道而不是命令行提示我可以使用真正的图形界面吗?而不是硬编码选项,我可以通过API调用从数据库或某些外部资源中提取字段吗?

2 个答案:

答案 0 :(得分:0)

所有信使频道(即Facebook / Skype / Slack)都没有支持复杂的GUI元素(即单选按钮,组合框等)。

答案 1 :(得分:0)

如果您使用the DynamicField elements,您确实可以从任何您喜欢的地方填充选项(如果您愿意,还可以包括数据库):

.Field(new FieldReflector<BugReport>(nameof(Product))
                        .SetType(null)
                        .SetDefine((state, field) =>
                        {
                            foreach (var prod in GetProducts())
                                field
                                    .AddDescription(prod, prod)
                                    .AddTerms(prod, prod);

                            return Task.FromResult(true);
                        }))

GetProducts在哪里返回产品列表 - 这可能来自数据库等

取自Dynamic FormFlow Forms in Bot Builder

的样本