Reseña - Añade salas de voz al estilo Discord a tu comunidad 🎙

¡Hola a todos! Compartiendo Resenha, un plugin experimental que añade salas de chat de voz directamente en Discourse: sin aplicaciones externas, sin servidores multimedia, solo voz de igual a igual (peer-to-peer) en su barra lateral.

output

Pruébalo en Vivo

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

(Sí, se ejecuta en una Raspberry Pi 5; así de ligero es).

Cómo Funciona

Haz clic en una sala en la barra lateral para unirte, haz clic de nuevo para salir. Todo el audio va de igual a igual a través de WebRTC; su servidor Discourse solo maneja la señalización, nunca los medios. Se crea una sala predeterminada llamada “Watercooler” al instalarlo para que su comunidad pueda empezar a hablar inmediatamente.

Características

  • Experiencia de usuario centrada en la barra lateral — salas y avatares de participantes en vivo justo en la barra lateral, al estilo Discord.
  • Indicadores de habla — barras de audio animadas muestran quién está hablando en tiempo real.
  • Controles de participante — menú contextual con opciones de volumen, silenciar y expulsar.
  • Gestión de salas — interfaz de usuario CRUD para personal y una API REST completa para control programático.
  • Infraestructura cero — WebRTC puro del navegador con cifrado DTLS-SRTP, no se necesita SFU/MCU.
  • Restricción por nivel de confianza — utiliza el sistema de confianza existente de Discourse para los permisos de creación de salas.

Estado

:warning: Alfa — funciona bien para salas pequeñas (2–10 participantes). Pruebe primero con un grupo reducido. Las salas más grandes pueden alcanzar los límites de pares del navegador; se planea el soporte para SFU.

Instalación

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

Habilítelo en Administrador > Configuración > Plugins > resenha activado.

Comentarios Bienvenidos

Esto es experimental: errores, ideas y preguntas son bienvenidos en este tema. ¡Las PR también!


Nota: Este no es un plugin official.

47 Me gusta

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

8 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.

8 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.

9 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.

5 Me gusta