Guide for installing BigBlueButton on Ubuntu 10.04 Lucid
Installing
It's best to follow the official guide Installation on Ubuntu first.
It's best to install bbb-demo after the bigbluebutton package, to make sure that bbb_api_conf.jsp file is created properly.
Configuring
If you're inside AWS or behind some other NAT interface you'll have to update some settings.
bbb-conf --setip $hostname bbb-conf --restart
Tuning Directory Paths
BigBlueButton and FreeSWITCH consume a lot of storage space for these recordings. If you're runing in limited storage environment such as AWS/EC2 you may want to adjust these paths, or symlink them to EBS.
- /usr/share/red5/webapps/video/streams
- /var/bigbluebutton
- /var/freeswitch
Record your SALT for later usage.
bbb-conf --salt
nano -w /usr/share/red5/webapps/deskshare/WEB-INF/red5-web.xml nano -w /usr/share/red5/webapps/video/WEB-INF/red5-web.xml /var/lib/tomcat6/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties /usr/share/red5/webapps/bigbluebutton/WEB-INF/bigbluebutton.properties
Layout
Update this File to Change the Layout
cd /var/www/bigbluebutton/client/conf nano -w /usr/src/bigbluebutton/bigbluebutton-client/src/conf/layout.xml
Make a Theme
Run this as a regular user, it will put a bunch of stuff about Grails and Groovy into your ~/.profile.
sudo -i apt-get install ant sudo -i bbb-conf --setup-dev tools cd /usr/src/bigbluebutton/bigbluebutton-client/client nano -w branding/default/style/css/BBBDefault.css ant branding -Dthemefile=theme.css
Talking APIs
The BigBlueButton APIs are very simple, here are some examples that call it using curl from the command line.
host="http://bbb.example.com/bigbluebutton/api"
salt="1234.....fff"
function api_call()
{
fn=$1
qs=$2
ck=$(api_checksum $fn $qs)
uri="$host/$fn?$qs&checksum=$ck"
curl -v "$uri"
}
function api_checksum()
{
fn=$1
qs=$2
echo -n "$fn$qs$salt" | sha1sum | cut -c1-40
}
api_call "create" "name=Session123&meetingID=s123&attendeePW=1234&moderatorPW=5678&record=true"
api_call "join" "meetingID=s123&fullName=Teacher&password=5678"
api_call "join" "meetingID=s123&fullName=Student&password=1234"