Skip to main content

How to integrate Jitsi on-premise

Written by Alex Brainin
Updated over 3 weeks ago

The integration should be pretty straightforward and should work in similar way as with the JaaS integration. Ringotel will generate a meeting link for each participant (Ringotel user). The link has the following structure:

where:

Component

Description

Base URL pointing to your Jitsi meeting web page. It can be changed in the integration settings.

AppID

Any string that will be added to the URL path of a link. This can be customer or organization id to distinguish/validate the links on your server.

RoomName

Name of a meeting room (generated automatically).

JWT

User’s personal JSON Web Token that should be used to authenticate users in a meeting (on your server). It also contains encoded user’s information and permissions.

JWT Structure Example

{    
"aud": "jitsi",
"sub": "vpaas-magic-cookie-efc407e671dc45c89d6e335c88e1483e",
"nbf": 1696874696,
"context": {
"features": {
"livestreaming": "false",
"sip-inbound-call": "false",
"transcription": "false",
"outbound-call": "false",
"sip-outbound-call": "false",
"recording": "false",
"inbound-call": "false"
},
"user": {
"moderator": "true",
"name": "Oleksii",
"id": "16514895013035988998"
}
},
"iss": "chat",
"exp": 1727978696,
"room": "*"
}

Integration Steps

In terms of integration on your side:

  1. You need to implement validation of users' JWT using the Public key provided in your Ringotel admin portal. Optionally, you can also get users’ personal information and permissions from the JWT payload.

  2. Ensure your Jitsi web server is capable of handling URLs described above, i.e. https://<BaseURL>/<AppID>/<RoomName>?jwt=<JWT>

Did this answer your question?