Hotfix release available: 2025-05-14b "Librarian". upgrade now! [56.2] (what's this?)
Hotfix release available: 2025-05-14a "Librarian". upgrade now! [56.1] (what's this?)
New release available: 2025-05-14 "Librarian". upgrade now! [56] (what's this?)
Hotfix release available: 2024-02-06b "Kaos". upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum". upgrade now! [54.2] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
New release available: 2020-07-29 "Hogfather". upgrade now! [51.3] (what's this?)
New release candidate 3 available: 2020-06-09 "Hogfather". upgrade now! [51.2] (what's this?)
New release candidate 2 available: 2020-06-01 "Hogfather". upgrade now! [51.1] (what's this?)
New release candidate available: 2020-06-01 "Hogfather". upgrade now! [51] (what's this?)
Hotfix release available: 2018-04-22c "Greebo". upgrade now! [50.3] (what's this?)
Hotfix release available: 2018-04-22b "Greebo". upgrade now! [50.2] (what's this?)
expertusmeeting

This article describes Expertus BBB dep. configuration, for Learnexa BBB dep. configuration https://wiki.exphosted.com/doku.php/deploying_bbb_client

Expertus Meeting

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.

Bigbluebutton

BBB Setup

Install BBB 0.8 beta3, make the required configuration changes and setup the development environment.

Instructions - (https://wiki.exphosted.com/doku.php/installing_bigbluebutton).

BBB Client Deployment

  • Login to the machine with BBB code. The typical directory structure we have on this machine looks like this
    /home/<username>/dev/source/bigbluebutton
  • Open the file /var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties and change the defaultClientUrl entry from
     defaultClientUrl=${bigbluebutton.web.serverURL}/client/BigBlueButton.html

    to

     defaultClientUrl=${bigbluebutton.web.serverURL}/client/Meeting.html 
  • Go to the bigbluebutton-client directory. -
    /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/

  • Verify that the config.xml file in /home/<username>/dev/source/bigbluebutton/bigbluebutton-client/src/conf has the correct host/IP in it and the config file should look like the one we have in the current trunk or tag we are deploying, except for the IP address. There are a couple of things we need to verify in the config file. Say the config file has the following entry.
    <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”.

  • Verify the sip.properties file has the correct host/IP entry.
    /usr/share/red5/webapps/sip/WEB-INF/bigbluebutton-sip.properties
  • Now compile the client and apply branding. (You might see some warnings in the compilation with 0.8 beta. They can be ignored for now.)
    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
  • Make sure that bin directory is the latest one.
  • Create a symlink “client” under bigbluebutton-client which points to bin. We need to create it only if that does not exist.
  • Make sure that the bbb server loads the client from dev environment. Verify that /etc/nginx/sites-enabled/bigbluebutton and change root entry in /client to point to your dev client or meeting rails app base url as required.
    # 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 
  • Clean restart all the services
    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;
        }

Rails App

Software Setup

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.

expertusmeeting.txt · Last modified: 2018/08/31 16:16 (external edit)