结果的音频支持

时间:2019-04-18 13:38:57

标签: bixby

如何从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)
}

1 个答案:

答案 0 :(得分:0)

很高兴听到您在API方面解决了该问题。

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

  • Bixby也可以使用default-select“为用户做出决定”,尽管它必须是select-firstselect-min,但您可以阅读更多here
  • 如果将来您需要执行用户选择或搜索后与用户进行一些互动活动,则可以尝试使用followup中的conversation-diversresult-view子键。检查我们的参考页here

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

以下是注释中其他问题的答案:

  1. 该演示仅用于播放,正如您在JS文件中看到的那样。该演示的目的是演示如何使用bixby.audioPlayer库。在实际的压缩程序中,您应该能够根据用户NL输入通过API调用找到音频文件,并将其转换为适当的audioInfo结构。
  2. result-view应该起作用,因为它仍在Bixby中。
  3. 您绝对可以在私人提交后在设备上进行测试。
  4. 由于模拟器当前不支持audioPlayer功能,因此在模拟器中运行发声将在调试窗口中导致“待处理的输入”。该团队现在正在审查,以查看是否有可能在即将发布的版本中添加audioPlayer功能。
  5. 因此要测试example.meow,您需要进行私人提交,然后上传到设备。您还需要更改胶囊名称,因为在您进行私人提交时,它可能不允许example名称空间。