Как установить bigbluebutton на виндовс
Обновлено: 30.06.2024
Популярность BigBlueButton связана с тем, что это приложение действительно довольно неплохое, а общение в Интернете становится обыденным делом.
Единственно, оно требует правильной установки и порой терпения. Далее я расскажу о функционале BigBlueButton и о нашем опыте инсталляции и использование данного программного обеспечения.
Начнем все по порядку
Как уже было сказано BigBlueButton – это бесплатное, свободно распространяемое web приложение и было создано в первую очередь для дистанционного обучения и проведения вебинаров. Также вы можете установить BigBlueButton на сервер своей компании и использовать на ваше собственное усмотрение, например, для мультимедийных бизнес презентаций и общения.
Наш опыт использования BigBlueButton достаточно успешный, хотя пришлось потратить какое-то временя, чтобы сделать его действительно работающим хорошо. О тех проблемах, с которыми мы встретились и как мы их решали я расскажу позже, в этой статье. А сначала немного о возможностях BigBlueButton, которые могут быть интересны нам всем.
Взаимодействие с BigBlueButton
Взаимодействие пользователей и администраторов с BigBlueButton осуществляется через Интернет браузер и не требует установки дополнительных программ, что очень удобно. BigBlueButton использует технологию FLASH, потоковый сервер RED5 и включает в себя следующие мультимедийные и интерактивные возможности:
- Показ презентаций удаленным пользователям в формате PowerPoint.
- Загрузка и показ документов в формате PDF.
- Трансляция видеоизображений с камеры.
- Создание пометок на презентациях.
- Общение голосом, по средствам микрофонов.
- Общение в чате, как групповое, так и приватное.
- Трансляция рабочего стола, вашего компьютера.
- Обмен файлами между пользователями.
- Есть возможность интеграции BigBlueButton с системой управления курсами Moodle.
- Запись ваших мероприятий.
- Набор различных языков, в том числе и русского языка.
Но если ваш бюджет ограничен или вообще отсутствует, что нормально и обычное дело, то на мой взгляд, BigBlueButton – это идеальный вариант на сегодняшний день.
Где можно попробовать BigBlueButton?
Далее о нашем опыте.
BigBlueButton, активно используется нами, уже около двух лет, для онлайн общения, в образовательно процессе. И теперь подошло время поговорить более подробно о нашем опыте установки и использования BigBlueButton.
С чего все начиналось.
Уже много лет (начиная с 2008г) мы организуем различные онлайн мероприятия, технический функционал которых состоит из следующих составляющих:
- Показ удаленным пользователям презентаций.
- Трансляция видеоизображения и голоса выступающего.
- Пользователи могут задавать вопросы в реальном режиме времени в чате.
- Авторизация и мониторинг пользователей.
Какие системы мы использовали?
2008г: Собственная система.
2009-2010 г: Программное обеспечение DimDim.
2010 г: Программное обеспечение OpenMeetings
2010-2012 г: Программное обеспечение BigBlueButton
И вот в конце 2010 года, а если быть точным в ноябре нам встретилось программное обеспечение BigBlueButton. Пользовательский интерфейс BigBlueButton нам сразу понравилось и мы решили попробовать. По срокам, необходимо было его установит, протестировать и внедрить до февраля 2011 года. Так как в феврале активно планировалось использовать Web видеоконференции.
В общем, был установлен BigBlueButton и Moodle. У кого-то возник вопрос – А зачем Moodle? Moodle, нужен, чтобы осуществлять управляемый доступ пользователей (по логину и паролю), а также создавать различные видео комнаты, с названиями и информацией, то есть как дополнение для BigBlueButton. Moodle, может взаимодействовать с BigBlueButton по средствам специально модуля. Модуль устанавливается и настраивается через административный интерфейс Moodle.
Проблемы, с которыми мы встретились.
Теперь о проблемах с которыми мы встретились. BigBlueButton, проще всего скачать и использовать вместе с готовой виртуальной машиной, что мы и сделали. После установки мы тестировали BigBlueButton одновременно подключившись к нему несколькими клиентами (2-мя или 3-мя) и все хорошо работало. Но когда мы начали проводить реальные web видеоконференции, больше 15 подключений, начались проблемы. Периодически все пользователи отключались, кто-то не слышал звука.
Мы пробовали использовать разные виртуальные машины (WMware, VirtualBox). Также пробовали устанавливать разные версии BigBlueButton. Сервера, с установленными виртуальными машинами, были достаточно мощные, поэтому маловероятно, что они как-то влияли. В общем перед нами остро встал вопрос – что делать дальше? Было два варианта вернуться к старой системе или попробовать все же заставить работать BigBlueButton. Как вы думаете, какой вариант мы выбрали?
Правильно, конечно второй :) и в дальнейшем не пожалели!
Далее, мы начали его тестирование и все работало хорошо. Но на реальной web видеоконференции BigBlueButton снова подвел нас. Когда число подключений было больше 15, некоторые пользователи не слышали звук, приходилось перезагружать приложение.
Мы знали, что BigBlueButton для передачи голоса использует Asterisk или FreeSWITCH. Мы решили попробовать поменять FreeSWITCH на Asterisk, это делается легко (можете посмотреть в инструкции по ссылке, которая выше). И о чудо! После этого BigBlueButton заработал, было проведено уже несколько десятков мероприятий и никаких проблем.
Заключение!
Вот такой путь нам пришлось пройти, чтобы получить работающую систему. Специально решил потратить время и написать эту статью, чтобы прояснить ситуацию, для всех тех, кому интересен BigBlueButton. Конечно если бы это было платное программное обеспечение, мы бы могли активно взаимодействовать с тех поддержкой продукта. В случае же свободного программного обеспечения порой приходится решать проблемы самому.
Теперь BigBlueButton работает :)! Также у BigBlueButton есть еще много разных интересных возможностей, но об этом уже в следующий раз. Буду очень рад, если эта статья кому-то пригодится.
PS: Для тех, у кого еще остались силы читать. Так как статья получилась действительно большой. Для вас последний абзац.
Ниже, выкладываю несколько полезных команд управления BigBlueButton.
Перед установкой
Замечание: Установочный пакет собран только для Ubuntu 10.04 64-bit. Начиная с версии 0.81 32х-разрядная система больше не поддерживается. Серверная версия Ubuntu 10.04 является LTS (англ. Long Term Support; дословно «поддержка в течение длительного периода») с поддержкой до апреля 2015 года.
- Ubuntu 10.04 64-bit
- 4 GB памяти (лучше 8 GB)
- Четырех-ядерный процессор 2.6 ГГц (или выше)
- Доступ к портам 80, 1935, 9123
- Порт 80 не используется другими приложениями
- 500 ГБ свободного места на диске (или больше) для записей конференций
Теперь надо проверить что у Вас 64х-разрядная система:
Осталось проверить установлен ли ruby и какая используется версия.
Если у Вас установлен ruby (например 1.8), то удалите этот пакет. BigBlueButton тестировался с ruby 1.9.2.
Установка BigBlueButton 0.81
Данная инструкция для новой установки, т.е. предполагается, что у Вас в системе не установлена предыдущая версия BigBlueButton.
1. Обновление сервера
Подключите репозиторий пакетов BigBlueButton к серверу:
Если такой строки Вы не нашли, то выполните:
После настройки репозиториев выполните обновление всех пакетов:
Прежде чем перейти к следующему шагу, перезагрузите сервер.
2. Установка LibreOffice
BigBlueButton использует LibreOffice для конвертации загруженных документов MS office в PDF-файлы. LibreOffice гораздо лучше справляется с преобразованием документов, чем OpenOffice, который используется в Ubuntu 10.04 по умолчанию.
Сперва установите заглушку для пакета openoffice. Это удовлетворит зависимости BigBlueButton в OpenOffice.
Теперь установка LibreOffice
3. Установка Ruby
Для записи и воспроизведения BigBlueButton использует Ruby.
Проверьте, установлена ли у вас есть предыдущая версия ruby.
Если у Вас уже установлен ruby, посмотрите его версию
Если версия ruby ниже, то её необходимо удалить.
Скачиваем пакет Ruby:
Следующая команда установки скорее всего выдаст Вам ошибку о неудовлетворенной зависимости.
Для разрешения зависимостей, введите
После установки пакета, выполните следующие две команды для настройки путей к исполняемым файлам ruby:
Проверьте, что ruby установлен:
Также проверьте gem:
Чтобы убедиться, что все работает как надо, можно установить тестовый gem для ruby. (для BigBlueButton не нужен gem hello; просто этот тест гарантирует Вам, что gem работает нормально).
Убедитесь, что все три вышеуказанные команды выполнились без ошибок, прежде чем продолжать установку. Если Вы столкнулись с ошибками, перейдите на пост bigbluebutton-setup , и Вам помогут устранить ошибки.
4. Установка ffmpeg
BigBlueButton использует ffmpeg для обработки видео файлов при воспроизведении. Чтобы установить ffmpeg, создайте файл с названием install-ffmpeg.sh скопируйте и вставьте в него следующий скрипт. Либо скопируйте архив со скриптом.
После завершения выполнения скрипта, убедитесь, что ошибок не было и ffmpeg установился корректно. Выполните ffmpeg -version. Если установка прошла успешно, Вы увидите следующее:
5. Установка BigBlueButton
Теперь Вы готовы приступить к установке BigblueButton. Выполните
Эта команда, которая творит волшебство. Она установит все компоненты BigBlueButton с их зависимостями. Пакет сделает за вас всю оставшуюся работу: установит и настроит сервер BigBlueButton.
Если вы находитесь за прокси, то можете получить ошибку в пакете bbb-record-core. Проблему можно решить путем ручной установки gems.
6. Установка демонстрационного API
Для тестирования вашего сервера BigBlueButton, можно установить набор API демо.
После того, как пакет bbb-demo установлен, вы можете присоединиться к Демонстрационной Конференции со страницы приветствия Вашего сервера BigBlueButton.
В дальнейшем, для удалелия API демки, нужно ввести команду
Для обратной связи со слушателями веб-конференции существуют публичные и приватные чаты. Интегрирована VoIP на базе FreeSWITCH. Кроме того, пользователь может войти в конференцию либо как зритель либо как модератор. Как зритель, пользователь может присоединиться к голосовой конференции, использовать веб-камеру, поднять руку (попросить слово), и общаться с другими людьми.
В качестве модератора, пользователь имеет возможность отключить / включить микрофон любого зрителя, удалить любого зрителя из веб-конференции, а так же передать слово любому зрителю для выступления (сделать любого пользователя ведущим). Ведущий может загружать презентации, документы, использовать доску. Хотя компоненты имеют открытый исходный код, клиент BigBlueButton зависит от расширения для браузера для Adobe Flash платформы.
Сервер BigBlueButton работает на Ubuntu 10.04 32-битной или 64-битной версии и может быть установлен как из исходного кода, так и из пакетов Ubuntu. BigBlueButton может быть загружен в качестве образа для виртуальной машины (VM), который выполняется в VMware Player на компьютерах как под управлением операционной системы Microsoft Windows так и под Unix, также возможен запуск и в VMWare Fusion на Mac OS. Сервер BigBlueButton также может работать и в облачной среде, такой как Amazon EC2, при его установке на Ubuntu 10.04 32-битной или 64-битной версии.
Подобно OpenMeetings , BigBlueButton использует медиасервер с открытым исходным кодом Red5, который является открытой реализацией Adobe Flash Media Server, для поддержки его работы в реальном времени.
Несмотря на всю простоту использования BigBlueButton, в русскоязычной части интернета очень тяжело найти описание опыта использования. Но из различных источников известно, что в коммерческой сфере имеется положительный опыт использования BigBlueButton. Большим преимуществом является возможность настройки программы под нужды предприятия.
Менее распространено использование BigBlueButton в учебных заведениях. Несмотря на возможности интеграции BigBlueButton в популярные системы управления контентом Joomla! и Moodle LMS, всё же учебные заведения не торопятся внедрять инновации в учебный процесс. К сожалению, компании и учебные заведения не афишируют опыт использования сервера для проведения веб-конференций BigBlueButton. Только в Рунете удалось найти только несколько достоверных источников, которые описывают такой опыт.
BigBlueButton — открытое программное обеспечение для проведения веб-конференции. Система разработана в первую очередь для дистанционного обучения. Название BigBlueButton происходит от первоначальной концепции, что, начало веб-конференции должно быть максимально простым, как нажатие метафорической большой синей кнопки.
Подготовка LXC контейнера
BigBlueButton разрабатывается и тестируется под Ubuntu Xenial. Установить Ubuntu вы можете в LXC-контейнере, для этого выполните установку необходимых пакетов:
emerge -a app-emulation/lxc dev-libs/libcgroup
Запустите сервис cgconfig для создание cgroup systemd:
При использовании Docker внутри LXC контейнера в хостовой системе загрузите необходимые модули ядра и добавьте их в автозагрузку:
modprobe -a br_netfilter ip_tables nf_conntrack_netlink nf_nat overlay xt_conntrack
echo -e "br_netfilter\nip_tables\nnf_conntrack_netlink\nnf_nat\noverlay\nxt_conntrack" > /etc/modules-load.d/docker.conf
Создайте контейнер для BigBlueButton:
lxc-create -t download -n bigbluebutton -- -d ubuntu -r xenial -a amd64
Запустите созданный контейнер:
Настройте сеть согласно инструкции, но не присваивайте IP адрес и шлюз через конфигурационный файл контейнера.
Добавьте разрешение, чтобы запустить тест для Docker:
Настройте параметры сети внутри контейнера, указав необходимый IP адрес, маску сети, шлюз по умолчанию и DNS сервер:
lxc-stop -r bigbluebutton
Подключитесь к контейнеру:
Обновите репозиторий бинарных пакетов:
Установите SSH клиент и сервер:
apt-get install ssh openssh-server -y
Измените пароль пользователя :
Разрешите подключаться через SSH пользователю :
Перезапустите сервис SSH:
systemctl restart ssh
dpkg-reconfigure --frontend=noninteractive locales
Убедитесь, что локаль указана в переменных окружения:
Так как установка производится в контейнере, то для некоторых компонентов BigBlueButton необходим источник энтропии. Установите генератор энтропии:
apt-get install haveged -y
Добавьте демон энтропии в автозагрузку и запустите его:
systemctl enable haveged
systemctl start haveged
Установите утилиты для управления репозиториями:
apt-get install software-properties-common -y
Установка и настройка BigBlueButton
Добавьте дополнительные репозитории:
add-apt-repository ppa:bigbluebutton/support -y
add-apt-repository ppa:rmescandon/yq -y
Добавьте репозиторий MongoDB и установите базу данных:
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.4.list
apt-get install -y mongodb-org curl
Добавьте репозиторий NodeJS с версей 8.x и установите его:
apt-get install -y nodejs
Добавьте ключ BigBlueButton и репозиторий:
echo "deb https://ubuntu.bigbluebutton.org/xenial-220/ bigbluebutton-xenial main" | tee /etc/apt/sources.list.d/bigbluebutton.list
Начните установку пакетов для BigBlueButton:
apt-get install bigbluebutton -y
Во время установки пакетов, будет необходимо принять лицензию EULA.
Из-за ограничений LXC контейнера установка не сможет быть завершена, из-за невозможности запуска служб Redis и FreeSWITCH.
Исправье модуль запуса Redis, отключив использование отсутствующих механизмов ограничения:
Запустите сервис Redis:
systemctl start redis
Исправьте модуль запуска FreeSWITCH, отключив использование отсутствующих механизмов ограничения:
/etc/systemd/system/multi-user.target.wants/freeswitch.serviceЗапустите сервис FreeSWITCH:
systemctl start freeswitch
Продолжите прерванную установку:
apt-get install -f
Установите пакет BigBlueButton HTML5:
apt-get install bbb-html5
Для того, чтобы избавиться от "щелчков", отрегулируйте уровень звука, необходимый для передачи голоса другим пользователям:
/opt/freeswitch/etc/freeswitch/autoload_configs/conference.conf.xmlПроверьте на наличие ошибок конфигурации:
Получение сертификата Let's Encrypt
Создайте каталог для сертификатов:
Скопируйте полученные через Let’s Encrypt сертификаты:
Сгенерируйте DH ключ:
openssl dhparam -out /etc/nginx/ssl/dhp-4096.pem 4096
Настройка FreeSWITCH для SSL
Настройте FreeSWITCH на использование SSL, указав внешний адрес:
В этой конфигурации указывается внешний IP адрес, а не имя хоста.
/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties /usr/share/red5/webapps/screenshare/WEB-INF/screenshare.propertiesНастройте WebRTC через SSL сокет:
/usr/share/meteor/bundle/programs/server/assets/app/config/settings.ymlsystemctl restart nginx
Настройка TURN сервера
/usr/share/bbb-web/WEB-INF/classes/spring/turn-stun-servers.xmlНастройка Greenlight
Greenlight - приложение на Ruby on Rails, предоставляющее простой интерфейс для пользователей, чтобы создавать комнаты, начинать конференции, управлять записями конференций.
Установите утилиты для подключения репозитория:
Добавьте ключи и подключите репозиторий Docker:
apt-key fingerprint 0EBFCD88
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Установите Docker версии 17.09.1:
apt-get install docker-ce=17.09.1
ubuntu docker-compose containerd.io -y
Проверьте работу Docker запуском контейнера :
Запретите обновление docker-ce в дальнейшем:
echo docker-ce hold | dpkg --set-selections
Создайте директорию для конфигурации GreenLight:
Сгенерируйте файл конфигурации GreenLight:
docker run --rm bigbluebutton/greenlight:v2 cat ./sample.env > .env
Сгенерируйт секретный ключ для GreenLight:
docker run --rm bigbluebutton/greenlight:v2 bundle exec rake secret
Установите полученное значение в параметр файла .env:
Получите URL BigBlueButton и его ключ:
Установите полученное значение в параметры и файла .env:
Проверьте настройки GreenLight:
docker run --rm --env-file .env bigbluebutton/greenlight:v2 bundle exec rake conf:checkДобавьте настрой для Nginx:
docker run --rm bigbluebutton/greenlight:v2 cat ./greenlight.nginx | tee /etc/bigbluebutton/nginx/greenlight.nginx
Добавьте перенаправление BigBlueButton на страницу GreenLight:
Сгенерируйте сценарий для docker-compose:
docker run --rm bigbluebutton/greenlight:v2 cat ./docker-compose.yml > docker-compose.yml
Сгенерируйте пароль для PostgreSQL:
export pass=$(openssl rand -hex 8); sed -i 's/POSTGRES_PASSWORD=password/POSTGRES_PASSWORD='$pass'/g' docker-compose.yml;sed -i 's/DB_PASSWORD=password/DB_PASSWORD='$pass'/g' .env
Измените версию docker-compose файла:
sed -i "s/version: '3'/version: '2'/" docker-compose.yml
docker-compose up -d
systemctl restart nginx
Создайте учётную запись администратора:
docker exec greenlight-v2 bundle exec rake user:create["Admin Name","support@example.org","password","admin"]
Настройка почтовых уведомлений
Для включения подверждения учётной записи по электронной почте укажите настройки почтового сервера для отправки почты:
docker-compose down && docker-compose up -d
Смена пароля пользователю
Смену пароля пользователю можно осуществить через консоль RubyOnRail:
docker exec -it greenlight-v2 bundle exec rails c
При включенном подверждении учётной записи по электронной почте, сброс пароля пользователя можно выполнить на странице редактирования пользовательского аккаунта:
Обновление BigBlueButton
Подключитесь к контейнеру:
Обновите репозиторий бинарных пакетов:
Выполните обновление всех пакетов системы:
Выполните обновление образа Greenlight:
docker pull bigbluebutton/greenlight:v2
Убедитесь, что настройки не сбросились после обновления:
/opt/freeswitch/etc/freeswitch/autoload_configs/conference.conf.xmllxc-stop -r bigbluebutton
Восстановление образов Docker при использовании Btrfs
Если контейнер развернут на файловой системе Btrfs, то Docker для образов будет использовать подтома, которые не будут попадать в снапшоты этого контейнера. Для того, чтобы запустить Greenlight, необходимо заново скачать образы.
Читайте также: