Rezension: Discord-ähnliche Sprachräume für Ihre Community hinzufügen 🎙

Hallo zusammen! Ich teile Resenha, ein experimentelles Plugin, das Sprach- und Videochat-Räume direkt in Discourse integriert – ohne externe Apps, einfach Peer-to-Peer-WebRTC in der Seitenleiste.

output

Jetzt live ausprobieren

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

(Ja, es läuft auf einem Raspberry Pi 5 – so leichtgewichtig ist das.)

So funktioniert es

Klicke auf einen Raum in der Seitenleiste, um beizutreten, und klicke erneut, um zu verlassen. Standardmäßig wird das gesamte Medienmaterial Peer-to-Peer über WebRTC übertragen – dein Discourse-Server übernimmt nur das Signaling, niemals die Medien. Sites, die größere Anrufe benötigen, können Räume optional über einen LiveKit-Medienserver leiten – entweder LiveKit Cloud oder einen selbst gehosteten. Bei der Installation wird ein Standard-„Watercooler“-Raum erstellt, damit deine Community sofort loslegen kann.

Funktionen

  • Seitenleisten-UX – Räume und Live-Teilnehmer-Avatare direkt in der Seitenleiste, im Discord-Stil, mit animierten Sprechindikatoren
  • Video- und Bildschirmaustausch – optionales Kameravideo und Bildschirm-/Tab-Austausch mit einer vollständigen Raumseite, Kachel-/Präsentationslayouts und Vollbildunterstützung
  • Persistenter Anruf-Widget – ein angedocktes, skalierbares Mini-Call, das dich beim Durchsuchen des Forums begleitet, inklusive Video
  • Sprach- und Videoeinstellungen – Geräteauswahl, Live-Mikrofontest, Eingabesensitivitätsgate, WebAssembly-Geräuschunterdrückung (DTLN) und MediaPipe-Hintergrundunschärfe – alles lokal im Browser verarbeitet
  • Raum-Chat – jeder Raum erhält einen Text-Chat, der von echten Discourse-Chat-Kanälen und Threads unterstützt wird
  • Bühnenräume – Sprecher-/Publikumsräume mit einer Antragswarteschlange zum Sprechen, für AMAs und Community-Anrufe
  • Raumberechtigungen – öffentliche, gruppenbeschränkte und private Räume, mit Sperrabzeichen in der Seitenleiste und Raum-Hashtags zum Verlinken von Räumen in Beiträgen
  • Teilnehmersteuerung – Kontextmenü mit Lautstärke pro Benutzer, Stummschaltung, Taubschaltung und Kicken; plus AFK-Automatik-Stummschaltung/-Trennung und automatischer Benutzerstatus
  • Raumverwaltung – Benutzer-Raumerstellung durch Gruppen eingeschränkt, Mitarbeiter-CRUD-Oberfläche und vollständige REST-API für programmatische Steuerung
  • Keine Infrastruktur standardmäßig – reines Browser-WebRTC mit DTLS-SRTP-Verschlüsselung, kein SFU/MCU erforderlich
  • Optionale LiveKit-Integration – Räume einzeln aktivieren oder alles über LiveKit Cloud oder deinen eigenen LiveKit-Server für große Anrufe leiten, mit Admin-Health-Panel und webhookbasierter Abgleichung

Status

:warning: Beta – Der Standard-Peer-to-Peer-Modus wurde getestet und funktioniert gut mit kleinen Gruppen (2–10 Teilnehmer). Für größere Räume verweise das Plugin auf LiveKit (Cloud oder selbst gehostet) – alles andere funktioniert identisch weiter.

Installation

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

Aktiviere in Admin > Einstellungen > Plugins > resenha enabled.

Feedback erwünscht

Dies ist experimentell – Fehler, Ideen und Fragen sind in diesem Thema willkommen. PRs auch!


Hinweis: Dies ist kein #official::tag-Plugin.

54 „Gefällt mir“

Rezension, großartig, ich liebe es, danke mein Landsmann

12 „Gefällt mir“

Ich habe es gerade installiert und es lief in etwa einer halben Stunde. Scheint gut zu funktionieren! Ich würde gerne ein paar Funktionsänderungen/Ergänzungen sehen:

Funktion Status
Raum umbenennen :cross_mark: Nicht implementiert
Raum löschen :cross_mark: Nicht implementiert
Standard-Raumnamen ändern :cross_mark: Fest codiert
Räume mit Discourse-Kategorien verknüpfen :cross_mark: Nicht unterstützt
Berechtigungen pro Raum festlegen :cross_mark: Nicht unterstützt
Automatisch ablaufende Räume erstellen :cross_mark: Nicht unterstützt
Raumbeschreibungen / Themen :cross_mark: Nicht unterstützt
10 „Gefällt mir“

