我有一个 DialogFlow Intent,它设法解析用户关于商品价格的查询。例如,用户问“一 jar 沙丁鱼多少钱?”,我的 DialogFlow 能够将“沙丁鱼 jar 头”作为用户输入。
一旦完成,它将继续执行,将 POST 请求发送到我拥有的 WebHook。我通过 ngrok.com 将 Fulfillment 链接到我本地的 Python3 Flask 应用程序.
现在,我的 Python 应用程序所做的是接收用户输入(沙丁鱼 jar 头),并使用 PDFGrep通过服务器中价目表的 PDF 查找用户输入。价目表有 3 列:产品代码、产品名称、产品价格。对于用户输入出现的每个实例,整行作为输出发送出去。这意味着如果“沙丁鱼 jar 头”出现 3 次,将显示行线。
控制台的输出是这样的:
10000 Can of Sardines - 6 Cans $5.00
10001 Can of Sardines - 12 Cans $9.00
10002 Can of Sardines - 18 Cans $13.00
这在控制台中工作得很好。
但是,该文件相当大,包含大约 348 页的项目。所以发生的是我的 pdfgrep 命令需要一些时间来得出输出,但据我所知,DialogFlow 似乎期望服务器在给定的短时间内响应它的 POST 请求.
有没有办法调整 DialogFlow API 的 Webbook 超时?
请您参考如下方法:
没有办法增加此超时,因为它会破坏用户的对话体验,即如果用户必须等待很长时间才能获得响应,他会感到沮丧。
你可以做的是,向用户发送一个你正在检查价格的响应,然后一旦你从数据库中获取数据,你就使用 POST 请求向客户端发送另一个回复。
