如何将收集的值传递给重新计划的操作?

时间:2019-08-06 20:01:32

标签: bixby bixbystudio

当用户说“ read john 3:100”时,我有一个ReadBibleVerse动作,该动作与book:johnchapter:3verse:100相匹配。端点将返回404,因为没有第100节。

我希望该操作捕获错误,并将replan传递给“读取章节”请求,并传递book:johnchapter:3

我有什么...

action (ReadBibleVerse) {
  collect {
    input (book) {…}
    input (chapter) { type (ChapterNum) … }
    input (verse) {…}
  }
  output (Scripture) {
    throws {
      unknown-error {
        on-catch {
          replan {
            dialog ("Unknown verse, trying the chapter.")
            intent {
              goal: Scripture
              route: ReadBibleChapter
}}}}}}}

...我得到的是“不知名的诗歌,请尝试本章。我需要一本书才能继续。”

我显然遇到了错误,并且我相信自己已经“重新计划”了ReadBibleChapter,但我也得到了“我需要一本书才能继续”。因为我需要显式传递bookchapter

我发现intent.value似乎可以解决我的问题,但似乎找不到正确的格式:

  • value: ChapterNum
  • value: ChapterNum (chapter)
  • value: [namespace].ChapterNum { $expr(chapter) }
  • 更多废话

1 个答案:

答案 0 :(得分:2)

这应该有效value {$expr(chapter)}