Das ist großartig. Gibt es Pläne für das Team, es offiziell zu machen, sobald es aus der Alpha-Phase heraus ist?

7 „Gefällt mir“

Derzeit gibt es keine Pläne, da dies hauptsächlich eine Erkundung der Möglichkeiten der Technologie und ihrer Integration in Discourse ist.

Dennoch hängt es, wie bei allem anderen auch, davon ab, was unsere Kunden wünschen.

9 „Gefällt mir“

Das ist ziemlich großartig, Falco! Ich kann mir einige Anwendungen dafür vorstellen, basierend auf dem, was Sie aufgelistet haben. Feature-Plugins wie dieses helfen definitiv dabei, Discourse Meta zur Anlaufstelle-Plattform zu machen!

4 „Gefällt mir“

Wo ist die Option, einen neuen Raum zu erstellen?

Dafür gibt es keine Benutzeroberfläche, da es sich um ein experimentelles Projekt zur Technologie und nicht um eine fertige Lösung für Produktionsseiten handelt.

2 „Gefällt mir“

Sollte das experimental nicht vorerst vorhanden sein?

Cooles Plugin

3 „Gefällt mir“

Ich habe damit ein paar Tage herumgespielt – und es ist brillant!!!

Es löst das Problem, eine Forum-/Chat-Diskussion mühelos in ein mündliches Gespräch umzuwandeln, auf wunderschöne Weise. Ich habe jahrelang damit gekämpft, entweder auf andere Plattformen wechseln zu müssen oder ressourcenintensive (Versuche von) integrierten Videokonferenzen zu haben.

Wenn Sie sich entscheiden, es weiterzuentwickeln, würde ich es lieben, wenn es so konzipiert wäre, dass es sich in den Chat integriert. Es wäre einfach erhaben, direkt aus dem Chat einen privaten Sprachraum für die Mitglieder eines Chats starten zu können (mit anschließender Aufräumarbeiten, um alles sauber zu halten). Und der Chat würde weiterhin der perfekte Ort sein, um zusätzliche Kommentare, Dateien, Links usw. einzufügen.

Das Tüpfelchen auf dem i wäre natürlich:

  1. Eine Option für Video (wahrscheinlich technisch mit solch einer leichten Technologie nicht möglich)

  2. KI-Transkription, die klug genug ist, um zusammenhängende Themen und den Chat zu integrieren. Dies wäre absolut erstaunlich als Mitschreiber für Besprechungen.

11 „Gefällt mir“

Danke für das Feedback! Das war genau mein Ziel damit!

Definitiv, das wäre ein logischer nächster Schritt, mit ephemeren Räumen zur Sicherung.

Das ist sehr gut machbar, sowohl ohne SFU/MCU für Leute mit ausreichend gutem Upload als auch mit optionaler Unterstützung dafür.

7 „Gefällt mir“

Das war perfekt, ich werde für lange Zeit nicht aktualisieren, aber im Februar werde ich ein letztes Mal aktualisieren, wenn ESR veröffentlicht wird, um dieses Plugin einzuschließen.

Ich freue mich sehr darauf und hoffe, dass es kommt.

2 „Gefällt mir“

Gibt es eine Möglichkeit, das Symbol für den Chatraum „Watercooler“ auf bottle-water zu ändern?

3 „Gefällt mir“

Es gibt jetzt eine Benutzeroberfläche zur Verwaltung von Räumen.

10 „Gefällt mir“

Danke Falco für dieses Plugin :heart:

Das ist super Arbeit :+1:

1 „Gefällt mir“

Ich teste in der Produktion, ich melde mich mit Feedback zurück! Lass uns rezensieren :brazil:

1 „Gefällt mir“

Vielleicht wäre ein Ring in diesem Fall besser? Wenn ich mich in einem Raum befinde und auf mein eigenes Profil oder das Profil eines anderen klicke, wird die DOM-Aktualisierung zur Startseite zurückgeführt.

Es gibt jetzt einen Bildschirm für Rauminformationen, der das Kebab-Menü-Muster von Discourse Chat verwendet

2 „Gefällt mir“

Bei dem Standardthema überlappt es nicht, vielleicht passen Sie Ihr Thema so an, dass es den geringeren Abstand für den Abstand berücksichtigt?

image

Das ist jetzt behoben.

3 „Gefällt mir“

Angesichts der jüngsten Nachrichten habe ich dem Plugin eine neue Funktion hinzugefügt: einen KI-gesteuerten Rauschfilter.

Administratoren können ihn über eine Website-Einstellung verfügbar machen (Standard: aus), und Benutzer können ihn dann aktivieren, indem sie in einem Voice-Chat-Raum auf ihren eigenen Benutzernamen klicken.

6 „Gefällt mir“