Конференции и календарь
Создание мгновенных и запланированных конференций, роли и владелец, календарь, управление встречей и демонстрация экрана.
Конференция — встреча PrimeMeet с отдельной комнатой и участниками: мгновенная, запланированная, созданная из группы или из личной комнаты. Встречи отображаются в календаре и в карточках чатов.
Создание конференции
Параметры новой конференции:
- название;
- режим;
- пароль;
- дата и время;
- длительность от 5 до 480 минут;
- запись;
- приглашенные контакты.
Вход
Вход возможен по коду, по ссылке, из карточки в чате, из календаря и из приглашения.
Перед подключением открывается prejoin: имя, preview, микрофон, камера, выбранные устройства и информация о времени встречи.
Запланированная встреча
До времени начала система показывает локализованный текст, например:
Встреча начнется 14 июля 2026 года в 09:07
Внутренний ISO timestamp не должен отображаться пользователю.
Роли
- владелец;
- зарегистрированный участник;
- гость;
- screen-share participant.
Вместимость
Текущая серверная модель ограничивает конференцию значением, возвращаемым getConferenceCapacity().
Важно. Перед коммерческой эксплуатацией сверяйте это значение с ресурсами LiveKit/TURN и фактическими нагрузочными тестами.
Завершение
Конференция заканчивается:
- владельцем вручную;
- по установленной длительности;
- после ухода всех участников и 90 секунд пустой комнаты;
- администратором при аварийной ситуации.
После завершения новые подключения запрещаются, в календаре показывается завершенный статус, карточка обновляется, завершается запись и запускается обработка материалов (см. Запись, PrimeResume и отчёты).
Планирование и календарь
Создание
- Откройте календарь.
- Нажмите «Запланировать».
- Укажите название.
- Выберите дату, время и длительность.
- Добавьте контакты.
- При необходимости добавьте email.
- Включите запись.
- Сохраните.
Приглашенные контакты
После сохранения встреча появляется в календаре организатора и у приглашенного пользователя, отправляет push, отправляет email при настроенном SMTP и может создать карточку в чате.
Напоминание
Runtime раз в минуту проверяет встречи, начинающиеся в ближайшие 10 минут, и отправляет напоминания.
Активация
До времени начала вход запрещен; после времени организатор активирует встречу, гость ожидает запуска организатором. После активации статус становится live.
Редактирование
Организатор может изменить название, время, длительность, приглашения и другие разрешенные параметры. Завершенную встречу нельзя вернуть в scheduled.
Управление конференцией
Возможности владельца
- завершить встречу;
- выключить микрофоны всем;
- удалить участника;
- заблокировать новые подключения;
- передать роль владельца;
- управлять записью согласно текущей реализации.
Передача владельца
Владелец может передать управление вручную. При выходе владельца backend выбирает подходящего зарегистрированного участника и сохраняет нового владельца.
Блокировка комнаты
При блокировке текущие участники остаются, новые гости не входят, владелец сохраняет доступ.
Автоматический lifecycle
Runtime каждые 5 секунд проверяет передачу владельца, пустую комнату, окончание длительности и предупреждения о завершении.
Примечание. Состояния хранятся в SQLite, поэтому перезапуск backend не должен сбрасывать таймер пустой комнаты или передачу владельца.
Участники на карточке
Карточка встречи в чате и календаре должна показывать количество присутствующих, список или аватары текущих участников, статус «сейчас никого нет» и завершенное состояние.
Демонстрация экрана и презентации
Web/Desktop
- Нажмите кнопку экрана.
- Выберите экран, окно или вкладку.
- Подтвердите системный диалог.
- Проверьте индикатор публикации.
Android
Android использует системную MediaProjection:
- Нажмите «Демонстрация».
- Подтвердите системный диалог.
- Выберите весь экран или доступный вариант.
- Не закрывайте системное уведомление capture service.
iPhone
Возможности зависят от версии iOS и WebKit. Если браузер не предоставляет надежный getDisplayMedia, полноценная демонстрация в PWA недоступна.
Отдельный token
Для screen share backend выдает отдельный LiveKit token с identity:
screen:<userId>:<uuid>
Это не новый пользователь, а дополнительный participant текущего владельца экрана.
Режим презентации
Маршрут /meet/present используется для презентационного сценария и должен открываться только в доверенном контексте согласно политике установки.