This article describes Expertus BBB dep. configuration, for Learnexa BBB dep. configuration https://wiki.exphosted.com/doku.php/deploying_bbb_client
This is an application intended for the internal use of expertus which allows people to create and attend meetings. This is a ruby on rails application integrated with bigbluebutton.
Install BBB 0.8 beta3, make the required configuration changes and setup the development environment.
Instructions - (https://wiki.exphosted.com/doku.php/installing_bigbluebutton).
/home/<username>/dev/source/bigbluebutton
defaultClientUrl=${bigbluebutton.web.serverURL}/client/BigBlueButton.html
to
defaultClientUrl=${bigbluebutton.web.serverURL}/client/Meeting.html
/home/<username>/dev/source/bigbluebutton/bigbluebutton-client
Replace the contents of bigbluebutton-client directory with the trunk/tag we need to deploy. The BBB client source for Meeting app can be found at - https://repos.exphosted.com/svnrepos/meeting/client/
<module name="ViewersModule" url="ViewersModule.swf?v=3911" uri="rtmp://192.168.7.10/bigbluebutton" host="http://192.168.7.10/bigbluebutton/api/enter" allowKickUser="true" windowVisible="true" allowInvite="true" siteBaseUrl="http://192.168.7.52:3000" inviteUrl="http://192.168.7.52:3000/meetings/invite" joinUrl="http://192.168.7.52:3000/meetings/join_from_mail" autoCompleteUrl="http://192.168.7.52:3000/users/auto_complete_for_user_mail" />
The IP - 192.168.7.10 in this example referes to the IP of the server BBB is running. This will be changed to the host name of the machine we have BBB installed - Ex - meeting02.exphosted.com
The second IP with port - 192.168.7.52:3000 points to the base URL of the meeting rails app. In our case, we run both BBB and meeting rails app on the same machine. So, just replace 192.168.7.52:3000 with the host name again. Ex- meeting02.exphosted.com.
After the compilation of the client you will this see this under “/home/<username>/dev/source/bigbluebutton/bigbluebutton-client/bin/conf”.
/usr/share/red5/webapps/sip/WEB-INF/bigbluebutton-sip.properties
cd ~/dev/source/bigbluebutton/bigbluebutton-client export ANT_OPTS=-XX:MaxPermSize=512m ant ant locales (**Note - This is required for bbb-0.8 beta as the locale compilation is moved out of base ant task) ant branding -DthemeFile=expertus_meeting.css
# BigBlueButton.html is here so we can expire it every 1 minute to
# prevent caching.
location /client/Meeting.html {
root /home/<username>/dev/source/bigbluebutton/bigbluebutton-client;
index index.html index.htm;
expires 1m;
}
# BigBlueButton Flash client.
location /client {
root /home/<username>/dev/source/bigbluebutton/bigbluebutton-client;
index index.html index.htm;
}
Edit this file entry if it is not already pointing. and then restart nginx.
/etc/init.d/nginx restart
sudo bbb-conf --clean
Testing
- Clear the browser cache once, hit the meeting base URL and join the meeting. You should see the latest client now.
In case any issues occur, do a compiling of the client once again and clean restart of BBB and check the errors.
Clean restart:
sudo /usr/local/bin/bbb-conf --clean
Check Status (Ignore the IP conflict message):
sudo /usr/local/bin/bbb-conf --check
* Note **
BBB Home page should never be show up. We need to either proxy the URL to another service or permamanently redirect the home page to the learning site URL.
For instance - in /etc/ngin/sites-available/bigbluebutton
Add this proxy redirect.
location / {
# root /var/www/bigbluebutton-default;
# index index.html index.htm;
rewrite ^ http://qa01.learnexa.com permanent;
proxy_pass http://qa01.learnexa.com;
proxy_redirect default;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
Install ruby and rubygems. The following versions of ruby and gems are preferred. But, BBB requires installing ruby 2.2.2 and it is fine if ruby 2.2.2 is already installed on the machine.
ruby - 2.2.2 //Skip this if you are on the same machine which has BBB installed already and has ruby 1.9 rubygems - 2.4.5
The setup instructions can be found at - https://wiki.exphosted.com/doku.php/software_versions
Install the bundler gem to manage gem dependencies.
gem install bundler
Note - We use rails version 4.2.4 for meeting app. So, Please make sure that there is no other version of rails is installed on the machine. The rails installation can be done with bundler as mentioned in the deployment step 5 below.