Reseña - Añade salas de video y voz estilo Discord y llamadas a tu comunidad 🎙

IMPORTANTE: A partir del 1 de septiembre de 2026, esto ahora es un plugin integrado en el núcleo de Discourse y ha sido renombrado a «Voice». Ahora solo necesitas activarlo desde la página de administración. A partir del 2026-10-20 se llama «Live» en el núcleo.

¡Hola a todos! Comparto Resenha, un nuevo plugin que añade salas de chat de voz y video directamente en Discourse: no se necesitan aplicaciones externas, solo WebRTC entre pares (peer-to-peer) en tu barra lateral.

Pruébalo en vivo

:point_right: https://discourse-on-a-pi5.falco.dev/

Cómo funciona

Haz clic en una sala de la barra lateral para unirse y haz clic de nuevo para salir. Por defecto, todo el tráfico multimedia va de par a par mediante WebRTC: tu servidor de Discourse solo gestiona la señalización, nunca los medios. Los sitios que necesiten llamadas más grandes pueden optar por enrutar las salas a través de un servidor multimedia LiveKit, ya sea LiveKit Cloud o uno autoalojado. Se crea una sala predeterminada llamada «Watercooler» al instalarlo para que tu comunidad pueda empezar a hablar de inmediato.

Características

  • UX centrado en la barra lateral — salas y avatares de participantes en vivo justo en la barra lateral, estilo Discord, con indicadores animados de habla
  • Video y compartición de pantalla — video de cámara opcional y compartición de pantalla/pestaña con una página completa de sala, diseños de mosaico/presentación y soporte para pantalla completa
  • Widget de llamada persistente — una mini llamada acoplada y redimensionable que te sigue mientras navegas por el foro, incluido el video
  • Ajustes de voz y video — selectores de dispositivo, prueba de micrófono en vivo, control de sensibilidad de entrada, supresión de ruido basada en WebAssembly (DTLN) y desenfoque de fondo con MediaPipe, todo procesado localmente en el navegador
  • Chat de sala — cada sala tiene un chat de texto respaldado por canales e hilos reales de chat de Discourse
  • Salas de escenario — salas de hablante/audiencia con una cola de solicitud de palabra, ideal para AMAs y llamadas comunitarias
  • Permisos de sala — salas públicas, restringidas por grupo y privadas, con insignias de bloqueo en la barra lateral y hashtags de sala para vincular salas en publicaciones
  • Controles de participante — menú contextual con volumen por usuario, silenciar, sordina y expulsar; además, silencio/corte automático por inactividad (AFK) y estado de usuario automático
  • Gestión de salas — creación de salas por usuarios limitada por grupos, interfaz CRUD para personal y una API REST completa para control programático
  • Cero infraestructura por defecto — WebRTC puro en el navegador con cifrado DTLS-SRTP, sin necesidad de SFU/MCU
  • Integración opcional con LiveKit — habilita salas individualmente o enruta todo a través de LiveKit Cloud o tu propio servidor LiveKit para llamadas grandes, con un panel de salud de administrador y reconciliación basada en webhooks

Estado

Hemos estado usando esto para reuniones internas durante semanas y funciona muy bien para grupos pequeños. Los grupos más grandes podrían querer desplegarlo junto con LiveKit, pero los tamaños habituales, de hasta 10 participantes, funcionan muy bien con la configuración de malla predeterminada.

Instalación

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/xfalcox/resenha.git

Actívalo en Administración > Ajustes > Plugins > resenha enabled.

Comentarios bienvenidos

Este es un plugin nuevo: errores, ideas y preguntas son bienvenidos en este tema. ¡También PRs!


Nota: Esto no es un plugin official.

57 Me gusta

Reseña, increíble me encanta, gracias mi paisano

12 Me gusta

Lo acabo de instalar y está funcionando en aproximadamente media hora. ¡Parece funcionar bien! Me encantaría ver algunos cambios/adiciones de características:

