Skip to content

Self-hosted Jitsi server

If you deploy this plugin in production, you may want to run your own Jitsi Meet server in token-based mode. This configuration gives you extra control over moderation privileges and full control over your infrastructure.

Deploying Jitsi is beyond this guide

Setting up a Jitsi Meet server can be complex and is outside the scope of these docs. If you'd rather not run your own server, you can let the plugin provision one for you on GCP or buy Jitsi as a Service. Many governmental education institutions run their own Jitsi servers for their schools and universities — you could ask them whether they provide Jitsi token credentials for this configuration.

Token-based mode

The token configuration sends users who have the mod/jitsi:moderation capability into the session as moderators — and only they are allowed to mute participants, disable cameras or remove participants.

To enable this, your self-hosted server must be configured with JWT authentication, and the plugin must be set up with the matching credentials. See JWT configuration for the plugin-side settings.

Required plugin for JWT moderation on self-hosted servers

If you use a self-hosted Jitsi server with JWT authentication, you must install the jitsi-token-moderation-plugin on your Jitsi server for moderator roles to work correctly.

Without this plugin, everyone is a moderator

Without it, the moderator field in the JWT token is ignored by Jitsi and all users join as moderators, regardless of their Moodle role.

This plugin is not required for GCP auto-managed or JaaS (8x8) servers, where moderation is handled natively by those services.

Recommendations when using public Jitsi servers

By default the plugin connects to the public server at meet.jit.si. There are many other public Jitsi Meet servers — search online or look at the community-run instances list. Testing alternative servers is a good idea in case of service disruption, or to find one closer to your users.

Public servers are not for production

meet.jit.si restricts embed mode to 5 minutes per conference. For production use you need one of:

8x8 is the company behind the Jitsi project, and using their service is one way to support its future.