搭建自己的聊天服务器(Rocket.Chat下篇)

在各种 Rocket.Chat 的介绍中都有支持语音/视频聊天功能的描述,但是刚安装好的 Rocket.Chat 中是找不到的,需要我们进一步的安装、设置。

要支持视频,有几个选择,一个是 Jitsi Meet,一个是 RocketChat Meet,还有一个 BigBlueButton。之前我们在《在群晖上搭建专属的视频会议》里已经安装过 Jitsi Meet,所以就先以 Jitsi Meet 为例看看如何设置

Jitsi Meet

网页版进入 管理 模块

title

左侧菜单项找到 视频会议 ,展开 Jitsi

title

  • 首先肯定要启用
  • 域名:填入 Jitsi 的域名(有端口要带上端口),当然,如果你并没有自己搭建 Jitsi Meet,也可以用公网的。如果准备用公网的,这项不用做任何修改
  • SSL:因为浏览器中要使用音视频必须支持 SSL ,所以不管是你架设的 Jitsi Meet 服务还是公网,都必须启用
  • 总是在新窗口打开:建议启用,否则有可能会看不全
  • 在频道中启用:建议启用,这样在频道中也可以使用视频会议了
  • JWT 认证:不建议启用,但启用了会更安全。如果启用需要在 Jitsi Meet 安装相应的插件并做相应的设置,具体设置过程可以参考文档: https://github.com/jitsi/lib-jitsi-meet/blob/master/doc/tokens.md

JSON Web Token(JWT)是一个开放的标准(RFC 7519),它定义了一个紧凑且自包含的方式,用于在各方之间作为JSON对象安全地传输信息。由于此信息是经过数字签名的,因此可以被验证和信任。

title

在 Android 客户端,频道中选中一个用户,会发现多了 视频电话

title

在 Windows 客户端也是一样的

title

开始视频呼叫

title

对方会收到一条信息,点击后即可进入视频

title

呼通之后

title

BigBlueButton

BigBlueButton 是一款专门为了「老师、学生教学需求」而设计的免费、开源的网络会议系统,支持实时共享音频、视频、幻灯片(带有白板控件)、聊天和屏幕。教师可以使用投票、表情符号、多用户白板和分会议室来远程和学生进行互动。演示者也可以记录和回放内容,供以后与他人共享。

关于 BigBlueButton 的安装使用,简单测试了一下,网上的 Docker 镜像都是2年前的,尝试后发现存在很多错误,未能成功运行,有空再研究。

网页版进入 管理 模块,找到 视频会议 ,展开 BigBlueButton

title

想用 https://demo.bigbluebutton.org 测试,但没有 Shared Secret,所以启用之后可以看到按钮,但启动 Start Meeting 后没有任何看到任何提示

title

在管理后台的日志菜单中会能看到 Exception while invoking method bbbJoin Error 这类的错误。

title

RocketChat Meet

RocketChat Meet 就是 WebRTC ,网页版进入 管理 模块,左侧菜单项找到 WebRTC,启用后在用户信息会出现 开始视频对话 和 开始音频对话 两个按钮

title

开始视频对话

title

对端的手机端没反应,但是网页端会弹出提示

当同一个账号登录多个网页端时,都会收到通话的消息,但是接通只能是一个

title

接受之后

title

chrome 浏览器中,屏幕共享需要另外安装插件

title

而在 Safari 浏览器上并不支持屏幕共享功能

title

如果是音频对话,本地和远端都是黑框

title

小结

Rocket.Chat 功能非常强大,能够和很多系统进行整合,而视频只是其中的一项,感兴趣的可以深入研究。

参考文档

官方文档
地址:https://docs.rocket.chat/

Video Conferencing
地址:https://docs.rocket.chat/guides/administrator-guides/setting-up-video-conferencing

Voice and Video Conferencing
地址:https://docs.rocket.chat/guides/user-guides/voice-and-video-conferencing

Rocket Chat part 3: Installing Jitsi with JWT for secure video conferencing
地址:https://medium.com/@szewong/rocket-chat-part-3-installing-jitsi-with-jwt-for-secure-video-conferencing-b6f909e7f92c