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.

40 « 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
9 « 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 ?

6 « 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.

1 « J'aime »