问题标签 [xirsys]

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 投票
0 回答
810 浏览

javascript - Xirsys WebRTC 找不到 sdp 对象

我正在尝试测试 Xirsys 提供的示例,在该示例中我可以仅使用 PHP 进行信号传输。冰服务器/令牌和主机似乎工作正常,但在尝试连接时返回“未捕获:类型错误:无法读取 null 的属性 'sdp'。它似乎不为空的对象,不确定这里发生了什么。跟随我的代码:

getice.php

获取令牌.php

获取主机.php

编辑:错误 -> 在 Chrome / Firefox 上 在 Chrome 上 在火狐上

0 投票
1 回答
526 浏览

webrtc - 通过我们的服务器代理请求时,如何获取用户所在地区最近的 Xirsys STUN/TURN 服务器

Xirsys 文档说,为了安全起见,您应该始终通过 Web 服务器代理对 STUN/TURN 服务器列表的请求,而不是直接从客户端向 Xirsys 发出请求。这是有道理的。但他们也声明“为了真正从所有全球位置中受益,您可以在调用中使用 global.xirsys.net 路径。global.xirsys.net 路径将自动检测用户的位置并返回最近的可用地理区域,以便用户获得尽可能快的响应。”

但是,我们的网络服务器托管在一个地区。我们的 Web 服务器正在向 global.xirsys.net 发出请求。所以 xirsys 总是返回最近的区域到我们的服务器,而不是用户

我可以以某种方式修改对 Xirsys 的请求以提供用户的 IP 地址吗?(大概这就是它计算用户区域的方式......)或者除了自己进行 IP > 区域查找并将我们的请求发送到最近的 Xirsys 区域的服务器之外,还有其他方法可以工作吗?

参考:

0 投票
0 回答
72 浏览

android - 如何防止我的 Xirsys 频道上的用户名列表随着重复而增长?

我是使用 Android 版 Xirsys API 的新手。我已按照教程(“Learning WebRTC Getting Started”)进行操作,但我注意到的一件事是,我从SYS收到的“用户”消息不断增长,并且我在测试中使用了相同名称的重复项(大概是因为我我在尝试 API 时连接了多次)。这是一个示例消息:

除了关闭各种资源以让 Xirsys 从其内部列表中删除该用户之外,我还应该做些什么吗?

我首先通过 Volley 发出 PUT 以获取令牌,然后通过 Volley 使用 GET 来获取信令主机 Url,然后打开套接字:

所有这些都很好,我可以来回发出信号。

这是我的 onDestroy():

这是 shutDownResources() 方法:

0 投票
1 回答
655 浏览

android - 当其中一台设备连接到 WiFi 时,WebRTC android 实现不起作用

我开发了一个视频流应用程序,可以将视频从一个 android 设备流式传输到另一个设备(而不是相反)。当两台设备都在各自的 LTE 网络上时,该应用程序可以正常工作。但是,当其中一台设备连接到 WiFi 时,应用程序在握手(交换提议和答案)中失败并在日志中显示这一点

在某些情况下有 FAILED 代替 CLOSED

我不知道为什么会发生这种情况,在单个 LTE 的情况下它可以工作,但在 WIFI 情况下它不会。我一直在尝试调试这个问题很长一段时间,但我无法指出任何事情,因为对于 WebRTC 的 android 实现的引用也非常少。请帮忙。

编辑:在 Xirsys 回复候选人之前,我开始发送 Ice 候选人,因此从未使用过 TURN 服务器。所以我改变了我的应用程序,只有在从 Xirsys 收到候选人后才会发生任何握手。我知道这很愚蠢。

0 投票
2 回答
384 浏览

ios - 在原生 iOS Swift 中使用 WebRTC 和 Pubnub 进行视频通话和聊天

我正在开发原生 iOS Swift 项目的医患预约应用程序。在这里,我想使用 WebRTC 和 PubNub 信令服务器实现实时视频通话。我对它完全陌生。我不知道如何实现这一点。我看过一些 Objective-C 代码,但我还是不明白。如果你们中的任何人迅速实施相同的方法,请提供帮助。

0 投票
2 回答
189 浏览

webrtc - 是否可以在提供需要凭据的不同 TURN 服务器的对等方之间成功协商 WebRTC 连接?

我们使用全球 TURN 服务器 (Xirsys) 提供商。当在对等点之间建立连接时,每个对等点首先确定离它们的位置最近的 TURN 服务器,然后获取该服务器的凭据。然后,对等点交换 ICE 候选者,包括它们各自的 TURN 服务器 URL。

如果这些对等点位于不同的区域,他们将提出不同的 TURN 服务器。根据这个问题的公认答案:TURN-Server for RTCConfiguration各个 TURN 服务器将相互连接以中继来自 Peer1 <> TURN1 <> TURN2 <> Peer2 的流。但是,我一直无法让它工作。在客户端中强制 TURN(即没有直接的 p2p 连接),并尝试使用例如美国的 TURN 服务器与巴西的服务器建立 peerConnection,协商总是失败。

这是因为服务器需要没有在 ICE 候选人中传递的凭据吗?或者可能是 Xirsys 特有的问题?还是它实际上应该工作正常而我们做错了什么?

0 投票
0 回答
98 浏览

stun - 从 stun 服务器获取 ip 地址

我在 xirsys 上有 stun 服务器。我怎么知道我可以从网络外部通过 NAT ping 到我的电脑的公共地址 + 端口是什么?

0 投票
1 回答
189 浏览

turn - 如何使用转服务器?

我正在使用 xirsys 转服务器。

现在我想将对称 NAT 后面的客户端 A 与对称 NAT 后面的客户端 B 连接起来。

  1. 我应该在哪个端口上监听客户端 A?
  2. 我应该连接到哪个 ip 和端口才能从客户端 B 与客户端 A 建立 tcp 连接?
  3. 如何获取xirsys转服务器的ip?

在客户端 AI 想要运行这个命令,但我不知道应该使用哪个端口:

在客户端 BI 上要运行此命令,但我不知道应该使用哪个 ip 和端口:

PS。执行此命令后的 xirsys:

返回这样的东西

0 投票
2 回答
206 浏览

bigbluebutton - 如何为 Xirsys TURN 服务器配置 Big Blue Button?

我运行 BigBlueButton 的自托管实例并注册了 Xirsys TURN 服务器服务,因为我们需要在(非常严格的)防火墙后面为客户端提供服务。在我运行自己的 coturn 实例之前,但由于这导致了最近的问题,我想我会找一个以此为生的人尝试一下。

现在在这里解释 BBB 中的配置:

https://docs.bigbluebutton.org/2.2/setup-turn-server.html

然而,到目前为止,我完全无法将我从 Xirsys 收到的参数与我必须放入/usr/share/bbb-web/WEB-INF/classes/spring/turn-stun-servers.xml文件中以代替<turn.example.com>and的参数相匹配<secret_value>

有没有人做过这个工作?我确实尝试找到了一个教程,但也失败了。

0 投票
0 回答
57 浏览

javascript - WebRtc 视频聊天:并非所有用户都能看到对方

我使用 WebRtс 为 3 个用户创建一般视频聊天,但发生以下情况:1 个用户看到 2 个,但这两个用户只看到第一个。如果用户在我的本地网络上,则此问题无法重现,尽管我已经配置了 STUN/TURN 服务器(我使用https://global.xirsys.net/),在极少数情况下(大约 10%)也可以正常工作。根据日志,我的代码运行正常,所以我认为没有理由放弃它。知道问题可能是什么吗?