我将ASP.Net用于后端Webhook。一些请求已成功执行,很少收到此错误:
Webhook呼叫失败。错误:DEADLINE_EXCEEDED
但是,当我添加一个稍大的操作(至少需要2秒才能完成)并在大约3秒内响应时,我会不断收到此错误。
我认为问题仅在于请求超时。我无法加快响应速度,因为它在2-3个第三方服务器之间路由。因此,以某种方式,我需要增加我的机器人在对话流中的响应等待时间。
答案 0 :(得分:2)
这是我从Dialogflow支持部门获得的。
嗨,
非常感谢Dialogflow支持。 Webhook超时限制 Google集成操作所需的时间为10秒。对于其他所有 集成,包括自行开发的实现发送 请求到我们的API,webhook超时为5秒。这些值是 不可定制。超时限制包括Dialogflow的时间 向您的Webhook端点请求,Webhook处理时间以及 webhook的响应时间回到Dialogflow。
会话界面应设计为连续的 最终用户与应用程序/机器人之间的消息交换。如果您的网站 服务需要更多时间在后台执行操作 并且无法优化,请考虑重新设计对话 流的方式使最终用户不必等待应用/机器人的答复 超过5秒(对于Google上的“操作”为10秒)。
如果您有任何疑问,请告诉我。
关于,标记Dialogflow支持团队
因此,唯一的选择是在您收到来自Webhook的响应时保持用户对话状态
答案 1 :(得分:1)
恐怕不可能,您可以解决实现异步后台线程的问题