Syntezis Meet — защищённые видеовстречи в своём контуре
Рабочий сервис для быстрых, запланированных и постоянных видеовстреч с гостевым входом, записью, протоколами и управлением участниками.
🎯 Задача
Корпоративной команде нужен собственный контур видеосвязи, в котором можно быстро создать встречу, пригласить внешнего участника без регистрации и не передавать управление комнатами, записями и доступом публичному облачному сервису.
Одного видеозвонка недостаточно. Организатору нужны постоянные ссылки, зал ожидания, роли, управление участниками, демонстрация экрана и понятный архив. После встречи должны оставаться запись и проверяемый протокол с фактической длительностью и посещаемостью.
Отдельная эксплуатационная задача — не сорвать сам звонок, если сервис записи временно занят или недоступен. Встреча должна начаться, а запись — перейти в контролируемую очередь повторных попыток с явным статусом для организатора.
💡 Решение
Syntezis Meet объединяет планирование и проведение встреч в одном веб-сервисе. Организатор создаёт быструю, запланированную или постоянную комнату, отправляет гостевую ссылку и допускает внешних участников из зала ожидания. Для зарегистрированных пользователей доступны роли и приглашения, для гостей — вход без отдельного аккаунта.
Медиа-контур работает на self-hosted LiveKit. Короткоживущие токены разделяют права ведущего и гостя, а серверные действия позволяют выключить медиа или удалить участника. Записи создаются через LiveKit Egress, сохраняются в отдельном S3-архиве и выдаются администраторам по временным подписанным ссылкам.
Если Egress занят, встреча остаётся доступной: задача записи ставится в очередь и повторяется автоматически. После каждой сессии сервис формирует протокол с длительностью, посещаемостью и повторными подключениями, который можно выгрузить в CSV.
⚙️ Реализация
Комнаты и гостевой доступ
Реализовали быстрые, запланированные и постоянные комнаты, одноразовые приглашения, публичную гостевую ссылку и зал ожидания с ручным допуском организатором.
Self-hosted медиаконтур
Подключили LiveKit Server и Redis, короткоживущие host/guest JWT, демонстрацию экрана, чат, поднятую руку и серверное управление участниками.
Запись без блокировки звонка
Автоматическая MP4-запись работает через LiveKit Egress и S3. При временной занятости Egress звонок запускается, а запись получает очередь и повторные попытки.
Архив и протоколы
Для каждой сессии фиксируются длительность, посещаемость и повторные подключения. Организатор получает архив записей, а протокол можно выгрузить в CSV.
Защита и эксплуатация
Добавили Spring Security, Argon2id, CSRF, блокировку перебора, идемпотентные webhook, PWA, production Compose, процедуры резервного копирования и отката.
📊 Что работает в продукте
Syntezis Meet работает как самостоятельный продукт: в нём доступны создание встреч, гостевой вход, постоянные комнаты, модерация, демонстрация экрана, чат, запись и протоколы. Одна комната рассчитана на небольшие конференции до 25 участников.
Сервис сохраняет управляемость в сбойном сценарии записи: временная недоступность Egress не блокирует звонок, а задача получает статус и повторные попытки. Записи хранятся отдельно от оперативного состояния комнаты и доступны через ограниченные по времени ссылки.
Рабочий контур доступен по адресу meet.syntezis.ru. Развитие продукта продолжается, но на сайте мы перечисляем только уже реализованные возможности и технические границы.