Skip to content
This repository has been archived by the owner on Feb 25, 2024. It is now read-only.
/ OpenCast Public archive

Opencast plugin for ILIAS LMS

Notifications You must be signed in to change notification settings

fluxapps/OpenCast

Repository files navigation

ILIAS-Plugin Opencast

Provided and maintained by fluxlabs.

Use Opencast in ILIAS LMS with a wide variety of features:

  • create Opencast series as repository objects
  • upload, schedule and edit events
  • watch and download videos or use the Annotation tool
  • integrated Paella video Player
  • live stream events with an on-screen chat
  • detailed permission configuration
  • use Opencast videos in the ILIAS page editor (additional plugin required: https://github.com/studer-raimann/OpencastPageComponent)

Getting Started

Requirements

  • ILIAS 6.x / 7.x

Installation

Start at your ILIAS root directory

mkdir -p Customizing/global/plugins/Services/Repository/RepositoryObject/
cd Customizing/global/plugins/Services/Repository/RepositoryObject/
git clone https://github.com/fluxapps/OpenCast.git

As ILIAS administrator go to "Administration"->"Plugins" and install/activate the plugin.

Configuration

After a fresh installation, the plugin configuration will already contain a basic configuration. A few things will have to be adjusted to make the plugin work though. Have a look at the configuration manual.

Installation Live Chat

This is only required if the plugin is configured to show live events and if you wish to display a live chat during these events.

Install Node JS

The live chat runs on a node js server and was tested with node version 10.x. To install nodejs v10.x on Ubuntu, execute:

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt-get install -y nodejs 

For other OS, see https://nodejs.org/en/download/package-manager/

Run the chat server

To run the chat server on http (see chapter "SSL"), execute the following:

node [PATH_TO_OPENCAST_PLUGIN]/src/Chat/node/server.js -c [CLIENT_ID] > [PATH_TO_LOG_FILE] 2>&1

Note that the chat server needs at least an ILIAS client id, which is used to establish a connection to the correct database (multiple clients are not supported yet). Depending on the server configuration, some more parameters might be necessary. Add the parameter '-h' for a list of all possible parameters and their default values.

SSL

If your web server uses HTTPS, you will need to make the chat understand HTTPS as well. This can be achieved in two different ways:

  1. (recommended) Run the chat server with https, by passing the argument '--use-https'. You will also need to pass the paths to the ssl certificate and key, and the passphrase for the key (arguments '--ssl-cert-path', '--ssl-key-path' and '--ssl-passphrase'). Example:

    • node src/Chat/node/server.js -c default --use-https --ssl-key-path /etc/apache2/ssl/serverkey.pem --ssl-cert-path /etc/apache2/ssl/servercert.pem --ssl-passphrase password123
  2. Configure a reverse proxy on your web server, which translates https requests to http and passes them to the chat server. If needed, the ip and port to which the chat server listens to can be passed as arguments via '--ip' and '--port'.

Note that when using a reverse proxy, the chat will open an unsecured websocket (ws://), whereas the first option will open a secured one (wss://).

License

This project is licensed under the GPL v3 License

Maintenance

fluxlabs ag, support@fluxlabs.ch

This project is maintained by fluxlabs.