проект bigbluebutton
Спочатку проект називався Blindside, пізніше назва була змінена на BigBlueButton, що символізувало підхід у використанні продукту - щоб здійснити конференц, потрібно всього лише натиснути символічну синю кнопку.
В цей же час була організована компанія Blindside Networks для надання платної підтримки користувачам продукту.
Сьогодні в їхньому списку: Sakai, Wordpress, Moodle, Joomla, Redmine, Drupal, Tiki Wiki CMS Groupware, Foswiki і LAMS.
Тобто в будь-який ресурс, який використовує дані додатки, можна легко вбудувати функціональність, що надається BBB. Власне, саме ця можливість найбільше затребувана користувачами BBB, а тому з часом з налаштувань сервера пропав інтерфейс адміністратора.
Розробники проекту просто не бачать сенсу його розвивати (управління лягає на плечі того, хто вбудовує додаток, а розвивати дублюючий інструмент - марна трата драгоценнго часу) і зосереджуються на функціональності.
У разі окремого (stand-alone) сервера все установки можна без проблем зробити за допомогою вельми простих конфігураційних файлів BigBlueButton і веб-сервера.
Зараз BigBlueButton забезпечує:
У версії 0.8, розробка якої зараз ведеться, планується функція запису лекцій (слайди, аудіо і чат) для подальшого відтворення.
Конференції можуть бути двох видів:
- відкриті - до них може отримати доступ будь-який зареєстрований користувач;
- закриті - список допущених користувачів формує виступає, висилаючи їм дані для доступу.
Користувач може наблизити окремі фрагменти, щоб краще розглянути їх, привернути увагу, «піднявши руку», спілкуватися в груповому або приватному чаті.
Модератор може призначити будь-якого користувача виступаючим, тоді вся увага буде переключено на нього.
Ще один важливий момент: BBB підтримує більше 40 мов, в тому числі і український, при спілкуванні в чаті користувачів на різних мовах переклад може здійснюватися автоматично (якість - на прийнятному рівні).
Щоб з'єднатися з сервером користувачеві досить використовувати веб-браузер з підтримкою Adobe Flash, тобто це може бути будь-який комп'ютер, що працює під управлінням Windows, Unix / Linux або Mac OS X. Ведеться розробка клієнта для Android.
Сам BigBlueButton розробляється за умовами ліцензії GNU GPL і використовує більше десятка інших Open Source-додатків: Asterisk / FreeSWITCH, Nginx, Flash медиасервер Red5, MySQL, ActiveMQ, Tomcat, Redis, Grails, Xuggler, OpenOffice.org, Image Magick, SWFTools і багато інші.
Причому спочатку в якості VoIP-сервера використовувався Asterisk, згодом додалася підтримка FreeSWITCH. Причому є ймовірність, що в майбутньої 0.8 залишиться тільки FreeSWITCH, в якому функція запису реалізована «з коробки» і не вимагає пересборки ядра, в Asterisk для цього задіюється модуль app_konference, його підтримка зажадає додаткових зусиль розробників.
Сервер BBB використовується багатьма організаціями самого різного призначення, пошук в Інтернеті видасть велику кількість посилань.
Документація на сайті проекту (тільки англійською) більше розрахована на адміністраторів і розробників. У ній можна знайти відповіді практично на всі виникаючі питання - по установці, конфігурації, API, локалізації, налаштування окремих компонентів (VoIP, ngnix і т.п.) і іншим моментам.
Особливо хочеться звернути увагу на методичні вказівки, розроблені в Тверському державному технічному університеті [4]. Це готовий документ, розрахований на користувача, в якому детально розказано, як організувати і прослухати трансляцію.
Щоб ознайомитися з основними можливостями BBB, не встановлюючи систему, можна просто підключитися до демо-сервера [5].
Знайомимося з BigBlueButton
Для роботи BigBlueButton рекомендуються сервер з процесором Dual Core 2.6 Ггц, 2 Гб ОЗУ і місце на жорсткому диску з урахуванням записи трансляцій.
Кількість користувачів, які зможуть одночасно спілкуватися на сервері, залежить від потужності устаткування і пропускної здатності каналу.
На сайті проекту в FAQ дані приблизні розрахунки, крім того, в списку розсилки можна знайти результати реального стрес-тесту [6], а розробники пропонують ряд скриптів і рекомендацій для самостійного тестування.
Для підключення клієнтів за замовчуванням використовується стандартний 80-й порт, який не повинен бути зайнятий іншим додатком. У правилах брандмауера повинні бути відкриті порти 80 (HTTP), 935 (RTMP) і 9123 (загальний робочий стіл).
Сервер може працювати в хмарному середовищі, на зразок Amazon EC2, але до версії 0.70 тут були проблеми зі звуком і затримки VoIP, які сьогодні усунуті.
Розробники пропонують вихідний код, що дозволяє встановити BBB на будь-який комп'ютер, що працює під управлінням ОС Linux або FreeBSD (і теоретично на ОС Windows).
На сайті проекту можна знайти інструкції з розгортання BBB в Ubuntu, Debian Squeeze і FreeBSD / PC-BSD. Взявши їх за основу, можна встановити BBB на будь-який інший дистрибутив. Пропонуються і неофіційний ebuild-файл, і керівництво для Gentoo.
Також на сторінці закачки можна знайти приклади конфігураційних файлів для всіх компонентів сервера BBB: це помітно спрощує установку. При деякій уважності проблем бути не повинно.
Користувачам пропонується репозитарій пакетів для Ubuntu 10.04 LTS:
Цей образ ми і будемо використовувати для подальшого знайомства з BBB. Образ легко конвертується, і його можна запустити на Hyper-V.
Підключення образу до VMware Player або Virtual Box розписувати не має сенсу, для роботи буде потрібно можливість виходу в Інтернет для завантаження пакетів.
При першому завантаженні буде оновлена ОС, а також завантажені і сконфігуровані файли BBB, після закінчення буде виданий IP для підключення до сервера.
Перевірити поточні налаштування можна, запровадивши:
$ Sudo bbb-conf --check
$ Sudo bbb-conf --setip 192.168.10.10
І перезапустити BBB:
$ Sudo bbb-conf --clean
Образ містить настройки демо-сервера (пакет bbb-demo), який можна використовувати для організації свого самостійного (stand-alone) сервера.
Далі дозволяємо використання мікрофона і веб-камери і підключаємося до конференції.
Перший користувач отримує роль ведучого / модератора. Мова інтерфейсу вибирається автоматично з налагодження браузера.
Вікно програми дуже просте, не містить нічого зайвого, інтерфейс без особливих проблем освоїть користувач будь-якого рівня (це великий плюс BigBlueButton). Розташування та розмір елементів можна змінювати перетягуванням (див. Рис. 1).
Малюнок 1. Вікно BigBlueButton
За замовчуванням зліва відображається два вікна зі списком учасників; вибравши значок навпроти імені, можна виконати певну дію - включити мікрофон, відключити його і т.п. (Яка саме дія, можна дізнатися з підказки).
Для Windows 7 в разі проблем при підключенні слід відключити яка буде використовуватися під протокол Teredo, який часто блокується маршрутизаторами.
> Netsh interface ipv6 set teredo disable
Власне, того, що є на даний момент, цілком вистачає для організації періодичних конференцій, нарад і вебкасти.
Як говорилося раніше, інтерфейсу адміністрування останні версії BigBlueButton не містять, тому, щоб щось змінити, потрібно відредагувати конфігураційні файли.
Нічого надскладного в цьому немає, а сам процес, по суті, дає в руки адміністратора досить гнучкий інструмент. Опис ряду параметрів можна знайти в документації проекту.
Готові файли демо-шаблонів знаходяться в каталозі / var / lib / tomcat6 / webapps / demo, всередині якого є кілька файлів, що починаються на demo *; взявши будь-, можна змінити початкову сторінку, активувавши аутентифікацію і можливість вибору конференції.
Малюнок 2. Використовуючи конфігураційні файли, можна змінити вікно входу
Якщо порівнювати два відкритих поектов: OpenMeetings і BigBlueButton, то перший проект виграє за кількістю функцій. Це два види трансляцій (лекції і наради), підтримка більшої кількості типів файлів для завантаження, зручний файловий менеджер з Drag`n`Drop, інтеграція з Active Directory і LDAP, просунуті можливості по модеруванню, запис сесій (ця функція буде і в BigBlueButton 0.8 ) і деякі інші «дрібниці», на кшталт планувальника лекцій.
Але це ускладнює управління і використання, а тому є і мінусом, особливо в тих випадках, коли доводиться мати справу з малопідготовлені користувачами.
Тут, безсумнівно, виграє BigBlueButton, також він трохи обходить OpenMeetings за можливостями інтеграції і особливо в простоті розгортання. З часів статті [1] OpenMeetings вже перебрався з Google Code в Apache Incubator [7].