在 Dialogflow 中将未回答的问题发送到电子邮件

Send unanswered questions to email in Dialogflow

我正在尝试配置 dialogflow 来处理未回答的问题。我想要的是...

所以除了确保 NodeJS webhook 有原始问题外,我可以完成大部分工作,因为触发它的实际意图是 'provide an email',而不是原始失败的问题。

非常欢迎任何建议...

可能的答案...

  • 默认回退触发 webhook,提供问题和 sessionID,然后将其存储在数据库中
  • 回退请求电子邮件地址
  • Provides_email intent 再次触发 webhook,然后更新原始记录以包含电子邮件地址,并将请求发送到收件箱。

可能最简单的方法是利用 Contexts。这可以节省数据库操作,直到您从用户那里获得所需的所有信息,并有助于确保您在适当的时间收集电子邮件地址。

在这个方案下:

  • Fallback Intent 触发了 webhook,它
    • 回复询问电子邮件地址
    • 在参数中包含一个上下文作为响应问题的一部分
  • 然后您将拥有另一个将此上下文设置为输入上下文的 Intent。当这个 Intent 被触发时
    • 将请求发送到收件箱,将信息保存在数据库中,等等。
    • 回复用户并清除上下文。
  • 您可能有其他 Intent 或 Fallback Intent,它也将此上下文作为输入上下文。这些人可能会回复说您需要一个电子邮件地址来转发问题,或者警告他们如果他们不提供,您将无法得到他们的答案。如果他们不想提供地址、改变主意等,这会处理这种情况。