搭建在线教育系统-BigBlueButton

服务器规格

BigBlueButton 是一个使用 ActionScript 开发的在线视频会议系统或者是远程教育系统,主要功能包括在线PPT演示、视频交流和语音交流,还可以进行文字交流、举手发言等功能,特别适合用在网上教学,支持中文等多种语音。
官方首页 http://bigbluebutton.org/
官方demo http://demo.bigbluebutton.org/
1.1 检查服务器规格
1.2 服务器的语言环境en_US.UTF-8

[email protected]:~# cat /etc/default/locale
# File generated by update-locale
LANG="en_US.UTF-8"
如果看不到LANG="en_US.UTF-8",请输入以下命令将本地设置为en_US.UTF-8。
$ sudo apt-get install language-pack-en
$ sudo update-locale LANG=en_US.UTF-8

1.3 检查你的服务器有(至少)4G的内存使用

[email protected]:~# free -m
total used free shared buff/cache available
Mem: 7966 99 7682 8 184 7615
Swap: 8191 0 8191

1.4 检查服务器是否有Ubuntu是16.04

[email protected]:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"

[email protected]:~# uname -m
x86_64

1.5 检查你的服务器是否支持IPV6。

[email protected]:~# ip addr | grep inet6
inet6 ::1/128 scope host
inet6 fe80::20c:29ff:fe8e:f426/64 scope link...
如果inet6 ::1/128 scope host在安装BigBlueButton后没有看到该行,则需要修改FreeSWITCH的配置以禁用对IPV6的支持。
关于Linux发行版的选择。我们(核心开发人员)在Ubuntu上设计,开发,安装和测试了BigBlueButton 1.1:16.04 64位(Xenial Xerus)。这就是我们推荐你使用的。我们还没有在任何其他版本的Ubuntu(或Linux)上测试BigBlueButton 1.1。

安装BigBlueButton

2.1 更新服务器
如果您是在VM上安装BigBlueButton进行测试和开发的开发人员,则BigBlueButton的某些组件(如Tomcat)在启动时需要一个熵源。在虚拟机中,可用的熵可能会降低,导致Tomcat在完成启动之前长时间(有时几分钟)阻塞。为了赋予虚拟机大量的熵,安装一个名为haveged(简单的熵守护进程)的封装:

apt-get install haveged

接下来,将您的服务器升级到最新的软件包(和安全修复程序)。

apt-get update
apt-get dist-upgrade

如果您有一段时间没有更新,apt-get可能会建议您在dist-upgrade完成后重新启动服务器。在继续下一步之前重新启动。
2.2 为BigBlueButton存储库安装apt-get密钥Anchor链接:2安装apt获取bigbluebutton存储库的密钥
BigBlueButton的所有包都使用项目公钥进行数字签名。在安装BigBlueButton之前,您需要将项目的公钥添加到您的服务器,以便apt-get验证已签名的包。为此,请输入以下命令:

wget http://ubuntu.bigbluebutton.org/repo/bigbluebutton.asc -O- | apt-key add -

接下来,所以你的服务器需要知道在哪里下载BigBlueButton包。要配置软件包存储库,请输入以下命令:

echo "deb http://ubuntu.bigbluebutton.org/xenial-110/ bigbluebutton-xenial main" | tee /etc/apt/sources.list.d/bigbluebutton.list

最后,运行apt-get下拉链接到最新的BigBlueButton包。

apt-get update

2.3 安装bigbluebutton
我们现在准备安装BigBlueButton。

apt-get install bigbluebutton

而已。一个命令。这个命令将安装BigBlueButton的所有核心组件以及所有必需的依赖关系。
注意:在安装过程中,您可能会看到错误“无法下载额外的数据文件”的ttf-mscorefonts-installer包。这是Ubuntu 16.04的一个已知问题。你可以忽略这个错误。
如果安装出错退出完成之前,要经过在检查安装前的准备,看看是否有与服务器配置错误。
如果您发现解决了任何配置错误,则可以尝试使用该命令完成安装

apt-get install -f

安装完成后,使用以下命令以正确的顺序重新启动所有BigBlueButton服务:

bbb-conf --restart

接下来,运行BigBlueButton配置实用程序bbb-conf --check。此实用程序检查BigBlueButton的配置和日志文件,并查找可能导致运行时出现问题的任何潜在错误。
您应该看到类似于以下的输出(当然使用不同于10.0.3.192的IP地址)。

[email protected]:~# bbb-conf
BigBlueButton Configuration Utility - Version 1.1.0

bbb-conf [options]

Configuration:
--version Display BigBlueButton version (packages)
--setip <IP/hostname> Set IP/hostname for BigBlueButton
--setsecret <secret> Change the shared secret in bigbluebutton.properties

Monitoring:
--check Check configuration files and processes for problems
--debug Scan the log files for error messages
--watch Scan the log files for error messages every 2 seconds
--network View network connections on 80 and 1935 by IP address
--secret View the URL and shared secret for the server
--lti View the URL and secret for LTI (if installed)

