如何让Meteor“房间”知道更新

时间:2016-06-11 00:09:28

标签: sockets meteor youtube-api

我正在为togethertube.com建立一个类似的应用程序,到目前为止我已经有了这个

/个人资料,/ rooms,/,/:roomname

现在,在每个房间我都使用youtube播放器API和youtube视频搜索API,房间由名为“rooms”的Mongo集合加载,名为“videos”的Mongo集合与他们自己的房间相关联每次加载房间时,他们的视频也会被加载。

房间集合有一个名为“currentVideo”的字段(以及“currentVideoTime”),因此,我想让当前视频字段更改时知道该特定房间,以便不是该房间所有者的每个用户的视图并且目前正在查看它的变化,youtube播放器API开始播放新视频。

我不知道怎么做,我已经考虑了套接字,但我开始使用Meteor的原因是为了避免使用socket.io,但如果这是解决方案,那就这样吧。还尝试考虑使用Meteor的集合“观察”,以便当房间集合中与该房间相对应的文档被更新时(当房间视图的所有者中的视频完成播放并且房间的当前视频被更新时)将触发一个功能并且youtube播放器API会加载该视频。

关于如何实现这一点的任何想法,还是有一个更好的Full-Stack框架,我可以用它来做类似dubtrack.fm和togethertube.com的事情?

1 个答案:

答案 0 :(得分:1)

Collection.observeChanges()是要走的路。请注意,Meteor已经使用WebSocket,因此更改会自动从服务器推送到所有订阅的客户端。