Dialogflow es Dialogflow:确定产品名称或从使用webhook获取的列表中选择产品

Dialogflow es Dialogflow:确定产品名称或从使用webhook获取的列表中选择产品,dialogflow-es,Dialogflow Es,我正试图建立一个机器人(自定义用户界面在我的网站),用户将输入一个产品名称,以查看它的详细信息,我将提供一个链接到产品的完整详细信息页面。我遇到这样一种情况,如果用户输入一个名称,并且我的数据库中有多个结果,我希望将这些产品显示为快速回复,以便他可以从中选择一个 如何识别用户输入了产品名称和其他内容?我可以使用@sys.any,但是所有的小对话也会转到那里,这是没有用的 当我向他显示一个名称匹配的产品列表时,也会出现同样的问题。但是现在,当用户点击任何一个按钮时,我会带他去一个自定义的后续目的地

我正试图建立一个机器人(自定义用户界面在我的网站),用户将输入一个产品名称,以查看它的详细信息,我将提供一个链接到产品的完整详细信息页面。我遇到这样一种情况,如果用户输入一个名称,并且我的数据库中有多个结果,我希望将这些产品显示为快速回复,以便他可以从中选择一个

如何识别用户输入了产品名称和其他内容?我可以使用@sys.any,但是所有的小对话也会转到那里,这是没有用的

当我向他显示一个名称匹配的产品列表时,也会出现同样的问题。但是现在,当用户点击任何一个按钮时,我会带他去一个自定义的后续目的地,在那里我输入了一个产品实体的模板。但是,dialogflow只识别实体中已定义的产品(列出了少数产品并选中“自动展开”)


我尝试过使用@sys.any,但是对于用户键入的任何字符串都会调用该意图。比方说,用户没有响应,过了一段时间他输入了“hi”,我的意图是调用any。如何克服这种情况?

据我所知,有两种方法可以解决这个问题。首先,使用一个实体&在那里定义您的产品列表,以便bot理解用户的响应(您已经这样做了),但是当您有一个1000个或更多产品的列表时,这将成为一项开销。第二种方法,您可以继续使用
@sys。任何
&定义一个参数,编写一个webhook,在其中验证用户输入的对数据库中产品列表的响应,并检查它是否存在,如果存在,则显示产品详细信息或说,输入的响应不正确