# Connect Jitsi Meet to Mattermost, Rocket.Chat, Nextcloud and Moodle

> Mattermost, Rocket.Chat, Nextcloud and Moodle all have a Jitsi plugin or built-in Jitsi support: you install it, enter your Jitsi server URL and, if your server uses JWT, the same app ID and secret your Jitsi server uses. Point them at your own Jitsi server, not meet.jit.si: the free public service cuts embedded calls after 5 minutes, limits meetings to 95 minutes and needs a sign-in to start a room.

Source: https://jitsi.help/guides/jitsi-integrations-mattermost-rocketchat-nextcloud-moodle/
Updated: October 12, 2026
Publisher: Jitsi Help (https://jitsi.help/)

All four platforms can start Jitsi calls from inside the app, so your team or students never leave the chat or the course. The setup is the same pattern every time: install the plugin, give it your Jitsi server's address, and, if you protect your server with JWT, give it the same app ID and secret. The part people get wrong is the server they point it at.

## Do not point integrations at meet.jit.si

Every plugin below ships with `https://meet.jit.si` as its default or example, because it works instantly for a demo. It is the wrong choice for real use:

- **Embedded calls stop after 5 minutes.** meet.jit.si is not meant to run inside another site, and the Moodle plugin's own documentation warns about this limit.
- **Meetings end after 95 minutes** since October 9, 2026. See [the meet.jit.si 95-minute limit](/guides/meet-jit-si-95-minute-limit/).
- **Starting a room needs a sign-in** on meet.jit.si, which breaks one-click calls from a chat channel.
- **You cannot control who joins.** There is no way to restrict rooms to your users.

Use your own Jitsi server ([Docker install guide](/guides/install-jitsi-docker/)), or 8x8 JaaS if you do not want to run one. Mattermost, Rocket.Chat and Moodle can all generate JaaS or JWT tokens.

## At a glance

| Platform | What to install | Where to configure | JWT support |
|---|---|---|---|
| Mattermost | Jitsi plugin (community supported) | System Console > Plugins > Jitsi | App ID and App Secret |
| Rocket.Chat | Jitsi app from the Marketplace | Administration > Apps > Jitsi > Settings | Application ID and Secret, or JaaS key |
| Nextcloud | Jitsi integration app (`nextcloud/jitsi`) | Settings > Jitsi | JWT secret |
| Moodle | `mod_jitsi` activity plugin | Site administration > Plugins > Jitsi | Token based mode, JaaS or GCP |

## Prepare your Jitsi server for JWT

JWT is optional, but it is what makes an integration safe: the chat or learning platform signs a short-lived token for each call, and your Jitsi server only lets in people with a valid token. On docker-jitsi-meet, set these in `.env` and restart the stack:

```bash
ENABLE_AUTH=1
AUTH_TYPE=jwt
JWT_APP_ID=my_jitsi_app_id
JWT_APP_SECRET=a-long-random-secret
```

Use the same app ID and secret in the plugin. Our [Jitsi JWT authentication guide](/guides/jitsi-jwt-authentication/) explains the token format and the Debian package setup, and [JWT not working](/troubleshooting/jitsi-jwt-not-working/) covers the usual errors.

If you added `X-Frame-Options` or a `frame-ancestors` Content Security Policy while hardening the Jitsi web server, allow the domain of your chat or learning platform, or embedded meetings will show a blank frame.

## Mattermost

The Jitsi plugin adds a video icon to every channel header and a `/jitsi` slash command. A click posts an invitation in the channel; meetings can open in a floating window inside Mattermost or in a new tab.

1. Download the plugin from the [releases page](https://github.com/mattermost-community/mattermost-plugin-jitsi/releases).
2. In Mattermost, open **System Console > Plugins > Plugin Management** and upload the file.
3. Open **System Console > Plugins > Jitsi** and set:
   - **Enable Plugin:** true
   - **Jitsi Server URL:** `https://meet.example.com`
   - **Embed Jitsi video inside Mattermost:** true for the floating window (marked experimental)
   - **Use JWT Authentication for Jitsi:** true, then the **App ID**, **App Secret** and **Meeting Link Expiry Time** (30 minutes by default)
   - **Jitsi Meeting Names:** random words, a UUID, or the team and channel name
4. Type `/jitsi` in any channel to test.

Users can switch between embedded and new-window meetings with `/jitsi settings`. The plugin is community supported, not maintained by Mattermost, and the channel header button is not available in the mobile apps.

## Rocket.Chat

Rocket.Chat treats Jitsi as a video conference provider. Once the Jitsi app is installed and configured, the call button in any room starts a Jitsi meeting.

1. Go to **Administration > Apps > Marketplace**, find **Jitsi** and install it.
2. Open the app's **Settings** tab and set:
   - **Domain:** `meet.example.com` (no `https://`)
   - **Use SSL:** on
   - **Title prefix** and **Title suffix:** optional text added to room names
   - **Use Authentication Token:** on if your server uses JWT, then **Application ID (iss)** and **Application Secret** matching your Jitsi server
   - **Limit token to Jitsi Room:** on, so each token only opens its own call
3. Make Jitsi the default provider under **Administration > Workspace > Settings > Video Conference** if you have more than one installed.

For JaaS, switch on **Use JaaS (8x8)** and paste your API key ID and the base64-encoded private key instead of a secret. Rocket.Chat's desktop app needs a recent Jitsi release for in-app calling.

## Nextcloud

The Jitsi integration app creates conference rooms inside Nextcloud, with sharable links, a pre-join system test, and rooms listed in the global search.

1. As an admin, open **Apps**, search for **Jitsi** and enable the Jitsi integration.
2. Go to **Settings > Jitsi** and enter your server URL and, if you use JWT, the JWT secret.
3. Create a conference from the Jitsi entry in the top bar and share its link.

The app's maintainers recommend a dedicated Jitsi server secured with JWT. If you only need small calls inside Nextcloud and do not run Jitsi anyway, Nextcloud Talk is the built-in alternative.

## Moodle

`mod_jitsi` adds Jitsi as a standard Moodle activity: teachers schedule sessions in a course, and students join in one click without an extra account. It supports Moodle 4.4 to 5.2 and adds attendance-based activity completion, guest links, private one-to-one calls and several recording options.

1. Install **mod_jitsi** from the [Moodle plugins directory](https://moodle.org/plugins/mod_jitsi) (Site administration > Plugins > Install plugins), or with Composer.
2. Under **Site administration > Plugins > Activity modules > Jitsi**, choose the server type:
   - **Self-hosted:** your Jitsi server URL, with token based mode and your JWT app ID and secret for proper moderator control
   - **JaaS (8x8):** free up to 25 monthly active users, no server to run
   - **GCP auto-managed:** the plugin creates and manages a Jitsi server in your Google Cloud account
3. Add a **Jitsi** activity to a course and open it as a student to test.

Some of the plugin's reporting features, such as the attendance report and recording view statistics, need a free registration with the plugin's developer. Recording to YouTube, Dropbox or Google Cloud Storage is configured separately in the plugin settings.

## Common problems

| Symptom | Likely cause |
|---|---|
| Calls drop after 5 minutes | Still pointed at meet.jit.si |
| "You are not allowed to join" or an endless login prompt | JWT app ID or secret differs between the plugin and the Jitsi server, or the server clock is off. See [JWT not working](/troubleshooting/jitsi-jwt-not-working/) |
| Embedded meeting shows a blank frame | `X-Frame-Options` or `frame-ancestors` on the Jitsi server blocks your platform's domain |
| Camera and microphone blocked in the embed | The page or the Jitsi server is not on HTTPS. Browsers only allow devices on secure pages. See [camera and microphone not working](/troubleshooting/jitsi-camera-microphone-not-working/) |
| Works for two people, video stops with a third | UDP 10000 closed on the Jitsi server. See [Jitsi ports and firewall rules](/guides/jitsi-ports-firewall/) |

## Sources

- [Mattermost Jitsi plugin README](https://github.com/mattermost-community/mattermost-plugin-jitsi) (community supported, v2.1.0)
- [Rocket.Chat documentation: Jitsi app](https://docs.rocket.chat/docs/jitsi-app)
- [Nextcloud Jitsi integration README](https://github.com/nextcloud/jitsi)
- [mod_jitsi in the Moodle plugins directory](https://moodle.org/plugins/mod_jitsi) and its [README](https://github.com/SergioComeron/moodle-mod_jitsi)
- [docker-jitsi-meet `env.example`](https://github.com/jitsi/docker-jitsi-meet/blob/master/env.example) (`ENABLE_AUTH`, `AUTH_TYPE`, `JWT_APP_ID`, `JWT_APP_SECRET`)

## Need a hand?

We set up Jitsi servers with JWT for Mattermost, Rocket.Chat, Nextcloud and Moodle, and connect them to your existing login. [Talk to an engineer](/contact/) or see our [Jitsi integration service](/services/jitsi-integration/).

## Frequently asked questions

### Can I use meet.jit.si with the Mattermost, Rocket.Chat, Nextcloud or Moodle plugin?

Only for a quick test. When meet.jit.si is embedded in another site, calls are cut after 5 minutes, regular meetings there end after 95 minutes, and starting a room needs a sign-in. For real use, point the plugin at your own Jitsi server or at 8x8 JaaS.

### Do I need JWT to connect Jitsi to Mattermost or Rocket.Chat?

No, the plugins work with an open Jitsi server. But without JWT anyone who guesses a room name can join, and anyone can create rooms on your server. With JWT, the plugin signs a token for each call with the app ID and secret you also set on the Jitsi server, so only your users get in.

### Is the Mattermost Jitsi plugin still maintained?

It moved to the mattermost-community organisation on GitHub and is community supported, not maintained by Mattermost. Version 2.1.0 was released in June 2025 and the repository is still active. Mattermost's own Calls feature is the built-in alternative.

### Should I use Nextcloud Talk or the Jitsi app in Nextcloud?

Talk is built into Nextcloud and needs no extra server for small calls, but larger calls need its separate high-performance backend. The Jitsi app links Nextcloud to a Jitsi server you already run, which is the better fit if you also use Jitsi elsewhere or need Jitsi features such as Jibri recording.

### Can one Jitsi server serve several of these apps?

Yes. A single Jitsi server can host meetings for Mattermost, Moodle and your own website at the same time. With JWT they share one app ID and secret, or you can accept tokens from several issuers. Size the server for the total number of people in calls at once.


---

Jitsi Help is an independent service. It is not affiliated with, endorsed by or sponsored by 8x8, Inc. or the Jitsi project. Jitsi and Jitsi Meet are trademarks of 8x8, Inc., used here only to describe the software we host and support.
