如何避免输入被“保留”到后续交互中?

时间:2019-03-18 15:14:00

标签: bixby

我的动作有3个输入:必填书籍,可选章节,可选诗歌。

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

如果再跟上read [book] [chapter],我将从先前的请求中传入Verse值。我如何避免这种情况发生?

3 个答案:

答案 0 :(得分:0)

Bixby使用历史输入(例如,来自先前请求的输入)来填充用户话语中所有缺少的输入,以此作为一种简化的对话流程的方式。

在不应该进行此类假设的使用案例(例如您的案例)中,我建议在Action的collect输入定义中使用Element。这将确保Bixby不使用历史输入来填补空白,而是向用户询问相关输入。您可以了解有关prompt-behavior (AlwaysSelection) here的更多信息。

答案 1 :(得分:0)

我能够绕过此问题(出现),但创建了三个单独的动作(必填书,必填书+必填章,必选书+必选章+必选诗句)。

然后,我只需要复制action-endpoint即可允许同一端点接受所有三个动作。

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

答案 2 :(得分:0)

如果您绝对不希望有任何历史输入,则可以尝试提出这些概念transient