Как установить 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 — открытое программное обеспечение для проведения веб-конференции. Система разработана в первую очередь для дистанционного обучения. Название 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.yml

systemctl 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"]

BigBlueButton после установки

Настройка почтовых уведомлений

Для включения подверждения учётной записи по электронной почте укажите настройки почтового сервера для отправки почты:

docker-compose down && docker-compose up -d

Смена пароля пользователю

Смену пароля пользователю можно осуществить через консоль RubyOnRail:

docker exec -it greenlight-v2 bundle exec rails c

При включенном подверждении учётной записи по электронной почте, сброс пароля пользователя можно выполнить на странице редактирования пользовательского аккаунта:

Reset user password

Обновление BigBlueButton

Подключитесь к контейнеру:

Обновите репозиторий бинарных пакетов:

Выполните обновление всех пакетов системы:

Выполните обновление образа Greenlight:

docker pull bigbluebutton/greenlight:v2

Убедитесь, что настройки не сбросились после обновления:

/opt/freeswitch/etc/freeswitch/autoload_configs/conference.conf.xml

lxc-stop -r bigbluebutton

Восстановление образов Docker при использовании Btrfs

Если контейнер развернут на файловой системе Btrfs, то Docker для образов будет использовать подтома, которые не будут попадать в снапшоты этого контейнера. Для того, чтобы запустить Greenlight, необходимо заново скачать образы.

Читайте также: