Site Tools


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?)
deploying_bbb_client

Deploying BBB Client

  • Login to the machine with BBB code. The typical directory structure we have on this machine looks like this
    /home/<username>/dev/source/bigbluebutton
  • Please follow the instructions mentioned here to setup the dev environment of bigbluebutton required version if it is not setup yet - https://wiki.exphosted.com/doku.php/installing_bigbluebutton#setting_up_the_development_environment
  • Find the bigbluebutton-client directory. This should be -
    /home/<username>/dev/source/bigbluebutton/bigbluebutton-client
  • 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/LiveEvent.html 
  • 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:3002"
                            siteBaseUrl="http://192.168.7.52:3002"
    			inviteUrl="http://192.168.7.52:3002/live_events/invite"
    			autoCompleteUrl="http://192.168.7.52:3002/live_events/auto_complete"
    
    		/>

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 - qacollab01.exphosted.com

The second IP with port - 192.168.7.52:3002 points to the base URL of the crossbow app. In our case, we run both BBB and meeting rails app on the same machine. So, just replace 192.168.7.52:3002 with the host name again. Ex- qa01.exphosted.com.

  • 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=live_event.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.
    # BigBlueButton.html is here so we can expire it every 1 minute to
    # prevent caching.
    location /client/LiveEvent.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 servers
    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.

Check the commands to compile the client if needed (https://wiki.exphosted.com/doku.php/installing_bigbluebutton).

Clean restart:

sudo /usr/local/bin/bbb-conf --clean

Check Status (Ignore the IP conflict message):

sudo /usr/local/bin/bbb-conf --check

Ideally you should not see any other errors(except IP conflict) here.

Check for crossdomain.xml -

In case you want the inviting from BBB to work with crossbow app please verify that the crossdomain.xml file on crossbow app public directory has an entry for this BBB's host.

Voice conference configuration -

on BBB -

on Crossbow app -

If this is the first time you need to populate the voice extensions in the database.

- Add the voice extensions you have assigned to the conference in <RAILS_ROOT>/db/voice_extensions.csv file and run rake voice_extensions:populate

For more information refer - https://wiki.exphosted.com/doku.php/bbb_voice_conference_from_sip_clients_crossbow_-_live_event#rake_task_details

Notes

  • For a flash based code to run, all that we need is the bin directory in the expected location. We copy entire source code to the deploy box in case if we need a compile again on that machine. For now, we can copy the whole source to the machine. On the production we may just have the bin directory generated from the latest build. Compiling of the bbb client typically takes 2-3 minutes.
  • On a clustered environment we can have the code present on one machine and then rsync it on other machines.
deploying_bbb_client.txt · Last modified: 2018/08/31 16:16 (external edit)