后续事件未触发

时间:2019-06-24 13:28:03

标签: dialogflow

我需要使用后续事件将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的默认响应。

0 个答案:

没有答案