当前位置: 首页 > 知识库问答 >
问题:

如何向 coTurn 服务器发送 RPi-WebRTC-Streamer 外部 IP 地址信号?

曾嘉荣
2023-03-14

目前,我的RWS(RPi-WebRTC-Streamer)应用程序在我的本地网络上工作。我现在正在尝试将其连接到我托管的coTURN服务器。

我的main_rws_orig.js指向我的coTurn服务器

var localTestingUrl = “ws://10.0.0.11:8889/rws/ws”;

var pcConfig = {“iceServers”: [{“urls”: “stun:stun.l.google.com:19302”}]};

var pcConfig = {“iceServers”: [{“urls”: “stun:172.104.xxx.xxx:3478”}]};

在使用 https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ 测试TURN和STUN时,我会得到以下结果:

0.009 RTP 主机 3376904655 UDP C7F50FE-CBD0-4332-AE51-A013C4D35C5E.Local 41771 126 |30 |255

0.091 RTP SRFLX 842163049 UDP 42.116.95.19 41771 100 |30 |255

0.158 RTP 继电器 3617893847 UDP 172.104.xxx.xxx 17857 2 |30 |255 39.809 完成 39.811

我的coTurn网络配置工具也在工作。

我读过关于信令服务器的文章,但没有找到太多关于它的文档。我只是想弄清楚如何完成。如何使用 coturn 将我的 RWS 应用程序连接到外部世界。

任何提示或信息将不胜感激。

共有1个答案

别峻
2023-03-14

信令服务器基本上是一种服务,它将ICE候选者发送到对话的对等方之间。通常它使用Websockets进行这种通信。ICE候选者可能包括您在JavaScript中提供给WebRTC对象的CoTurn服务器凭据。但是您需要在参与者之间共享所有候选人,为此您需要信令服务器。您可以使用任何支持完整websockets通信的语言,如NodeJS或Java(不是PHP!)。

看看这篇文章,它很好地描述了这一点:https://www.html5rocks.com/en/tutorials/webrtc/infrastructure/#how-can-i-build-a-signaling-service

除了你明确想使用点对点WebRTC,我建议你也看看Kurento Media Server的教程,以更好地理解这个原理,NodeJS/Java是Kurento和你的浏览器之间的信号。请注意,通过使用媒体服务器,它将始终位于参与者之间的中间,其优点是减少每个参与者在媒体服务器上记录整个对话的网络使用量,但也有缺点,例如没有端到端加密

NodeJS示例:https://doc-kurento.readthedocs.io/en/6.14.0/tutorials/node/tutorial-one2one.html

Java 示例:https://doc-kurento.readthedocs.io/en/6.14.0/tutorials/java/tutorial-one2one.html

 类似资料:
  • 这是我的docker-compose.yml代码: 下面是我的traefik.toml代码:

  • 本文向大家介绍如何在PHP中识别服务器IP地址?,包括了如何在PHP中识别服务器IP地址?的使用技巧和注意事项,需要的朋友参考一下 可以使用以下代码行标识服务器IP- 可以使用下面的代码行来标识端口- 对于5.3和更高版本的PHP,可以使用以下代码行- 当运行独立脚本(未通过Web服务器运行)时,可以使用此功能。

  • 问题内容: 如何识别PHP中的服务器IP地址? 问题答案: 像这样的服务器IP: 这是港口

  • 我正在将minikube作为docker映像运行。我试图使用Nodeport将我的服务公开给外部世界。 这是我的yaml文件。 搜索了大量关于nodePort的信息,我们需要节点ip才能访问该服务。我可以使用minikube service docker hello world svc访问我的服务——url,它为我提供了访问服务的urlhttp://127.0.0.1:52526但此处的端口号与n

  • 我写了一个小的协议栈来连接KNX/IP路由器。机制如下: null

  • 我很清楚,我必须使用完整功能的broker支持,将STOMP作为子协议。我们已经使用rabbit进行通信,所以它是显而易见的选择。 文档说明“STOMP broker中继还为每个连接的WebSocket客户端创建一个单独的TCP连接。”它是每个用户会话的单独连接,而不是每个用户。此外,当发送端位于同一应用程序(负责处理用户会话的应用程序)内时,每个会话都创建一个单独的队列。我认为,希望发送消息的其

  • 我是的新手,虽然我阅读了基本文档,并尝试部署一个简单的Spring BootAPI,但我可能缺少很多东西 我已经将API部署为.jar文件,然后安装并使用以下命令推送它: 然后使用docker命令启动API: 当我访问localhost:7777/hello时,我得到了所需的响应 这是我的 根据这个应答的命令,发布这个命令以获取 因此,我使用运行它,得到了这个错误 如果我设法获得,我是否能够访问它

  • 问题内容: 我正在使用urllib2从服务器下载数据。但是我需要确定所连接服务器的IP地址。 请不要要求我使用URL查找IP地址,因为这不能保证从中下载数据的服务器和IP地址查询在使用“ HTTPRedirects”或负载平衡服务器时都解析为相同的IP地址。 问题答案: 在进行任何重定向之后,返回用于实际检索资源的URL。然后,将主机名移出并移交以获得IP地址。 对于给定的主机名,某些主机可能具有