Administration:
--restart Restart BigBlueButton
--stop Stop BigBlueButton
--start Start BigBlueButton
--clean Restart and clean all log files
--status Display running status of components
--zip Zip up log files for reporting an error

安装API演示

如果您想通过登录页面登录到BigBlueButton服务器,请使用该命令安装API演示

apt-get install bbb-demo

安装后,您可以在主页上输入您的姓名,然后点击“加入”。这将使您参加默认会议“演示会议”。
您也可以通过单击API examples主页上的链接查看其他示例。这些是在http://demo.bigbluebutton.org上安装的相同的API演示。
如果您正在使用自定义前端设置生产服务器,则可能需要临时安装API演示以进行测试。
稍后,要删除API演示,请输入以下命令:

apt-get purge bbb-demo

输入ip地址进行访问

配置BigBlueButton使用域名

请以root身份运行本节中的所有命令。
为了获得服务器的有效SSL证书,您必须已经为您的BigBlueButton服务器分配了一个主机名。
出于文档的目的,我们将使用域名“example.com”,以“bigbluebutton.example.com”托管的BigBlueButton服务器。
一旦你有一个域名,并配置了DNS主机,添加一个指向你的服务器的A记录。然后,您可以使用bbb-conf setip命令来配置BigBlueButton以使用该域名,例如:

[email protected]:~# bbb-conf --setip www.123.com
Assigning www.123.com for testing for firewall in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for rtmp:// in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for servername in /etc/nginx/sites-available/bigbluebutton
Assigning www.123.com for http[s]:// in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for publishURI in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for web application URL in /var/lib/tomcat7/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
Assigning www.123.com for web application URL in /usr/share/bbb-apps-akka/conf/application.conf
Assigning www.123.com for api demos in /var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp
Assigning www.123.com for record and playback in /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml
Assigning www.123.com for playback of recordings:
Assigning www.123.com for client self check to /var/www/bigbluebutton/check/conf/config.xml
Restarting the BigBlueButton 1.1.0 ...
Stopping BigBlueButton

Starting BigBlueButton

[email protected]:~# hostname -I
10.0.0.50

本地做好hosts

BigBlueButton HTML5客户端

升级BigBlueButton 2.0-beta服务器在安装之前,先安装Anchor链接
在安装HTML5客户端之前,您需要一个BigBlueButton 2.0-beta服务器(以下简称为BigBlueButton 2.0)。HTML5客户端的所有开发现在都发生在2.0代码库上。

echo "deb http://ubuntu.bigbluebutton.org/xenial-200/ bigbluebutton-xenial main" | sudo tee /etc/apt/sources.list.d/bigbluebutton.list

安装BigBlueButton。

apt-get install bigbluebutton

安装完成后检查一下版本

[email protected]:~# bbb-conf
BigBlueButton Configuration Utility - Version 2.0.0-beta

bbb-conf [options]

Configuration:
--version Display BigBlueButton version (packages)
--setip <IP/hostname> Set IP/hostname for BigBlueButton
--setsecret <secret> Change the shared secret in bigbluebutton.properties

Monitoring:
--check Check configuration files and processes for problems
--debug Scan the log files for error messages
--watch Scan the log files for error messages every 2 seconds
--network View network connections on 80 and 1935 by IP address
--secret View the URL and shared secret for the server
--lti View the URL and secret for LTI (if installed)

Administration:
--restart Restart BigBlueButton
--stop Stop BigBlueButton
--start Start BigBlueButton
--clean Restart and clean all log files
--status Display running status of components
--zip Zip up log files for reporting an error

为确保您拥有BigBlueButton 2.0的最新版本,请执行以下操作

apt-get update
apt-get dist-upgrade

安装MongDB

BigBlueButton HTML5客户端使用mongodb(一个非常有效的数据库)来保持用户与当前会议状态同步。要安装MongoDB,请执行以下操作

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
"deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
apt-get update
apt-get install -y mongodb-org curl
service mongod start

安装NodeJS
HTML5客户端使用nodeJS服务器与BigBlueButton服务器进行通信。要安装nodeJS,请执行以下操作

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

你只需要安装一次mongodb和nodeJS。
安装html5客户端
要安装HTML5客户端,请输入

apt-get install -y bbb-html5

重新启动BigBlueButton服务器

bbb-conf --restart

在我们向HTML5客户端(正在开发中)发布更新时,您可以使用这些命令升级到最新版本

apt-get update
apt-get dist-upgrade

加载html5客户端
浏览器输入:
https://<your_server>/demo/demoHTML5.jsp

如果你想手动重新启动(或停止),你可以用命令来完成

systemctl restart bbb-html5.service

组件的日志位于/var/log/bigbluebutton/html5/html5client.log
客户端的代码位于/usr/share/meteor/bundle/
客户端的配置文件位于/usr/share/meteor/bundle/programs/server/assets/app/config
如果修改它们,则需要重新启动bbb-html5.service才能使新配置生效。
删除HTML5客户端

apt-get purge bbb-html5


时间: 2024-10-08 14:46:10

