Critique - Ajouter des salons vocaux de style Discord à votre communauté 🎙

Bonjour à tous ! Je suis ravi de partager Resenha, un nouveau plugin expérimental qui apporte le chat vocal directement dans Discourse — pas d’applications séparées, pas d’infrastructure compliquée, juste des salons vocaux transparents intégrés directement dans votre barre latérale.

output

Qu’est-ce que Resenha ?

Resenha ajoute des salons vocaux de style Discord auxquels les membres de votre communauté peuvent se joindre en un seul clic. Considérez-le comme un chat vocal léger et toujours disponible qui coexiste avec les discussions de votre forum — parfait pour les rencontres décontractées, les groupes d’étude, les clubs de lecture ou la collaboration en temps réel.

Pourquoi vous allez l’adorer

:green_circle: Zéro surcharge de serveur - Tout le trafic vocal passe en peer-to-peer (pair-à-pair) en utilisant WebRTC. Votre serveur Discourse ne gère que la signalisation — aucun média ne touche jamais votre infrastructure. Cela signifie un chat vocal qui évolue avec votre communauté sans faire exploser vos coûts d’hébergement.

:unlock: Confidentialité d’abord par conception - Chiffrement de bout en bout intégré grâce au DTLS-SRTP de WebRTC. Les flux audio ne passent jamais par votre serveur, offrant aux participants une véritable confidentialité pair-à-pair.

:zap: Connexion/déconnexion instantanée - Les salons apparaissent dans votre barre latérale. Cliquez pour rejoindre, cliquez à nouveau pour quitter. Pas de chargement de page, pas d’interface utilisateur complexe — juste une voix sans friction.

:busts_in_silhouette: Présence en direct - Voyez qui se trouve dans chaque salon avec des avatars en temps réel. Les locuteurs actifs reçoivent un contour vert pour que vous sachiez toujours qui parle.

:wrench: Configuration simple - Activez le plugin, et un salon “Watercooler” apparaît automatiquement. Votre communauté peut commencer à utiliser le chat vocal immédiatement sans aucune configuration.

:shield: Contrôles de niveau de confiance - Exploitez le système de confiance existant de Discourse pour contrôler qui peut créer et gérer des salons.

Parfait pour

  • Réunions d’équipe - Les modérateurs et les administrateurs peuvent organiser des points réguliers sans jongler avec Zoom, Discord ou d’autres outils tiers
  • Groupes d’étude et communautés d’apprentissage ayant des discussions en direct
  • Guildes de jeu se coordonnant sans applications vocales tierces
  • Équipes à distance ayant des conversations décontractées au “watercooler”
  • Clubs de lecture et groupes de loisirs souhaitant des discussions spontanées
  • Communautés locales organisant des événements et des rencontres en temps réel

Essayez-le en direct

Vous voulez le voir en action avant de l’installer ? Rejoignez notre communauté de démonstration et testez les salons vocaux vous-même :

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

(Oui, il fonctionne sur un Raspberry Pi 5 ! C’est dire à quel point c’est léger.)

Points techniques clés

Pour ceux qui s’intéressent à l’implémentation :

  • WebRTC pur dans le navigateur (aucun serveur SFU/MCU nécessaire)
  • Toute la signalisation via Discourse + MessageBus
  • Configuration du serveur STUN/TURN pour les réseaux restrictifs
  • Présence basée sur Redis avec battements de cœur automatiques
  • Détection de la parole en temps réel avec indicateurs visuels
  • API REST pour la gestion programmatique des salons

État actuel

:warning: Version Alpha - Il s’agit d’un logiciel à un stade précoce. Nous recommandons de tester avec de petits groupes avant de le déployer sur toute votre communauté. Le plugin fonctionne bien pour les salons de petite et moyenne taille (2 à 10 participants). Les salons plus grands peuvent atteindre les limites de pairs du navigateur, bien que le support TURN/SFU soit prévu pour l’avenir.

Installation

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

Ensuite, activez-le dans Admin > Paramètres > Plugins > resenha activé.

Implication

