1

我的操作有 3 个输入:必需的书、可选的章节、可选的诗句。

如果我说read [book] [chapter] [verse],我会得到正确的回应。

如果我继续使用read [book] [chapter],我将获得从上一个请求传入的 Verse 值。我如何防止这种情况发生?

4

3 回答 3

0

我能够绕过这个问题(它出现了),但是创建了三个单独的操作(必需的书、必需的书 + 必需的章节、必需的书 + 必需的章节 + 必需的诗句)。

然后,我只需要复制 myaction-endpoint以允许同一端点接受所有三个操作。

虽然我在某些情况下看到了“历史输入”的价值,但似乎也应该有一种方法可以忽略它们。

于 2019-03-19T21:19:35.317 回答
0

如果您绝对不想要任何历史输入,您可以尝试使这些概念暂时化

于 2019-03-19T21:30:42.163 回答
-1

Bixby 使用历史输入(例如,来自先前请求的输入)来填充用户话语中任何缺失的输入,以提供简化的对话流程。

在您不应该做出此类假设的用例中,我建议prompt-behavior (AlwaysSelection)在您的操作的收集输入定义中使用。这将确保 Bixby 不使用历史输入来填补空白,而是询问用户有问题的输入。prompt-behavior 您可以在此处阅读更多信息。

于 2019-03-18T23:24:37.270 回答