对不起,如果之前已经回答了这个问题,但是我甚至在找到我需要的内容时遇到了麻烦,更不用说在现有的堆栈溢出问题中找到建议。
基本上我有一个用户的流星应用程序:
创建记录元数据到客户端并在成功完成保管箱上传后将其发送到meteor应用程序
:auth via dropbox +基本列表/详细模板显示用户的录音
将录制对象插入流星集合后(通过服务器方法)我需要进一步处理: =>从用户的保管箱中获取在客户端上创建的音频 =>将该音频发送到第三方语音到文本api以获得音频的文本转录 =>将成绩单发送给另一个第三方api以进一步处理并分析它
从第三方apis获得的所有结果将存储在录制文件中。
我想反应性地做所有事情但是考虑到依赖关系需要特别注意:audio => transcript =>概念
我希望只有在加载音频时才会获取成绩单,并且只有在录音中存在成绩单时才能获取成绩,而我的观点则反映出这些依赖性,我希望这是反应性的。 (一旦数据发生变化,例如成绩单变得可用,成绩单数据就会被发送到第三方API。)
如果有人能指出我正确的方向(通过观察收藏品,或者在模板助手中使用deps.autorun),我真的很感激。
答案 0 :(得分:1)
假设您有 Recordings 集合,其中包含 audioFileURL ,成绩单和概念。
当用户开始上传他们的音频文件时,您可以创建 Recordings 文档(您可以使用collectionFS或弹弓或其他文件管理包来执行此操作)。
来自文件上传过程的回调设置 audioFileURL的值。此时没有 transcript 或 concepts 键。
您可以使用
发布录制内容> data2 <- as.xts(french1)
> Return.portfolio(data2["1976",1:10],rebalance_on="months")
portfolio.returns
1976-01-31 0.3980000
1976-02-29 0.1017811
1976-03-31 1.3408273
1976-04-30 -11.7395151
1976-05-31 8.0197492
1976-06-30 -0.2550812
1976-07-31 2.5732207
1976-08-31 1.3784635
1976-09-30 -1.6859705
1976-10-31 -21.4958124
1976-11-30 5.6863828
1976-12-31 -7.8071966
Warning message:
In Return.portfolio(data2["1976", 1:10], rebalance_on = "months") :
weighting vector is null, calulating an equal weighted portfolio
这将仅发布已上传音频文件的文档及其位置记录在文档中。 脚本和概念值将在自动发送到客户端时自动发送给客户端。您无需返回并检查它们何时可用加载,因为只要将它们添加到文档中,它们就会显示在客户端上。依赖关系管理自己。欢迎来到流星。