بررسی و راه اندازی bigbluebutton

bigbluebutton چیست
نرم افزار BigBlueButton ، یک سیستم وب کنفرانس منبع باز برای یادگیری الکترونیکی است. هدف نرم افزار BigBlueButton این است که هر فراگیر به وسیله ی یک مرورگر وب، بتواند آموزش مجازی را با کیفیت بالا تجربه کند. نرم افزار BigBlueButton تمام قابلیت های اصلی که در وب کنفرانس مورد نظر شماست را به صورت آنلاین فراهم می کند از جمله: پخش ویدئو، پخش صدا، سمینار، گفتگوی متنی (چت)، ضبط جلسات برای فراگیران و..
نرم افزار BigBlueButton تعامل کاربران با یکدیگر را از طریق ویژگی هایی همچون قابلیت یادداشت نویسی، رای گیری، بخشی برای استراحت (breakout rooms). نرم افزار BigBlueButton سازگار با JAWS و NVDA است و از آنلاین یادداشت گذاشتن پشتیبانی می کند. همانطور که گفته شد نرم افزار BigBlueButton یک پروژه منبع باز تحت مجوز LGPL است. برنامه نویس میتواند اسلایدهای پاورپوینت را آپلود کند، در whiteboard یادداشت بنویسد، یک نظرسنجی را شروع کند و کنفرانس را برای همه به اشتراک بگذارد.
نکته : همانطور که گفته شد نرم افزار BigBlueButton از اشتراک صوتی و تصویری ارائه با قابلیت های توسعه یافته تخته مانند اشاره گر زوم کردن و … ، گفتگوهای متنی خصوصی و عمومی، اشتراک گذاری دسکتاپ VOIP (voice over IP) با استفاده از FreeSWITCH و ارائه اسناد به صورت PDF پشتیبانی میکند.
کاربردهای نرم افزار BigBlueButton
کلاس مجازی (Virtual Class Room)
کلاس مجازی (VCR) همانطور که از نامش مشخص است٬ یک کلاس است که دانش آموزان و معلمان در یک شبکه با استفاده از اینترنت و یا اینترانت بهم لینک شده اند و در حالیکه کیلومتر ها از هم فاصله دارند آموزش آنلاین٬ صورت میگیرد. نرم افزار BigBlueButton به تمام سازمان ها و موسسات آموزشی این امکان را می دهد تا کلاس ها و دوره های آموزشی را همراه با قابلیت های منحصر به فرد در اینترنت برگزار کنند و مشکلاتی را که در برگزاری دوره های آموزشی به صورت سنتی پیش می آمد را برطرف کند.
کلاس های آنلاین با بهره گیری از فناوری و ابزارهای جدید و پیشرفته به فراگیران، صرف نظر از سن و محل زندگیشان، مطالب آموزشی را با کیفیت بالای ارسال صدا و تصویر وبدون نیاز به سرعت بالا آموزش می دهد. همچنین آموزش الکترونیکی یا e-learning توسط نرم افزار های تحت وب همچون سیستم مدیریت آموزشی (lms) و سیستم مدیریت محتوای آموزشی ( (lcms صورت می گیرد.
جلسات کاری تحت وب (Web Meeting)
جلسه کاری تحت وب، زمانی کاربرد دارد که مردم از نقاط مختلف دنیا٬ از صدا ویدئو ومتن برای ارتباط آنلاین در جلسات کاری استفاده می کنند. در اینگونه جلسات افراد بدون نیاز به حضور فیزیکی در یک مکان٬ اطلاعات و داده ها را با هم به اشتراک می گذارند. در واقع زمانی که در یک سازمان٬ اعضایی در نقاط مختلف جغرافیایی هستند و یا در مسافرت های دور هستند از طریق این نرم افزار می توانند با یکدیگر همکاری کنند و همچنین می توانند با استفاده از ابزار وب کنفرانس٬ جلسات آنلاین را برگزار کنند. بدین شکل هزینه های سازمان کاهش پیدا می کند و به بهره وری بهتری میرسیم زیرا تعاملات مدیران و کارکنان بیشتر می شود.
وب کنفرانس (Web Conference)
وب کنفرانس به یک ارتباط صوتی و تصویری میان دو یا چند دستگاه همانند رایانه با استفاده از وب گویند.وب کنفرانس امکان به اشتراک گذاری آنلاین صفحه نمایش کامپیوتر ها٬ برنامه های کاربردی و محتوای الکترونیکی بین دو یا چند رایانه یا گوشی های همراه را می دهد.در این گونه ارتباطات یک مرکز اصلی وظیفه مدیریت و برقراری ارتباطات را بر عهده دارد که به عنوان سرور وب کنفرانس شناخته میشود.
آموزش الکترونیکی (E Learning)
شیوه آموزشی است که از زمان پیدایش اینترنت ایجاد شده است و این شیوه نوین پس از آن گسترش یافته است و از قابلیت های آن استفاده شده است و در حقیقت تکامل یافته شیوه آموزش از راه دور است و برطرف کننده نیازهای انسان خواهان یادگیری است. خصوصاً اینکه زمان و مکان در این شیوه آموزش تاثیر گذار نیست. در واقع آموزش الکترونیک٬ استفاده از تکنولوژی های الکترونیکی برای دسترسی به برنامه درسی در خارج از شیوه سنتی آموزش است. معمولا دوره ای است که کاملاً آنلاین آموزش داده می شود.
وبینار (Webinar)
کلمه وبینار ترکیب دو کلمه وب و سمینار است و به معنای آموزش و یا ارائه ای است که از طریق وب صورت می گیرد. وبینار ها میتوانند به صورت یکطرفه ارائه شوند بدین شکل که مدرس محتوای مورد نظر را بیان میکند و دانشجویان مطالب را می بینند و می شنوند که در این حالت تعاملی وجود ندارد.از طرف دیگر وبینار ها میتوانند به صورت تعاملی برگزار شوند بدین شکل که فراگیران نیز بتوانند سئوال بپرسند٬ نظر بدهندو… سیستم وب کنفرانس امکان وبینارهای یکطرفه و تعاملی را به سازمانها میدهد. در واقع وبینار همایشی است که در محیط وب و به صورت مجازی برگزار گردد.
برخی قابلیت های این ابزار
امکان اشتراک و ارائه فایل
فایلها می توانند به صورت پی دی اف، پاورپوینت، تصویر و … باشند
استاد می تواند در هر زمان فایل های مورد نظرخود را بر روی صفحه با سایر کاربران به اشتراک بگذارد.
عدم محدودیت دسترسی مکانی و زمانی
در هر زمان و مکانی تنها با داشتن اینترنت و موبایل یا کامپیوتر میتوانید روی دکمه استثنایی بیگ بلو باتن bigbluebutton فشارداده و کلاس خود را بالا بیاورید.
اشتراک گذاری صوت و تصویر
تصویر و صوت برای همه کاربران ارائه خواهد شد و همچنین این امکان برای کاربر وجود دارد که کیفیت و اندازه تصویر خود را بر حسب نیاز و کیفیت سرعت اینترت کاهش یا افزایش بدهد.
ضبط جلسات
کلیه کلاسها و جلسات را میتوانید ضبط کنید و بعدا دراختیار داشته باشید.
اسکرین صفحه
کاربر علاوه بر ارائه محتوای مد نظر خود از طریق آپلود فایل در بخش ارائه، میتواند صفحه نمایش خود را اشتراک بگذارد.
نوشتن مستقیم مطالب بر روی تخته
کاربر می تواند همزمان با ارائه محتوای مورد نظر خود، بر روی تخته تایپ نماید و نیز از موس و یا قلم نوری استفاده کند
پرسش و پاسخ
در کلاس مجازی محیطی برای گفتگوی متنی به صورت عمومی و همچنین به صورت خصوصی وجود دارند که کاربران می توانند سوالات خود را به صورت متنی با استاد و یا با یکدیگر مطرح نمایند.
یادتان باشد تنها با یک دکمه تمامی امکانات بالا امده
و این دکمه جادویی درواقع تمامی هزینه های مازاد و اضافی برسر راه اموزش و یادگیری شمارا حدف کرده است.
درواقع دلیل و فلسفه نام گذاری این برنامه به دلیل وجود همین دکمه میباشد. دکمه ایکه با فشردن ان کلاس شما بالا میاید.
برای مشاهده آموزش تصویری نصب و راه اندازی BBB می توانید به لینک زیر مراجعه کنید
راه اندازی bigbluebutton
برای راه اندازی bigbluebutton شما نیاز به حداقل یک سرور مجازی لینوکس دارید. درحال حاضر آخرین ورژن این ابزار 2.2.2 است که بهتره که از ubuntu xenial 16.04 برای زیرساخت سیستم عامل استفاده کنیم
برای نصب BBB سه روش وجود دارد
-
– روش مرحله به مرحله
برای درک بهتر اجزای و کامپوننت های BBB از این روش استفاده کنید
- – استفاده از حضرت انسیبل
اگر درک درستی از role ها و playbook های انسیبل دارین این مورد خیلی می تونه بدردتون بخوره
- – استفاده از اسکریپت bbb-install.sh
با استفاده از این روش و تنها با اجرای یک اسکریپت به سادگی و در مدت کمتر از نیم ساعت سرور بالا می آید لازم به ذکر است که این روش مراحل روش یک را به صورت اتوماتیک انجام میدهد
فارغ از اینکه چه روشی را انتخاب می کنید موارد زیر می بایست رعایت شود
– یک سرور اختصاصی – رعایت حداقل منابع سخت افزاری – استفاده از یک دامین معتبر و اس اس ال
حداقل منابع مورد نیاز برای سرور تست
-
Ubuntu 16.04 64-bit OS running Linux kernel 4.x
-
4 GB of memory with swap enabled (8 GB of memory is better)
-
4 CPU cores (8 is better)
-
TCP ports 80 and 443 are accessible
-
UDP ports 16384 – 32768 are accessible
-
Port 80 is not in use by another application
حداقل منابع مورد نیاز برای سرور عملی
-
500G of free disk space (or more) for recordings
-
250 Mbits/sec bandwidth (symmetrical) or more
-
Dedicated (bare metal) hardware
-
A hostname (such as bbb.example.com) for setup of a SSL certificate
-
IPV4 and IPV6 address
این لینک حداقل های این سرور را برای ورژن ۲.۲.۲ مشخص می کند
سرور BBB از freeswitch برای مسیریابی صدا و تصویر استفاده میکند و خود این ابزار freeswitch موارد زیر را برای سرور پیشنهاد میکند
که از این لینک قابل دسترس است
ما در این آموزش از روش ساده سوم استفاده میکنیم (از بس آدم تنبل و … هستم . خخخخ )
این اسکریپت از طریق لینک git آن قابل دسترس است
نصب BBB فقط با آی پی
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-220
نصب BBB با همه اجزا به همراه دامین ، اس اس ال خودکار از letsencrypt ، فایروال ufw و api ها
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-220 -s bbb.example.com -e [email protected] -g -w -a
بعدها برای آپدیت سرور BBB می توانید از همین دستور استفاده کنید
نکته 1:
شما می توانید هرگونه خطای «عدم بارگیری پرونده های داده اضافی» در بسته نصب ttf-mscorefonts-installer را نادیده بگیرید. این مشکل با ابونتو 16.04 کاملا شناخته شده است.
نکته 2:
گر فرآیند نصب کردن قبل از اتمام با خطایی مواجه شد ، مراحل را دوباره مورد بررسی قرار دهید. اگر خطاهای پیکربندی را پیدا کرده و آنها را برطرف کردید، می توانید با استفاده از دستور sudo apt-get install -f، نصب را تمام کنید.
نکته 3:
گر بعد از نصب sudo apt-get -f هنوز خطایی دارید ، همین جا توقف کنید. نصب تمام نشده است و bbb اجرا نخواهد شد. برای کمک به راهنمایی عیب یابی و گزینه های دیگر مراجعه کنید.
پس از اتمام نصب، می توانید HTML5 را به صورت پیش فرض مشتری قرار دهید (همین مورد توصیه میشود مگر اینکه به مشتری Flash نیاز داشته باشید).
حال باید سرور bbb خود را مجدداً راه اندازی کنید:
# bbb-conf --restart
میبینید که هیچ خطایی پیدا نشده است. اکنون میتوانید پیکربندی bbb را با دستور زیر بررسی کنید:
# bbb-conf --check
هر خروجیای که به دنبال مشکلات احتمالی باشد، ممکن است خطاهای پیکربندی یا خطاهای نصب را نشان دهد. در بسیاری از موارد ، پیام ها به شما توصیه می کنند که چگونه با استفاده از راه حلهای موجود مسئله را حل کنید.
همچنین می توانید از sudo bbb-conf –status استفاده کنید تا بررسی کنید که تمام مراحل bbb شروع شده و در حال اجرا هستند.
$ sudo bbb-conf --status
red5 ——————————————————► [✔ - active]
nginx —————————————————► [✔ - active]
freeswitch ————————————► [✔ - active]
redis-server ——————————► [✔ - active]
bbb-apps-akka —————————► [✔ - active]
bbb-transcode-akka ————► [✔ - active]
bbb-fsesl-akka ————————► [✔ - active]
tomcat7 ———————————————► [✔ - active]
mongod ————————————————► [✔ - active]
bbb-html5 —————————————► [✔ - active]
bbb-webrtc-sfu ————————► [✔ - active]
kurento-media-server ——► [✔ - active]
etherpad ——————————————► [✔ - active]
bbb-web ———————————————► [✔ - active]
bbb-lti ———————————————► [✔ - active]
اگر قصد استفاده از این سرور را با front-end دارید، به نسخههای API demos نیازی نیست. شما میتوانید bbb را با یکی از موارد شخص ثالث ادغام کنید و در جهت یکپارچه سازی آدرس سرور به جلو بروید. همچنین شما می توانید از bbb-conf برای نشان دادن اطلاعاتی استفاده کنید که از bbb-conf –secret بهره مند هستند. دستور زیر:
$ sudo bbb-conf --secret
نسخههای api demos مجموعه ای از صفحات Java Server (JSP) هستند که یک واسط مبتنی بر وب را برای آزمایش API bbb پیاده سازی میکنند. برای نصب نمونه های API، دستور زیر را وارد کنید:
$ sudo apt-get install bbb-demo
خوب الان شما می تونین راحت از این زیرساخت عالی وبینار استفاده کنین .
نکته آخر برای دونستن معماری داخلی bbb می تونین به این لینک سر بزنین.
یا حق
14 Comments
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
با سلام و تشکر بابت مطلب خیلی مفیدتان.
می خواستم ببینم حداکث در هر کلاس چند نفر همزمان می تونن باشن؟
سلام و احترام خدمت شما همراه عزیز
ممنون از شما
طبق داکیومنت خود این ابزار 50 تا 100 نفر در هر کلاس می تونن حضور داشته باشن. همزمان میشه تعداد زیادی کلاس ایجاد کرد ولی حتما می بایست سرور شما bare metal و منابع سخت افزاری خوبی داشته باشد.
هر سرور بیگ بلو باتن میتونه حداکثر ۱۵۰ نفر رو به صورت موازی ساپورت کنه حالا میتونه ۱ کلاس ۱۵۰ نفره باشه یا ۱۰ کلاس ۱۵ نفره
این عدد ها زیاد نمی تونن دقیق باشن اینیکه میگن بیشتر نمیشه چرا شدنیه ولی سرویس freeswitch در اون دچار مشکل میشه (طبق بررسی ها و مشاهدات انجام شده و بعضا بهتره که با درک معماری BBB برای مقیاس های بزرگ یا از کلاستر freeswith یا asterisk استفاده کرد) و مکانیزمی هم که داره واسه استریم ویدیو استفاده میکنه SFU هست که به طبع با افزایش کاربران نیاز به منابع سخت افزاری بهتری داره.
برای کلاستر خود سرور BBB پروژه موجود میباشد ولی یک کلاس نمی تواند روی چنتا سرور BBB صورت گیرد. این تعداد همزمان کلاس ها با کلاسترینگ BBB قابل حل هست
سلام مطالبتون عالیه میخواستم بپرسم من میخوام با api کار کنم با api کلاس میسازم پیغام success میده ولی تو لیستم نیست بعد اینکه میخوام join بشم دستورش کار نمیکنه و دوباره ب صفحه اصلی میاد
سلام بر شما. ممنون از لطف شما.
عرضم به حضورتون که برای کار با api می تونین به داک خود سایت BBB مراجعه کنین که خیلی جامع است.
https://docs.bigbluebutton.org/dev/api.html
این لینک خیلی می تونه بهتون کمک کنه.
با php می خواین متصل بشین ؟
اگه php هست که حتما پیشنهاد میکنم ی نگاهی به پروژه زیر بندازین با لاراول یک رابط نوشتن واسش ولی هنوز در دست دولوپ هست.
https://github.com/bigbluemeeting/bigbluemeeting
BBB برای وردپرس هم پلاگین داره اونم ی سرچی بزنین و کد های اون رو هم چک کنین
لینک زیر هم می تونه بهتون کمک کنه
https://github.com/bigbluebutton/bigbluebutton-api-php
اگه مشکلتون برطرف نشد که کدتون رو واسم بفرستین توی واتس آپ تا منم با زیرساخت خودم چک کنم تا مشکلتون به امید خدا برطرف شه.
نه من الان مشکلم اینه که url مربوط به join کار نمیکنه داکیومنت bbb رو خوندم ولی با postman میخوام join بشم کار نمیکنه
درود بر شما من بررسی کردم . برای من مشکلی اصلا نداشت. احتمال زیاد نحوه ساخت url شما و محاسبه checksum میتونه دچار مشکل باشه.
مقدار checksum باید توی همه درخواست های شما باشه و برای هر درخواست جداگانه محاسبه بشه و یکی نیست بین درخواست ها.
برای تست صحت ساخت url های درخواستی حتما لینکهای زیر رو چک کنین.
http://mconf.github.io/bigbluebutton-api-js
https://mconf.github.io/api-mate/
سلام وقت بخیر. برا اینکه رو سرور شخصی خودمون نصب کنیم چه راه حلی پیشنهاد میدید؟ تحریم و چیز شکن چجور ست کنیم تا بلکه بشه نصبش کرد؟
میشه فقط با یه آی پی ولید نصبش کرد یا حتما باید دامنه ست بشه و ssl ّراش فعال بشه؟
ممنون. کلی دنبال این سوالام و دریغ از یه جواب مناسب.
سلام بر شما
روی سرور شخصی میتونین پیاده سازی کنین موردی نداره . حتما از دی ان اس های شکن استفاده کنین به این سایت https://shecan.ir/ ی سری بزنین.
بله امکان نصب در شبکه های خصوصی رو هم داره . ولی فقط در همون شبکه خصوصی قابل رویت و دسترسی هست البته میشه باز port-forwarding زد روی مودم ولی سرویس kurentu برای تصویر میره پشت nat و بعد شما نیاز به turn server دارین که اصلا پیشنهاد نمیکنم . گزینه -x را اضافه کنین به اسکریپت و ولیدیشن رو دستی انجام بدین.
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s — -v xenial-22 -s bbb.example.com -e [email protected] -w -x
سلام وقت بخیر
ممنون بابت آموزش
ایده پیاده سازی BBB روی کلاستر کوبرنتیز چطوره؟اصلا قابل پیاده سازی هست ؟
سلام وقت بخیر
کل ابزار هاشکه خیلی سخنه بیاد سمت کوبر. ولی پیشنهاد میکنم سرویسهای جانبی اش رو پیدا کنین کلاستر کنین بیارین توی کوبر . مثل freeswitch
سلام وقتتون بخیر
من موقع اتصال میکروفن با ارور 1004 (ICE error) مواجه میشم. میشه راهنمایی کنید دقیقا باید چیکار کنم؟
سلام وقت بخیر
bigbluebuton ی صفحه واسه خطاهاش داره . لینکش رو میزارم ی سری بزنین بهتون کمک میکنه
https://docs.bigbluebutton.org/2.2/troubleshooting.html