0

如何从 javascript 响应中进行计算输入?所以只需从响应中选择一种声音???我不希望用户选择一些 - 他会说播放声音 - 我通过 api 调用获得声音,然后他们开始播放

例如我有javascript函数:

module.exports.function = function CommandContext(userInput, $vivContext){
  return {
    audioInfo: {
        category: 'SINGLE',
        displayName: res.audio.name,
        repeatMode: 'ALL',
        doNotWaitForTTS: true,
        audioItem: [{...}]
    }
  };
}

行动模式:

action  (CommandContext) {
  description ('Context')
  type(Search)
  collect {
    input (userInput) {
      type (commandUser)
    }
    computed-input (sound) {
      type (audioPlayer.Result)
      compute {
        intent {
          goal: audioPlayer.PlayAudio
          value: CommandResult.audioInfo
        }
      }
      hidden
     }    
  }
  output (CommandResult)
}

4

1 回答 1

0

很高兴听到您在 API 方面解决了它。

以下是一些可能有用的额外信息:

  • Bixby 也可以“为用户做出决定”,default-select尽管它必须是select-first或,您可以在此处select-min阅读更多信息。
  • 如果以后需要实现用户选择,或者搜索后与用户进行一些交互活动,可以试试里面的followupconversation-divers子键result-view在此处查看我们的参考页面。

让我们知道它是否有帮助,并与 Bixby 一起玩!

以下是评论中附加问题的答案:

  1. 该演示仅用于播放Meow,如您在 JS 文件中所见。演示的目的是展示如何使用 bixby.audioPlayer 库。在实际的胶囊中,您应该能够根据用户 NL 输入通过 API 调用找到音频文件,并将其转换为适当的 audioInfo 结构。
  2. 结果视图应该可以工作,因为仍在 Bixby 中。
  3. 您绝对可以在私人提交后在设备上进行测试。
  4. 由于模拟器目前不支持 audioPlayer 功能,因此在模拟器中运行话语将导致调试窗口中出现“等待输入”。团队现在正在审查是否可以在即将发布的版本中添加 audioPlayer 功能。
  5. 因此要测试example.meow,您需要进行私人提交,然后上传到设备。example您还需要更改胶囊名称,因为在您进行私有提交时它可能不允许命名空间。
于 2019-04-23T16:32:38.820 回答