Skip to content

Discord Troubleshooting de

stbrumm edited this page Sep 8, 2026 · 2 revisions

Discord-Troubleshooting

English · Deutsch · Español · Startseite

Dein Discord-Status erscheint nicht, sieht falsch aus oder die Verbindung bricht immer wieder ab? Arbeite die Symptome unten durch — jede Diagnose braucht nur den Stream-Bereich und das Tageslog.

Setup-Grundlagen (Portal-Uploads, Client-ID, mitgelieferte Dateien): siehe Discord-Setup.

Status erscheint nicht

  1. Verbindungszeile im Stream-Bereich prüfen. Sie meldet drei Zustände: Nicht verbunden (keine Discord-Desktop-App, Aktivität deaktiviert oder leere Client-ID), Verbinde… oder Verbunden — Discord zeigt den Rivulet-Status. Hängt sie bei Nicht verbunden, den Erneut verbinden-Button nutzen — er baut den Adapter neu auf und wiederholt den Handshake ohne App-Neustart.

  2. Ist der Schalter an? Einstellungen → Discord Rich Presence → Aktivität auf Discord anzeigen muss aktiviert sein und die Anwendungs-Client-ID eingetragen. Eine leere Client-ID hält den Adapter absichtlich aus.

  3. Läuft Discord? Die Rich-Presence-IPC gibt es nur, solange die Discord-Desktop-App offen ist (Browser-Discord reicht nicht). Der Adapter verbindet mit wachsendem Backoff automatisch neu, sobald Discord startet.

  4. Log lesen. Log-Pfade:

    • Windows: %LOCALAPPDATA%\Rivulet\logs\
    • Linux/macOS: lokales Benutzerdatenverzeichnis unter Rivulet/logs/

    Verbunden im Stream-Bereich, aber keine Karte in Discord ist Discord-seitiges Caching — der Client braucht für neue Icons/Assets oft einige Minuten (oder einen Neustart); die Zustellung ist dann im Log bereits belegt.

Log lesen: die zwei entscheidenden Zeilen

Jeder Status-Push loggt genau eine dieser Zeilen:

Discord Rich Presence SET_ACTIVITY delivered activity=<Status> game=<Spielname>

→ Discord hat die Payload angenommen. Sieht die Karte noch alt aus, Discord neu starten — die Zustellung ist belegt.

Discord Rich Presence IPC unavailable error=… backoff_secs=N

→ Der Adapter konnte Discords IPC-Socket nicht erreichen. Typische Ursachen: Discord läuft nicht, eine zweite Discord-Installation (z. B. PTB/Canary) besitzt die Pipe, oder ein Socket-Berechtigungsproblem. Der Adapter versucht es mit exponentiellem Backoff bis 30 s weiter; Erneut verbinden erzwingt einen sofortigen neuen Versuch.

Falsche oder fehlende Application-ID

  • Die Client-ID muss 17–20 Ziffern, nur Zahlen sein. Die Einstellungen zeigen sofort eine Warnung, wenn die App-URL oder eine unvollständige ID eingefügt wurde — die numerische Application ID aus Developer Portal → General Information kopieren.
  • Die ID wird beim Übernehmen geprüft und persistiert; ein fehleraussehender Wert deaktiviert den Adapter nie stillschweigend.
  • Discord zeigt die Presence nur für eine existierende Anwendung mit aktiviertem Rich Presence. Ist die ID gültig, aber es erscheint nichts, im Portal unter Rich Presence → Art Assets prüfen, ob das Artwork unter dem Asset-Key rivulet_logo gespeichert wurde.

Handshake schlägt fehl

  • Framing-/Handshake-Fehler im Log (z. B. Protocol error, HandshakeIncomplete) bedeuten meist, dass etwas anderes an Discords IPC-Pipe lauscht. Andere Apps schließen, die Discord emulieren (Launcher, Chat-Overlays), und Erneut verbinden drücken.
  • Abgelehnte Payload (Fehler 4000): Rivulet prüft jede Payload vor dem Senden gegen Discords Regeln (leeres details, Status-/Spieltitel > 128 Zeichen, unplausible Asset-Keys werden gefiltert) und die Einstellungen warnen beim Übernehmen. Ein 4000 im Log zeigt daher meist ein Asset-Problem im Portal, nicht in der Payload — Asset-Key kontrollieren.
  • Immer noch nichts? Den Live-Handshake-Test bei laufendem Discord aus einem Repository-Checkout ausführen: powershell -File scripts/test-discord-handshake.ps1. Eine READY-Antwort belegt IPC-Pfad, Framing und Client-ID; die Antwort spiegelt auch die aufgelösten Asset-IDs zurück.

Rendering-Grenzen (keine Bugs)

  • Die Mitgliederliste eines Servers zeigt immer nur das App-Icon plus den registrierten App-Namen („Rivulet") — nie die Statuszeilen. Der detaillierte Status erscheint auf der Profilkarte bzw. in der Detailansicht. Das ist Discords Renderregel; das Icon kommt aus dem App Icon-Upload im Portal.
  • Die Status-Labels folgen der Rivulet-Oberflächensprache (Recording/Aufnahme, …) — die App-Sprache umstellen, um die Wording zu ändern.

Sicherheit: Niemals Stream-Keys, OAuth-Tokens oder Anwendungs-Geheimnisse in Wiki-Seiten, Screenshots, Issue-Reports oder Logs einfügen.

Clone this wiki locally