Имеется публично доступный сервер по адресу https://meet.jit.si/, но можно разворачивать и собственный экземпляр сервера.
Для использования сервиса не нужна регистрация пользователей.
По умолчанию любой желающий может создать комнату или войти в нее, просто перейдя по ссылке https://meet.jit.si/roomID, где roomID - название комнаты, поэтому для интеграции может быть достаточно генерировать такие ссылки и отправлять ее нужным пользователям любым способом. Если ссылку открыть на мобильном устройстве, будет предложено открыть комнату в приложении или установить приложение.
1. JSON Web Token
Вставляется в ссылку в виде параметра https://meet.jit.si/roomID?jwt=token
Токен может содержать информацию о пользователе, такую как имя, email и т.п.
При использовании собственного сервера его можно настроить так, что комнаты будут закрыты, а для авторизации будут использоваться токены.
2. Параметры вида https://meet.jit.si/roomID#config.param1Name=”param1Value”&#config.param2Name=”param2Value”
В таком виде можно указать такие параметры, как язык по умолчанию, использование камеры и другие, описанные в файле конфигурации https://github.com/jitsi/jitsi-meet/blob/master/config.js
Хорошей документации по этому моменту нет, скорее всего при необходимости нужно экспериментировать.
Также доступен API, который предназначен для встраивания фрейма jitsi на страницу.
function base64url(source) {
encodedSource = btoa(encodeURI(source));
encodedSource = encodedSource.replace(/=+$/, '');
encodedSource = encodedSource.replace(/\+/g, '-');
encodedSource = encodedSource.replace(/\//g, '_');
return encodedSource;
}
function getJitsiRoomLink(url, room, username) {
var tokenHeader = {
"alg": "HS256",
"typ": "JWT"
};
var tokenPayload = {
"context": {
"user": {
"name": username
}
}
};
var token = base64url(JSON.stringify(tokenHeader)) + "." + base64url(JSON.stringify(tokenPayload));
return url + "/" + room + "?jwt=" + token + "#config.defaultLanguage=%22ru%22";
}