对话流 。根据日期或日子重定向到特定区块。

问题描述 投票:0回答:1

我目前正在dialogflow中构建一个问答聊天机器人,我想知道是否可以根据日期或日子将用户重定向到一个特定的意图。

举个例子:我想让用户在哪天进行每日测验?

  1. 我想让用户每天进行一次测验,如果这一天是(周一至周六)。

  2. 如果是周日,则将其发送到每周测验的意图。

  3. 如果是每月的最后一天,则将其发送到每月测验的意图。

谢谢您的支持

dialogflow dialogflow-fulfillment
1个回答
2
投票

假设用户对您的聊天机器人说 "我想做个测验",这将触发意图 take.quiz. 在履行代码中,你可以根据它的daydate来设置followupEvents。

例如,如果是周一到周六,就可以这样做。agent.setFollowupEvent('take.quiz.daily');这样就会将其 "重定向 "到日常测验意图。

类似于

intentMap.set('take.quiz', takeQuiz);

function takeQuiz(agent) {
  //if day is Monday-Saturday
  agent.setFollowupEvent('take.quiz.daily')

  //if day is Sunday
  agent.setFollowupEvent('take.quiz.weekly')

  //if its last day of the month
  agent.setFollowupEvent('take.quiz.monthly')
}

1
投票

捕捉意图 用户的话 而不是你发送的内容或你如何处理他们发送的内容。所以你不能将用户 "重定向 "到一个特定的意图。

相反,您可以 可以 作为webhook执行的一部分,确定今天是星期几,并发送相应的问题。你可以在上下文中设置一个参数来表明你问的是哪个问题,这样当他们回答时,你就知道他们到底在回答哪个问题。然后你就会有一个Intent接受他们的回答,而履行会评估这个回答并适当地回复。

© www.soinside.com 2019 - 2024. All rights reserved.