【问题标题】:How to use a repeat keyword in dialogflow?如何在对话流中使用重复关键字?
【发布时间】:2020-10-12 11:09:56
【问题描述】:

我正在使用 actions-on-google 和 dialogflow 来构建聊天机器人。助手提出问题,用户回复。一旦提出问题并且用户说“重复”,我希望重复该问题。有什么办法可以做到这一点吗? 这是我的代码:

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

    const rating = conv.parameters.any;
    senddata[0] = qstion[0] + rating;
    conv.ask(qstion[1]);
});

有人可以帮我解决这个问题吗?

【问题讨论】:

标签: node.js actions-on-google dialogflow-es-fulfillment


【解决方案1】:

Dialogflow 有一个session storage 的概念,它可以存储仅适用于会话的数据。通过这种方式,您可以存储包括您之前的回复在内的数据。

所以可以这样实现:

app.intent('First', conv => {
    const rating = conv.parameters.any
    senddata[0] = `${qstion[0]}${rating}`
    conv.data.lastResponse = qstion[1]
    conv.ask(qstion[1])
})

app.intent('Repeat', conv => {
    if (conv.data.lastResponse) {
        conv.ask(`Here is what I said before: ${conv.data.lastResponse}`)
    } else {
        conv.ask(`I didn't say anything. Can you ask me something else?`)
    }
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-23
    • 2014-01-16
    • 2012-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-18
    相关资源
    最近更新 更多