Привет всем! Делюсь плагином Resenha, который добавляет голосовые и видеочаты непосредственно в Discourse — без необходимости использования сторонних приложений, просто peer-to-peer WebRTC в боковой панели.
Попробовать вживую
https://discourse-on-a-pi5.falco.dev/
Как это работает
Нажмите на комнату в боковой панели, чтобы присоединиться, нажмите еще раз, чтобы выйти. По умолчанию все медиаданные передаются напрямую между пользователями через WebRTC — ваш сервер Discourse обрабатывает только сигналы, но не сами медиапотоки. Сайты, которым нужны более масштабные звонки, могут опционально маршрутизировать комнаты через медиасервер LiveKit — либо через LiveKit Cloud, либо через собственный self-hosted сервер. При установке создается комната «Watercooler» по умолчанию, чтобы ваше сообщество могло сразу начать общение.
Возможности
- Интерфейс, ориентированный на боковую панель — комнаты и аватары участников в реальном времени прямо в боковой панели, в стиле Discord, с анимированными индикаторами речи
- Видео и демонстрация экрана — опциональное видео с камеры и демонстрация экрана/вкладки с полной страницей комнаты, макетами плитки/презентации и поддержкой полноэкранного режима
- Виджет постоянных звонков — закрепленный, масштабируемый мини-звонок, который следует за вами при просмотре форума, включая видео
- Настройки звука и видео — выбор устройств, тест микрофона в реальном времени, порог чувствительности ввода, шумоподавление на базе WebAssembly (DTLN) и размытие фона с помощью MediaPipe — все обрабатывается локально в браузере
- Чат комнаты — каждая комната получает текстовый чат, основанный на реальных каналах и потоках чата Discourse
- Сценические комнаты — комнаты для спикеров и аудитории с очередью запросов на выступление, для AMAs и общественных звонков
- Разрешения комнат — публичные, ограниченные для групп и приватные комнаты, с значками блокировки в боковой панели и хэштегами комнат для ссылок на комнаты в постах
- Управление участниками — контекстное меню с индивидуальным громкостью, отключением звука, отключением звука для других и выкидыванием; плюс автоматическое отключение звука/отключение при бездействии и автоматический статус пользователя
- Управление комнатами — создание комнат пользователями ограничено группами, интерфейс CRUD для персонала и полный REST API для программного управления
- Нулевая инфраструктура по умолчанию — чистый браузерный WebRTC с шифрованием DTLS-SRTP, без необходимости в SFU/MCU
- Опциональная интеграция с LiveKit — включайте комнаты индивидуально или маршрутизируйте все через LiveKit Cloud или ваш собственный сервер LiveKit для больших звонков, с панелью состояния администратора и согласованием на основе веб-хуков
Статус
Мы используем это для внутренних встреч уже несколько недель, и оно отлично работает для небольших групп. Для больших групп может потребоваться развертывание вместе с LiveKit, но обычные размеры до 10 участников отлично работают в конфигурации по умолчанию mesh.
Установка
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/xfalcox/resenha.git
Включите в Админ > Настройки > Плагины > resenha enabled.
Отзывы приветствуются
Это новый плагин — баги, идеи и вопросы приветствуются в этой теме. PRs тоже!
Примечание: Это не official плагин.