Característica Estado
Renombrar una sala :cross_mark: No implementado
Eliminar una sala :cross_mark: No implementado
Cambiar el nombre predeterminado de la sala :cross_mark: Codificado de forma rígida
Vincular salas a categorías de Discourse :cross_mark: No compatible
Establecer permisos por sala :cross_mark: No compatible
Crear salas de caducidad automática :cross_mark: No compatible
Descripciones/temas de la sala :cross_mark: No compatible
10 Me gusta

Esto es increíble. ¿Hay algún plan para que el equipo lo haga oficial una vez que salga de la alfa?

7 Me gusta

Actualmente no hay planes, ya que esto es principalmente una exploración de las posibilidades de la tecnología y cómo puede integrarse con Discourse.

Aun así, como todo lo demás, depende de lo que quieran nuestros clientes.

9 Me gusta

¡Esto es bastante asombroso, Falco! Puedo ver bastantes aplicaciones para esto siendo lo que has enumerado. ¡Los complementos de funciones como este sin duda ayudan a que Discourse Meta sea la plataforma de referencia!

4 Me gusta

¿Dónde está la opción para crear una nueva sala?

No hay interfaz de usuario para eso, ya que este es un proyecto experimental sobre la tecnología en lugar de una solución lista para sitios de producción.

2 Me gusta

¿No debería estar presente el experimental por ahora?

Buen complemento

3 Me gusta

He estado jugando con esto durante unos días, ¡y es brillante!

Resuelve maravillosamente el problema de “actualizar” fácilmente un foro/discusión de chat a una conversación verbal. He pasado años luchando entre la necesidad de cambiar a otras plataformas o tener intentos (que consumen muchos recursos) de videoconferencia integrada.

Si deciden llevarlo más allá, me encantaría que estuviera diseñado para integrarse con el chat. Sería simplemente sublime poder iniciar una sala de Voz privada para los miembros de un chat directamente desde el chat (con una limpieza posterior para mantener las cosas ordenadas). Y el chat seguiría siendo el lugar perfecto para dejar comentarios adicionales, archivos, enlaces, etc.

La guinda del pastel sería, por supuesto:

  1. Una opción para video (probablemente no sea técnicamente posible con una tecnología tan ligera)

  2. Transcripción con IA, lo suficientemente inteligente como para integrar temas y chat relacionados. Esto sería absolutamente increíble como secretario de reuniones.

11 Me gusta

¡Gracias por los comentarios! ¡Ese fue exactamente mi objetivo con esto!

Definitivamente, ese sería un siguiente paso lógico, con salas efímeras para respaldarlo.

Es muy factible, tanto sin un SFU/MCU para personas con suficiente subida, como con soporte opcional para ello.

7 Me gusta

Esto fue perfecto, no actualizaré por un largo período, pero en febrero actualizaré por última vez cuando se lance ESR para incluir este complemento.

Estoy muy emocionado por eso y espero que llegue.

2 Me gusta

¿Hay alguna posibilidad de cambiar el ícono a bottle-water para la sala de chat ‘Watercooler’?

3 Me gusta

Ahora hay una interfaz de usuario para administrar salas.

10 Me gusta

Gracias Falco por este plugin :heart:

Es un gran trabajo :+1:

1 me gusta

Estoy probando en producción, ¡volveré con comentarios! Vamos a reseñar :brazil:

1 me gusta

¿Quizás un anillo sería mejor en este caso? Cuando estoy en una sala y hago clic en mi propio perfil o en el perfil de otro, el DOM se actualiza y vuelvo a la página de inicio.

Ahora hay una pantalla de detalles de sala que utiliza el patrón de menú kebab de Discourse Chat

2 Me gusta

No se superpone en el tema predeterminado, ¿quizás ajusta tu tema para manejar el menor espacio para el relleno?

image

Esto ya está solucionado.

3 Me gusta

A la luz de las noticias recientes, he añadido una nueva función al complemento: un filtro de ruido impulsado por IA.

Los administradores pueden habilitarlo a través de una configuración del sitio (predeterminado: desactivado) y luego los usuarios pueden optar por activarlo haciendo clic en su propio usuario en una sala de chat de voz.

6 Me gusta