我需要使用后续事件将Dialogflow的5秒超时延长至15(或至少10)秒,因为我正在执行多个相互需求的请求,所以所有这些请求的总和通常超过5秒。
我一直试图在内联编辑器上触发一些后续事件,但是方法agent.setFollowupEvent(...)
似乎没有任何作用,该事件根本没有触发。
我尝试添加/删除动作,训练短语,这些短语与先前意图的响应完全匹配,使用上下文,但没有任何效果。我总是收到“超时”错误,我的代理什么也不做。 我还确保针对每个意图激活了webhook呼叫
'use strict';
var https = require ('https');
const functions = require('firebase-functions');
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
let action = request.body.queryResult.action;
const agent = new WebhookClient({ request, response });
if (action == 'test.followup') { //triggered by 1st intent
console.log("In test.followup");
agent.setFollowupEvent('customevent1'); //should trigger the 2nd intent
console.log("We are here");
}
else if (action == 'test.followup2') { //triggered by 2nd intent
console.log("In test.followup2");
agent.setFollowupEvent('customevent2');//should trigger the 3rd intent
}
else if (action == 'test.followup3') { //triggered by 3rd intent
console.log("In test.followup3");
response.send(JSON.stringify({"fulfillmentText": "We did it !"}));
}
}
我希望第一个意图触发事件“ cusomevent1”,从而触发第二个意图,导致动作“ test.followup2”,然后导致事件“ customevent2”,依此类推,但是,行“ agent.setFollowupEvent” ('customevent1')“什么都不做(我可以在Firebase控制台的日志中看到“我们在这里!”这一行),最终使我得到了意图1的默认响应。