问题标签 [peerjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3108 浏览

javascript - 如何通过 peerJS 点对点连接接收数据?

我正在尝试使用 peerJS 连接两个对等点。我几乎只是按照他们的“入门”进行操作,但我仍在苦苦挣扎。下面是我到目前为止得到的代码。

我已经设法使用生成的 peerID 在两个对等方之间建立连接,但是,我似乎无法理解发送和接收消息。据我了解, conn.send() 应该将消息发送给客户端,然后客户端接收它,但我不知道如何 /get/ 数据显示在另一个对等方上,更不用说使用发送它了来自第一个对等方的 SendMessage 函数。有人可以解释在我的电脑熄火之前如何发送和接收数据吗?

谢谢

0 投票
2 回答
5674 浏览

javascript - 使用 PeerJS 进行广播或对等发现

我正在评估PeerJS以实现一个简单的两人在线游戏。似乎一旦我将id一个玩家的连接转移到另一个玩家,他们就可以通过 PeerJS 打开一个频道并且很高兴。

但是如果两个不认识的玩家想要玩,那么在那里进行匹配的最优雅的方式是什么?有没有办法向 PeerJS 代理询问所有已连接客户端的列表,可能附带一些元数据(例如“status:wants-to-play”)?或者有没有办法向所有客户广播?

0 投票
1 回答
1156 浏览

javascript - 只显示一帧 WebRTC 流

我正在使用 PeerJS 和他们的云托管服务器来构建 WebRTC 应用程序。这是我的代码:

流启动并请求两个用户授予网络摄像头访问权限。但是,在此之后,仅显示第一帧。尽管 Chrome 选项卡上的脉冲记录图标仍然显示,但没有显示更多帧。“流!” 上面的日志只添加一次。

我尝试在本地托管服务器以检查这是否是问题所在,但事实并非如此。我错过了什么?

0 投票
2 回答
5015 浏览

javascript - PeerJS 文字聊天

我目前正在编写一个基于 Web 的聊天客户端,其中两个人随机连接并在没有提示的情况下一起进入聊天。

我正在使用 PeerJS 库,因为我发现它对我来说是最容易理解的。不过,我正处于一个障碍点:我不确定如何实际实现文本聊天。

我在他们的网站(这里)上查看了他们的示例,并稍微修改了代码以适合我(主要是它的外观和一些输出是什么)。

我遇到的一个问题是他们的代码需要两个人手动输入另一个人的 id,如果没有两个人的验证,聊天就不会开始(意思是,他们都必须输入 id 并按下“连接”按钮)。

下面是一些我试图解决的代码:

首先,我必须监听与 PeerJS 的连接:

但同时,我想监听在同一个客户端上打开连接,因为我不想提示用户输入彼此的 ID:

但这是不可能的(据我所知),因为myConn在我打开与myPeer上面的侦听器的连接之前我不知道会发生什么。

我的问题是我不知道如何同时做这些。如果它有帮助的话,我正在尝试在这个旁边进行视频聊天,我都已经想通了,所以如果我能以某种方式从那个连接或其他什么东西上背下来,那也行得通。我对项目有完全的控制权,所以我几乎可以做任何我想做的事情(包括切换库,如果一个更容易使用或更开发的话)。

0 投票
1 回答
234 浏览

peerjs - 对等js在活动时删除文本

我创建了一个实时共享文本编辑器,它允许人们编辑共享文档,因此当用户在一端键入时,另一端可以看到,但是当用户在一端删除时它不会在另一端删除,我怎么能解决这个问题,例如当用户在一端删除文本时,它在另一端删除,到目前为止这是我的代码

0 投票
1 回答
3619 浏览

javascript - PeerJS 设置你自己的 PeerID

我正在试用PeerJS,效果很好。

只需查看演示,Peer ID 是自动为您创建的。

有没有办法定义/设置您自己的 Peer Id?

0 投票
1 回答
4669 浏览

webrtc - peerjs with STUN for webrtc

我使用 peerjs 开发了一个基于 webrtc 的视频聊天。该解决方案运行良好,但一些用户面临建立呼叫的问题。我猜这是由于 NAT 和防火墙问题。

我有用户 peerjs:

我已将代码更改[passed google stun]为此处所示:https ://groups.google.com/forum/#!msg/peerjs/JzIr7INoTbQ/IIykVNHiv_sJ

还是同样的问题。某些用户无法连接到对等 ID。难道我做错了什么?

0 投票
1 回答
65 浏览

javascript - 直接引用PeerJS中的一个函数

对于一个项目,我目前正在使用一个名为 peerJS 的 Javascript 库来处理一些 webRTC 内容。我有这样的代码构建

但是当 DOM 准备好并且代码变得非常混乱时,我必须加载它,我决定为它创建一个单独的函数。

但这似乎有点全面,所以我尝试了这个:

但这对我不起作用,我是在做一些简单的错误,还是我尝试做的事情完全不可能?

0 投票
1 回答
991 浏览

node.js - 在 OpenShift 上运行 peerjs-server 返回 503 Service Unavailable

我在 OpenShift 中设置了一个 node.js 0.10 设备,我部署了一个基于peerjs-server的简单服务器。我想要这个服务器做的就是充当一个信号服务器,在连接到我的应用程序的对等方之间传递连接信息,然后它们使用 WebRTC 进行对等通信。指向演示“PeerJS Cloud”信号服务器时一切正常,但是当尝试使用我自己的服务器设置时,我不断返回 503 状态代码。

这是我使用的服务器创建代码:

注意:我已将主机添加到 peerjs-server,因此我可以使用 OpenShift 的 IP,但不确定这是否有必要,但如果没有它,它也无法正常工作。

peerjs-server 使用的服务器是 restify。这是服务器创建和监听代码:

this._options.port 和 this._options.host 是在前面的代码段中定义的,我没有使用 SSL,所以没有任何东西被传递进去。

将此代码部署到 OpenShift 时,我没有收到任何错误,但在端口 80 或 8000(开放的外部端口)上访问站点时,我得到 503。我还检查了 rhc tail,这就是我得到的: 截图(不能发布图片,因为我没有声誉..)。不确定这到底意味着什么。

非常感谢任何帮助,如果需要更多信息,我可以添加更多信息,不确定什么是重要信息。

更新:这是一个使用 1-3 个小齿轮的扩展应用程序。

0 投票
2 回答
8839 浏览

javascript - webRTC:稍后添加音频或使用 peerJS 禁用麦克风

我目前正在编写一个应用程序,使用户能够使用 peerJS 通过 webRTC 开始视频通话。现在我希望用户能够决定是否要添加音频,但无需重新启动通话。

正如我所看到的 - 根据这个答案- 无法使用浏览器控制麦克风。假设我在启用视频和音频的情况下开始通话,我可以将合作伙伴端的视频元素静音。我不想那样做。为什么?我想有人可以使用浏览器的开发者控制台并取消静音视频元素,从而在他或她不知情的情况下监视调用者。

所以现在看来​​我必须重新打电话给合作伙伴并激活视频和音频,现在如果用户只想要视频,我将不得不再次打电话。

我的问题:有更好的方法吗?另外,如果接听电话,是否有办法确定它是纯视频通话还是视频和音频通话?