如何防止对话在DialogFlow中退出

时间:2019-10-10 15:42:36

标签: dialogflow actions-on-google

我在Dialogflow中为我的取消事件启用了Webhook。

我需要检查流程的当前阶段,以防万一是付款还是转账,我只需要进入主要流程而不关闭整个对话即可。

但是,我看到该应用程序不允许我阻止退出。无论如何,它迫使对话存在。有人可以帮忙吗?我可以使用其他任何解决方法来防止退出来处理我遇到的情况吗?

这是使用Google动作框架在node.js中编写的取消事件代码。

 app.intent('askCancel', (conv) => {  

   if (conv.user.storage.isTransfer || conv.user.storage.isPayment) {
     conv.ask("Ok we have cancelled the transaction. What else would you like to do?")
     deleteContext(conv);
     conv.contexts.set('ask-service-context', 5);
     return;
   }  

   conv.user.storage = {};
   conv.close("Thank you for using the application. Have a nice day.");
 });

1 个答案:

答案 0 :(得分:1)

不,没有。

这就像浏览器窗口不会关闭,因为页面作者阻止了close事件。

用户对完成该操作具有最终控制权-最好的办法是保存状态并警告他们这是他们已完成的事情,并在将来可以重新启动它。