使用meteor的websocket进行webRTC信令

时间:2015-04-24 03:09:47

标签: meteor webrtc

我目前正在开发一个网络应用程序,我需要在不同的人之间进行实时交互。我正在使用由PeerJS提供支持的WebRTC来为我的应用添加实时交互性。 现在我开始尝试使用Meteor,我对它的实时功能印象深刻。

当我尝试将PeerJS与Meteor一起使用时,它会抛出此错误:

Users/sauravpanda/.meteor/packages/meteor-tool/.1.1.3.1wysac9++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245
                        throw(ex);
                              ^
ReferenceError: window is not defined
    at Object../adapter (app/dist/peer.js:279:1)
    at s (app/dist/peer.js:1:385)
    at e (app/dist/peer.js:1:556)
    at app/dist/peer.js:1:574
    at app/dist/peer.js:2941:3
    at /Users/sauravpanda/Desktop/aswus/.meteor/local/build/programs/server/boot.js:222:10
    at Array.forEach (native)
    at Function._.each._.forEach (/Users/sauravpanda/.meteor/packages/meteor-tool/.1.1.3.1wysac9++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/underscore/underscore.js:79:11)
    at /Users/sauravpanda/Desktop/aswus/.meteor/local/build/programs/server/boot.js:117:5
Exited with code: 8

如何解决此问题并将WebRTC与Meteor一起使用?

我正在考虑使用socket.io编写自己的WebRTC信令服务器,我希望使用meteor的本机WebSocket支持来用于客户端。根据我对Meteor的有限理解,它已经在某种程度上支持了RTCDatachannel正在做的事情。因此,我唯一需要添加的是对RTCPeerConnectiongetUserMedia的支持。

1 个答案:

答案 0 :(得分:0)

请确保将peer.js放在meteor应用程序的clients/文件夹中,否则它会尝试在客户端和服务器端执行它,而window仅存在于浏览器中