1

当用户说“阅读约翰 3:100”时,我有一个 ReadBibleVerse 操作匹配book:john, chapter:3, verse: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) }
  • 更多各种废话
  • …</li>
4

1 回答 1

1

这应该工作value {$expr(chapter)}

于 2019-08-06T20:24:37.783 回答