Dialogflow不会触发所需参数的提示

时间:2018-04-26 14:06:10

标签: actions-on-google dialogflow

我遇到的问题是,我在参数缺失时根据参数所定义的参数提示不会被触发。如果参数丢失,模拟器会回答“抱歉,我没有得到”。

一个例子:

使用dialogflow-fulfillment nodejs库函数代码:

function test(agent) {
    let age = agent.parameters.age.amount;
    let conv = agent.conv();
    conv.ask('This is from the backend: ' + age);
    return agent.add(conv);
}

Dialogflow上的意图:

Dialogflow

模拟器:

Simulator

1 个答案:

答案 0 :(得分:1)

问题在于您使用的训练短语包含一个数字,因此机器学习将模式视为大致类似于“如果该人说'测试'后跟数字,则触发此意图。”

但是在测试时,我们只是使用短语“test”。模式检测没有将数字视为短语的一部分,因此它认为它不符合该意图。

要解决此问题,您可以添加仅仅“test”的训练短语而不给它一个参数。这将与短语匹配,但仍需要确保“age”参数具有值,因此它会提示它。

enter image description here