| Zusammenfassung | Fügt Peer-to-Peer-Sprach- und Videoanrufe (WebRTC) innerhalb von Discourse hinzu. Eins-zu-eins-Anrufe über eine schwebende Schaltfläche oder aus dem 1:1-Chat-Komponisten; integriertes Widget und Anruf-UI. Keine externen Anwendungen. Ihr Discourse-Server übernimmt nur das Signalisieren (keine Medien). Audio/Video fließt, wann immer möglich, direkt zwischen den beiden Browsern (P2P); Sie können optionale TURN-Server in Admin hinzufügen, damit bei einem Fehlschlag von direktem P2P (z.B. strenges NAT/Firewall) Medien über TURN weitergeleitet werden und der Anruf trotzdem funktioniert. | |
| Repository-Link | GitHub - idiskuz/diskuz-call: Voice calls (WebRTC) for Discourse. P2P calls between users, built-in UI. Created for diskuz.com. · GitHub | |
| Installationsanleitung | Plugins in Discourse installieren | |
| Community diskuz Call | Support-Community auf diskuz.com fĂĽr dieses neue Plugin. |
Funktionen
- P2P-Sprache und Video (WebRTC) — Discourse übernimmt nur das Signalisieren (Offer/Answer, ICE); es empfängt oder speichert niemals Audio/Video. STUN (Standard: Google) hilft den beiden Browsern, sich gegenseitig zu finden; Medien fließen dann direkt zwischen ihnen (echtes P2P). TURN (optional, konfigurierbar unter Admin → ICE-Server) ist ein Relay: Wenn direktes P2P fehlschlägt (symmetrisches NAT, Unternehmens-Firewall usw.), fließen Medien über A → TURN-Server → B, sodass der Anruf trotzdem funktioniert. Fügen Sie TURN hinzu, wenn Benutzer von fehlgeschlagenen Anrufen oder einseitigem Audio berichten.
- Schwebende Schaltfläche (unten rechts) — Öffnet ein Widget, um einen Benutzernamen einzugeben und einen Anruf zu starten. Wird ausgeblendet, wenn der Themen-Komponist oder der Chat geöffnet ist. Der Admin kann diese Funktion auf der gesamten Seite deaktivieren.
- Anrufschaltfläche im 1:1-Chat — Symbol im Chat-Komponisten, um einen Anruf mit dem anderen Benutzer zu starten. Der Admin kann diese Funktion auf der gesamten Seite deaktivieren. Nur für zugelassene Gruppen sichtbar, wenn aktiviert.
- Gruppenbasierter Zugriff — Nur Benutzer in konfigurierten Gruppen sehen und verwenden diskuz Call. Optional „Angerufener muss Anrufer folgen“ (erfordert Discourse Follow).
- Separate Gruppen für „Video erlaubt“ — Steuert, wer während eines Anrufs die Kamera einschalten kann.
- Konfigurierbarer Klingelton — Ton bei eingehendem Anruf: keine, Standard, ding, glocke, chat, benutzerdefiniert (bis zu 10 MP3-URLs; Benutzer wählt einen im Widget aus) oder eingebaute alternative Voreinstellungen. Separat zeigen Discourse-Benachrichtigungen (Glockensymbol) „ruft Sie an“ für eingehende Anrufe und „Verpasster Anruf“ mit Uhrzeit für verpasste Anrufe an.
- Widget — Zwei Seiten: „Einen Freund anrufen“ (Startseite) und Benachrichtigungen (Empfangen, Gesendet, Letzte, Verpasst; bis zu 10 pro Registerkarte; Benutzernamen sind anklickbar, um erneut anzurufen). Desktop: oben ziehbar. Mobil: Vollbild.
- Während eines Anrufs — Dauer, stummschalten, Lautsprecher, Video ein/aus, Unschärfe (Desktop/Android), Ohr-Modus auf Mobilgeräten (dunkle Überlagerung; 3x tippen zum Entsperren). Benutzerstatus (Online, beschäftigt, offline) im Browser; eingehende Anrufe können bei beschäftigt/offline automatisch abgelehnt werden. Wenn der Benutzer zu einer anderen Registerkarte wechselt, beginnt ein 60-Sekunden-Timer; wenn er nicht zurückkehrt, endet der Anruf.
- Lokalisierung — Englisch und Italienisch (Client und Server).
Status: Beta. Bei fehlgeschlagenen Anrufen oder einseitigem Audio konfigurieren Sie TURN unter Admin → Plugins → ICE-Server.
Konfiguration
- Installieren — Plugin hinzufügen (z.B. über
app.yml-Hooks oder manuell im Plugins-Verzeichnis):git clone https://github.com/idiskuz/diskuz-call.git- App neu erstellen (z.B.
./launcher rebuild app).
- Aktivieren — Admin → Plugins: diskuz Call aktivieren (falls aufgelistet). Admin → Einstellungen → Plugins: Enable diskuz Call aktivieren.
- Zugriff — Stellen Sie Who can see and use diskuz Call auf die gewünschten Gruppen ein (z.B.
1|2|3für Admins, Moderatoren, Staff). - Optional — Show floating button / Show chat button, Require the callee to follow the caller (mit Discourse Follow), Sound for incoming calls, Custom ringtones oder Alternative ringtone, Groups that can enable video, Primary color und ICE servers (TURN JSON) konfigurieren, falls für NAT/Firewall erforderlich.
Anforderungen: Discourse (verwendet integrierte Echtzeit-Nachrichtenübermittlung für Signalisierung). Optional: Discourse Follow (für „Angerufener muss Anrufer folgen“). Browser mit WebRTC, Mikrofon (und Kamera für Video).
Einstellungen
| Name | Beschreibung |
|---|---|
| Enable diskuz Call | Hauptschalter fĂĽr das Plugin. |
| Who can see and use diskuz Call | Gruppenliste (z.B. Admins, Moderatoren, Staff nach ID). Nur diese Benutzer sehen das Plugin und können Anrufe tätigen/empfangen. |
| Require the callee to follow the caller | Wenn aktiviert (mit Discourse Follow), muss der Angerufene dem Anrufer folgen, um Anrufe zu empfangen. |
| Show floating button | AN: Schwebende Schaltfläche nur für zugelassene Gruppen sichtbar. AUS: Für alle ausgeblendet. |
| Show chat button | AN: Anrufschaltfläche im 1:1-Chat nur für zugelassene Gruppen sichtbar. AUS: Für alle ausgeblendet. |
| Groups that can enable video | Gruppenliste, wer die Video-Schaltfläche während eines Anrufs verwenden kann. |
| Primary color | Hex-Farbe (z.B. #13c98c) für Schaltfläche und Akzente. |
| Sound for incoming calls | keine, Standard, ding, glocke, chat, benutzerdefiniert oder alternativ. |
| Custom ringtones 1–10 | MP3-URLs. Wird verwendet, wenn Sound benutzerdefiniert ist; Benutzer wählt einen im Widget aus. |
| Alternative ringtone | Voreinstellung, wenn Sound alternativ ist (z.B. soft, classic, modern, festivo, marimba, relax1–5). |
| ICE servers | Optionale JSON-Array fĂĽr STUN/TURN. Leer = nur Google STUN. |
| Debug log | Wenn AN, \[diskuz-call\]-Meldungen in der Browserkonsole (F12). FĂĽr Support; in der Produktion deaktivieren. |
Autoren: diskuz.com, Cristian Deraco
Credits: Konzept, Funktionen und Design von Cristian Deraco (diskuz.com). Implementierung mit KI-gestĂĽtzter Entwicklung.
Version: 0.4.0-beta
Dies ist kein offizielles Discourse-Plugin.
Super gespannt, dies mit euch allen zu teilen – diskuz Call ist endlich live! Ich kann es kaum erwarten zu hören, was ihr denkt ![]()







