TechDocs/TechnicalProcesses/BigBlueButton

BigBlueButton processes

This page describes some common processes for our BigBlueButton instance. The user-facing documentation is here.

Upgrade BBB

Upgrades should be done carefully. Read the changelog carefully to check for breaking changes.

Before running an upgrade, check whether there are planned or ongoing meetings. You can use /root/bin/bbb-stats.py to identify current meetings.

# Save old BBB configuration
bbb-conf --check > YYYYMMDD-pre-update-conf.txt

# Update and upgrade
apt update
apt upgrade

# Set IP for server
bbb-conf --setip conf.fsfe.org

# Save new and compare BBB config
bbb-conf --check > YYYYMMDD-post-update-conf.txt
diff YYYYMMDD-pre-update-conf.txt YYYYMMDD-post-update-conf.txt

It might make sense to reboot the server afterwards.

Upgrade Greenlight

Greenlight is the user interface for the BBB server. We've made some customisations, therefore the upgrade may be a bit more complex. The goal is to have our customisations on branch custom-fsfe, and merge in the latest upstream (in this example tag release-2.X.X).

cd ~/greenlight
git checkout custom-fsfe
git fetch origin
git merge release-2.X.X
# it might be necessary to resolve some conflicts here

# Build new local image
scripts/image_build.sh greenlight-custom release-2.X.X

# Edit the custom docker-compose file, and change the version number of the custom greenlight image to 2.X.X

# Restart the container
docker-compose -f docker-compose-custom.yml down
docker-compose -f docker-compose-custom.yml up -d

Room Edits

Editing a room or also users is possible in the greenlight shell.

First of all, you need root access to the server. So, run as root:

docker exec -it greenlight-v2 bash

# inside of the container
bundle exec rails c

From there on, you can make various edits, e.g.

Rename a room

Room.find_by(uid: "CURRENT_ROOM_ID").update_attribute(:uid, "NEW_CUSTOM_ID")

CURRENT_ROOM_ID is something like "use-123-abc-456".

Change room owner

Say, you want to change the owner of the room BBB-TEST from the user max.mehl to mk:

# Get user ids of the two users
User.find_by(name: "max.mehl").id   # result: 8
User.find_by(name: "mk").id         # result: 13

# Change owner id of the room
Room.find_by(uid: "BBB-TEST").update_attribute(:user_id, 13)

TechDocs/TechnicalProcesses/BigBlueButton (last edited 2021-07-28 10:44:38 by max.mehl)