和请求相似,服务器会将回答传递给第一个参与者 。当发生这些时,两个peers就在通过向服务器发送candidate信息交换icecandidates,服务器反过来传递它们给其它客户端 。Ice candidates被添加到每一个客户端的peer connection 对象中 。将如下代码添加到client.js文件中 。

文章插图

文章插图
第二步就此完成 。
当一切准备就绪后,每一个peer接收远程流,接着onAddStream函数将会将它显示在屏幕上 。以下是client.js文件中的函数 。

文章插图

文章插图
现在我们完成了第三步 。
然而我们的服务器还没有完成 。我们从询问所需的library开始,并且在public文件夹中设置static host来服务客户端文件 。
接着我们使用socket.io定义信号处理 程序 。首先我们会得到创建或加入事件,它们会统计房间中客户端的数量 。如果没有用户说明客户端是第一个peer,因此向它发送一个创建事件 。如果房间中已经存在了一个参与者,那么客户端会被添加到房间中,并且向它发送加入事件 。如果房间中已经有两个用户,那么这被认为是房间满了的情况,因此不需要再添加客户端 。
这一连串的事件都是按照传递顺序工作的,向房间中其它客户端发送接收到的同样的信息 。创建一个新文件,粘贴如下代码并保存它到项目文件夹下,名为server.js.

文章插图

文章插图
既然我们已经具备了所有所需的文件,我们已经准备好测试我们的应用了 。在命令行,进入项目文件夹中并且输入如下命令:
node server.js接着使用 google Chrome or Mozilla Firefox,将此链接在两个标签下打开,确保你都输入了同样的房间号 。是不是很酷?
我们已经创建了我们的第一个视频会议App.
【如何使用WebRTC建立一个视频会议App】
推荐阅读
- Spring 是如何解决循环依赖的?
- 自媒体小白也可以轻松写出爆款文:一篇78万+爆款文是如何产生的
- 头条的计算收益到底如何计算的
- 如何设计一个良好的API接口?
- 浏览器的工作原理是怎样的?是如何把网页显示出来的?
- 如何在 Facebook 上赚钱
- Mac电脑如何恢复数据?推荐试试这个方法
- 技术大佬教你如何使用Nginx在公网上搭建加密数据通道?
- 褚遂良如何死的,唐朝褚遂良的结局
- 大飞燕鲜切花图片,玫瑰花图片