搭建在线教育系统-BigBlueButton的相关文章

在线教育系统,助你赢得网络市场

乐付宝在线教育系统是一套开放式的在线教育系统,为用户提供一个简单.快捷的课程交易的平台,以帮助用户更好的创建并推广自己的课程.系统采用网络互动直播的授课模式,突破地域和时间的限制,为广大的用户提供高效便捷的网络学习渠道,省时高效的学习新的知识.技能. 会员只要具备电脑和上网条件,即可登陆网站进行网上学习,充分体现网络共享,一站全程服务.会员可以发布他想学习的课程,讲师可以根据期待的信息,针对性的发布课程.简单.高效的全程实时直播互动教学,可以上传视频.文档在直播中展示,也可开启摄像头实时授课.学

基于HTTP Live Streaming(HLS) 搭建在线点播系统

1. 为何要使用HTTP Live Streaming 可以参考wikipedia HTTP Live Streaming(缩写是 HLS)是一个由苹果公司提出的基于HTTP的流媒体 网络传输协议.是苹果公司QuickTime X和iPhone软件系统的一部分.它的工作原理是把整个流分成一个个小的基于HTTP的文件来下载,每次只下载一些.当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率.在开始一个流媒体会话时,客户端会下载一个包含

Django+Xadmin打造在线教育系统(二)

基于xadmin的后台管理 需要对源码进行修改,将xadmin的源码下载下来 https://github.com/sshwsfc/xadmin/tree/django2 在项目根目录新建Python Package "extra_apps",把源码xadmin文件夹放到extra_apps文件夹下面,此时目录结构如下: 将extra_apps加入系统路径 # settings.py sys.path.insert(0,os.path.join(BASE_DIR, 'extra_app

Django+Xadmin打造在线教育系统(三)

完成登录 注册 找回密码 激活 验证码集成 将HTML文件拷贝到templates目录下,css,js,img,media,images文件夹拷贝到static文件夹下 修改index.html和login.html文件中的静态文件路径,全部替换为如下格式 <link rel="stylesheet" type="text/css" href="{% static "css/reset.css" %}"> <

Django+Xadmin打造在线教育系统(五)

课程相关功能实现 课程列表 创建课程相关的urls.py path("course/", include('course.urls', namespace="course")), course里面新建urls.py from django.urls import path from course.views import CourseListView app_name = "courses" urlpatterns = [ # 课程列表url p

开源CMS系统Moodle对比中国本土化开源在线教育平台EduSoho

这段时间研究了一下著名的开源课程管理系统Moodle,也了解了一下目前国内比较火的在线教育平台EduSoho,发现二者有诸多相似之处,但优势各异.接下来就简单对着两个平台做一下对比. 首先来说一下EduSoho的特点及优势: 1.拥有强大的专业技术团队,因而能够为用户提供全栈式的解决方案. 2.从大的角度上来说,EduSoho将传统的网校建设工作进行了高度的梳理与整合,从用户的实际需求出发,将一些关键和困难的技术要点进行了封装,使得传统的网校建设和课程建设的诸多实现细节被屏蔽起来,用户在搭建自己

为什么这么说?在线教育或将迎来新气象

为什么这么说呢?很多人或许没有注意到,就在今年年初印发的<国家教育事业发展"十三五"规划>中明确提出,要通过推荐发展"互联网+教育",实现中国教育向更高质量和公平的方向迈进. 就连国务院总理也在两会政府工作报告中强调,扩大数字家庭.在线教育等信息消费,办好公平优质教育,发展人民满意的教育,以教育现代化支撑国家现代化. 在许多业内人士看来,这或许会催生在线教育的爆发点到来. 回顾过去,我们会发现在线教育的几件大事,其中最耀眼的莫过于英语教育,51talk成

在线教育直播平台系统开发

在线教育直播(陈琦:138-2848-7919可微)教育直播为我们日常生活提高更高的生活水平质量,在移动互联网时代里,微信视频直播商城已经渐渐深入我们的眼球中,特别是教育培训行业,今天赢在移动小编分享关于教育视频直播商城,用直播打造线上教育互动教学.答疑等,形成在线教育行业发展新机遇,其商城操作简单,可实现快速吸粉. 为什么选择微信营销直播系统?1.传播效率高基于微信生态下的直播,无需下载,一键分享2.互动体验佳互动插件丰富,直播互动玩法多样,提高直播粘性3.移动直播强突破网络环境限制,无需网线

在线教育平台系统开发

在线教育平台系统(陈琦:138-2848-7919可微)在线教育平台软件,在线教育平台开发,在线教育平台系统,在线教育平台模式,在线教育平台APP,在线教育平台定制,在线教育平台商城. 全国教师信息管理系统是教育部在完成各类各级教师的全面信息的采集工作基础上,建立的大型教师信息数据库.目前,该系统涵盖全国各级各类老师1500多万人,实现了教师的"一人一号".为加强管理,教育部逐级开展人员微信,微信了市.县.校管理者50万人. 教师系统是国家教育管理公共服务平台的核心组成部分,具备教师基