Ceci est un projet expérimental et nous aimerions avoir vos commentaires ! Que vous le testiez sur votre communauté, que vous trouviez des bugs ou que vous ayez des idées de fonctionnalités, veuillez partager votre expérience ici.

  • :bug: Vous avez trouvé un bug ? :speech_balloon: Vous avez des questions ? Répondez à ce sujet !
  • :bulb: Vous souhaitez contribuer ? Les PR (Pull Requests) sont les bienvenues

Qui est prêt à donner une voix à sa communauté ? :microphone:


Note : Ceci n’est pas un plugin official.

42 « J'aime »

Critique, génial j’adore ça merci mon compatriote

8 « J'aime »

Je viens de l’installer et il est opérationnel en une demi-heure environ. Semble bien fonctionner ! J’aimerais voir quelques changements/ajouts de fonctionnalités :

Fonctionnalité Statut
Renommer une salle :cross_mark: Non implémenté
Supprimer une salle :cross_mark: Non implémenté
Changer le nom par défaut de la salle :cross_mark: Codé en dur
Lier les salles aux catégories Discourse :cross_mark: Non pris en charge
Définir des autorisations par salle :cross_mark: Non pris en charge
Créer des salles à expiration automatique :cross_mark: Non pris en charge
Descriptions/sujets de salle :cross_mark: Non pris en charge
10 « J'aime »

C’est incroyable. Y a-t-il un plan pour que l’équipe le rende officiel une fois qu’il sera sorti de l’alpha ?

7 « J'aime »

Aucun plan actuellement, car il s’agit principalement d’une exploration des possibilités de la technologie et de la manière dont elle peut s’intégrer à Discourse.

Néanmoins, comme pour tout le reste, cela dépend de ce que veulent nos clients.

7 « J'aime »

C’est vraiment génial, Falco ! Je peux voir pas mal d’applications pour cela, compte tenu de ce que vous avez listé. Les plugins de fonctionnalités comme celui-ci aident vraiment à faire de Discourse Meta la plateforme de référence !

3 « J'aime »

Où se trouve l’option pour créer une nouvelle salle ?

Il n’y a pas d’interface utilisateur pour cela car il s’agit d’un projet expérimental sur la technologie plutôt que d’une solution prête pour les sites de production.

2 « J'aime »

Ne devrait-il pas y avoir de #experimental pour l’instant ?

Plugin sympa

3 « J'aime »

Je joue avec ça depuis quelques jours - et c’est brillant !!!

Il résout magnifiquement le problème de la « mise à niveau » facile d’un forum/discussion de chat vers une conversation verbale. J’ai passé des années à lutter entre le besoin de passer à d’autres plateformes, ou d’avoir des tentatives gourmandes en ressources de visioconférence intégrée.

Si vous décidez d’aller plus loin, j’aimerais que ce soit conçu pour s’intégrer au chat. Ce serait tout simplement sublime de pouvoir lancer une salle vocale privée pour les membres d’un chat directement depuis le chat (avec un nettoyage par la suite pour garder les choses propres). Et le chat resterait l’endroit parfait pour déposer des commentaires supplémentaires, des fichiers, des liens, etc.

La cerise sur le gâteau serait bien sûr :

  1. Une option pour la vidéo (probablement pas possible techniquement avec une technologie aussi légère)

  2. Transcription par IA, suffisamment intelligente pour intégrer les sujets et le chat connexes. Ce serait absolument incroyable en tant que secrétaire de réunion.

8 « J'aime »

Merci pour le retour ! C’était exactement mon objectif avec ceci !

Certainement, ce serait une prochaine étape logique, avec des salles éphémères pour la sauvegarder.

C’est tout à fait réalisable, à la fois sans SFU/MCU pour les personnes ayant un débit montant suffisamment bon, ou avec un support optionnel pour cela.

4 « J'aime »

C’était parfait, je ne ferai pas de mise à jour avant longtemps, mais en février, je ferai une dernière mise à jour lorsque l’ESR sera lancé pour inclure ce plugin.

J’en suis très enthousiaste et j’espère que cela arrivera.