Nlp API.AI中的请求超时
我有一个API.ai代理,它向webhook发送一个请求(来自用户),webhook需要大量处理(超过5秒)才能得到答案。据我所知,在API.ai中没有办法增加响应超时 因此,我创建了两个意图。第一个简单地调用我的webhook开始处理结果,同时webhook会回复用户,“您的请求正在处理中…”。 第二个意图有一个事件和动作。新事件的目的只是向用户显示结果。 一旦结果准备好,我的后端应用程序将发送一个curl语句来触发第二个意图中的事件,并进行必要的参数修改,如sessionID、v和时区…等等 我从API.AI收到了以下JSON(我创建了一个示例以简化我的案例): 这是我的后端发送的curl语句Nlp API.AI中的请求超时,nlp,actions-on-google,api-ai,Nlp,Actions On Google,Api Ai,我有一个API.ai代理,它向webhook发送一个请求(来自用户),webhook需要大量处理(超过5秒)才能得到答案。据我所知,在API.ai中没有办法增加响应超时 因此,我创建了两个意图。第一个简单地调用我的webhook开始处理结果,同时webhook会回复用户,“您的请求正在处理中…”。 第二个意图有一个事件和动作。新事件的目的只是向用户显示结果。 一旦结果准备好,我的后端应用程序将发送一个curl语句来触发第二个意图中的事件,并进行必要的参数修改,如sessionID、v和时区…等等
The curl statement is: curl -X POST -H "Content-Type: application/json; charset=utf-8" -H "Authorization: Bearer I INSERTED THE CORRECT CODE HERE" --data "{'event':{ 'name': 'custom_event', 'data': {'name': 'Sam'}}, 'timezone':'America/New_York', 'lang':'en', 'sessionId':'a6ac2555-4b19-40f8-92ec-397f6a042dde'}" "https://api.api.ai/v1/query?v=20150910"
如上面的JSON所示,API.ai代理成功地接收到了触发器。但是,我在“响应部分”中指定的响应不会显示给用户
我在API.ai代理中附加了第二个意图的屏幕截图
注意:我在开发者控制台、WebDemo和Slack中尝试了代理。它们都没有向我(作为用户)显示指定的响应
我不确定我是否做错了什么?
API.AI并不是真正用来处理事件驱动的活动的。这意味着它是对话中的中间人-因此正常模式是:
现在真的没有一个好方法来做你想做的事。我们知道助理最终会收到通知(它是在2017年I/O会议上宣布的),但我们不知道它是否会有API或它会是什么样子。事务API中确实包含通知,但事务用于您正在购买或预订某物的活动。如果需要,您可以使用Firebase Cloud Messaging之类的工具让用户知道他们可以询问结果,但这是一种次优体验。他们会很快添加此功能吗?再说一次,我所知道的是我在回答中所说的——他们在2017年I/O大会上宣布了通知,但没有说明何时、是否会有API,或者那个API会是什么样子。
The curl statement is: curl -X POST -H "Content-Type: application/json; charset=utf-8" -H "Authorization: Bearer I INSERTED THE CORRECT CODE HERE" --data "{'event':{ 'name': 'custom_event', 'data': {'name': 'Sam'}}, 'timezone':'America/New_York', 'lang':'en', 'sessionId':'a6ac2555-4b19-40f8-92ec-397f6a042dde'}" "https://api.api.ai/v1/query?v=20150910"