Meeting Rooms Installation & Upgrade

Requirements

Important

The Meeting Rooms is an enterprise version feature. To enable it, please contact XiVO team.

Important

The Meeting Rooms components works only if you have the XiVO Edge component installed and configured.

Server Requirements

The Meeting Rooms components must be installed on a different server as the XiVO CC/UC server.

The minimal requirements would be:

  • OS: Debian 10 (Buster), 64 bits
  • CPU: 4 CPU
  • RAM: 8 Gb

See: https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-scalable#machine-sizing

Base installation

1. Docker & Docker compose Installation

These commands will install docker and docker compose on the host.

# Install docker prerequisites
apt install wget dirmngr gnupg ca-certificates ntp curl

# Install docker
DOCKER_KEYRING_FILE="/etc/apt/trusted.gpg.d/download.docker.com.gpg"
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key --keyring ${DOCKER_KEYRING_FILE} add -
echo "deb https://download.docker.com/linux/debian buster stable" > /etc/apt/sources.list.d/docker.list
cat > /etc/apt/preferences.d/docker-ce <<EOF
Package: docker-ce*
Pin: version 5:19.03.13~3-0~debian-buster
Pin-Priority: 1000
EOF

apt update
apt install docker-ce

#Install docker-compose
DOCKER_COMPOSE_VERSION=1.27.4
COMPOSE="/usr/local/bin/docker-compose"
curl -L https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_VERSION/docker-compose-`uname -s`-`uname -m` > "$COMPOSE"
chmod +x "$COMPOSE"

2. XiVO Meeting Rooms Launcher Setup

  1. Create meetingrooms directory:

    mkdir -p /etc/docker/meetingrooms
    
  2. Download XiVO Meeting Rooms configuration. In the following script replace TAG_OR_BRANCH by the name of a tag or a branch.

    Note

    currently to install the latest stable version of Helios, use TAG_OR_BRANCH=2021.15.00

    TAG_OR_BRANCH=2021.15.00
    cd /etc/docker/meetingrooms
    wget "https://gitlab.com/xivo.solutions/xivo-meetingrooms/-/archive/${TAG_OR_BRANCH}/${TAG_OR_BRANCH}.tar.gz"
    tar -zxvf ${TAG_OR_BRANCH}.tar.gz -C /etc/docker/meetingrooms --strip-components 1
    rm ${TAG_OR_BRANCH}.tar.gz
    
  3. Create the jitsi configuration directory:

    cd /etc/docker/meetingrooms
    mkdir -p jitsi/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
    
  4. Create bash alias to launch services:

    echo "alias meetingrooms-dcomp='docker-compose -p meetingrooms -f /etc/docker/meetingrooms/xivo-meetingrooms.yml --env-file=/etc/docker/meetingrooms/.env'" >> ~/.bashrc
    source ~/.bashrc
    

3. Next step

Congrats: You’re done with the Meeting Rooms Installation.

Upgrade

Currently there is no automatic upgrade process. Here is the manual process that you need to follow on the Meeting Room server.

  • Make a backup of the Meeting Room launcher:

    cp -aR /etc/docker/meetingrooms /var/tmp/meetingroom-backup/
    
  • Re-install the Meeting Room Launcher (it will override the .yml files): follow the 2. XiVO Meeting Rooms Launcher Setup steps to install new version

    Note

    This step overrides the current .yml files. If you had made some customization in them you will have to backport them by comparing the new one with the backup you did at previous step.

  • And then verify that the content of the .env file is correct:

    • Compare the old version and what is defined in the Meeting Rooms Configuration section.
    • Verify that the XIVOCC_TAG and XIVOCC_DIST correspond to what you want to install (it should be 2021.13 and latest).
  • Finally pull the new images and restart the containers:

    Warning

    it will stop all Meeting Room calls (and disconnect users from the application).

    docker login -u xivoxc
    (use the token provided by the XiVO team)
    
    meetingrooms-dcomp pull && docker logout
    meetingrooms-dcomp up -d