← Doku
Funktionsmatrix
Eine “Funktioniert das?”-Übersicht zu jeder Discord-Bot-Funktion auf GameVox. Nutze sie, um eine Migration abzuschätzen, bevor du die Gateway-URL umstellst. Die Spalte Selbst gehostet zeigt, ob eine Funktion funktioniert, wenn dein Bot auf dem selbst gehosteten GameVox-Server eines Kunden installiert ist. Die Weiterleitungsarchitektur beschreibt die Doku zu selbst gehosteten Servern.
| Bereich | Funktion | Cloud | Selbst gehostet | Hinweise |
|---|---|---|---|---|
| Gateway | JSON-Kodierung | Ja | Ja | Standard; was jede Bibliothek nutzt |
| zlib-stream-Kompression | Ja | Ja | Von jeder großen Bibliothek abgedeckt | |
| ETF-Kodierung | Nein | Nein | Bibliotheken fallen auf JSON zurück, wenn encoding=etf fehlt | |
| Zstandard-Kompression | Nein | Nein | zlib-stream ist die universelle Alternative | |
| Resume / op:6 | Ja | Ja | Der Resume-Puffer wird nach Redis gespiegelt, sodass op:6 Neustarts von api-Tasks übersteht | |
| Sharding | Ja | Ja | Üblicher Hash (guild_id >> 22) % num_shards | |
| REST | Nachrichten-CRUD | Ja | Ja | Senden, Bearbeiten, Löschen, Massenlöschen, Abrufen, Anpinnen, Tippen, Reaktionen, Dateianhänge, Umfragen |
| Kanal-CRUD | Ja | Ja | Cloud: Neuordnung sowie Schreiben von Rollen-Overwrites (PUT und DELETE); Kanalobjekte listen Overwrites noch nicht auf. Selbst gehostet: Neuordnung ja, Rollen-Overwrites ja (keine Mitglieder-Overwrites), an Kanalobjekten aufgeführt | |
| Berechtigungs-Overwrites pro Kanal | Teilweise | Teilweise | Nur Rollen-Overwrites (Gruppen), keine Mitglieder-Overwrites. Schreiben (PUT, DELETE) funktioniert in der Cloud und auf selbst gehosteten Servern. Lesen (permission_overwrites in Kanalobjekten und bei CHANNEL_UPDATE) funktioniert vorerst nur auf selbst gehosteten Servern; Kanalobjekte in der Cloud enthalten das Feld nicht. Auf selbst gehosteten Servern gewährt ein Allow nie mehr, als die Gruppe selbst darf | |
| Mitglieder / Rollen / Banns | Ja | Ja | Vollständiges CRUD; communication_disabled_until (Timeout) wird nicht unterstützt | |
| Webhooks (Kanal & App) | Ja | Ja | Vollständiges CRUD + Ausführen (Embeds, Anhänge, Multipart). Auf selbst gehosteten Servern bleiben die Datensätze im Cloud-Speicher, und beim Ausführen erzeugte Nachrichten werden in den selbst gehosteten Kanal geschrieben | |
| App-eigene Emojis | Nur im Portal | Nur im Portal | Verwaltung im Entwicklerportal; GET über die Bot-API funktioniert. Siehe Emojis | |
| Audit-Log | Teilweise | Teilweise | Für Bots relevante Einträge; der Verlauf von Overwrites pro Kanal wird nicht indiziert | |
| Rate-Limit-Header | Ja | Ja | X-RateLimit-* bei jeder Antwort, Bucket-basiert | |
| Interaktionen | Anwendungsbefehle (Slash, Nutzer, Nachricht) | Ja | Ja | Bulk-PUT + CRUD für einzelne Befehle. Befehle werden für beide Serverarten in der Cloud registriert; Aufrufe auf selbst gehosteten Servern laufen über die Cloud |
| Buttons, String-Auswahlmenüs, Dialoge (Komponenten v1) | Ja | Ja | Auch ephemere Antworten. Nur in Serverkanälen, nicht in DMs. Siehe Nachrichtenkomponenten | |
| Auswahlmenüs für Nutzer, Rollen, Erwähnbare und Kanäle | Teilweise | Teilweise | Werden angenommen und gespeichert; Clients zeigen sie deaktiviert an, daher lösen sie nie eine Interaktion aus | |
| Komponenten v2 | Nein | Nein | Nicht unterstützt; Layout-Komponenten aus v2 werden nicht angezeigt | |
| Interaktionen im HTTP-Modus (ausgehender Endpunkt) | Teilweise | Teilweise | Per POST an deine interactions_endpoint_url mit Ed25519-Signatur, mit Gateway-Fallback, wenn der Endpunkt ausfällt. Erfordert eine verbundene Gateway-Sitzung, und der Antwort-Body wird ignoriert: Antworte über den Callback-Endpunkt. Siehe OAuth2 | |
| Sprache | UDP-Voice-Gateway | Ja | Ja | Pro Region. Siehe Voice-Doku |
| AEAD AES-256-GCM | Ja | Ja | Bevorzugt | |
| AEAD XChaCha20-Poly1305 | Ja | Ja | Fallback | |
| Bot-gesteuerte Änderung des Sprachzustands | Ja | Teilweise | Beide: PATCH .../voice-states/{user_id} für Stummschalten / Verschieben / Trennen. Selbst gehostet akzeptiert zusätzlich deaf, in beliebiger Kombination mit einem Verschieben; ein Verschieben löst zwei Ereignisse statt eines aus | |
| Sonstiges | Server-Emojis (lesend) | Ja | Ja | Auflisten + abrufen; Erstellen/Ändern/Löschen nur über das Portal |
| Soundboard (lesend) | Ja | Ja | Auflisten + abrufen; bot-gesteuerte Wiedergabe wird nicht unterstützt | |
| Vanity-URL | Teilweise | Nein | Cloud: lesen + ändern (Server ab Gold). Selbst gehostet: PATCH gibt 501 zurück | |
| Threads / Forenbeiträge | Teilweise | Teilweise | Forenbeiträge: einen starten (POST /channels/{forum}/threads), ihn lesen und darin antworten. Andere Thread-Endpunkte (Archivieren, Thread-Mitglieder, aktive Threads) werden nicht unterstützt | |
| Geplante Termine | Ja | Teilweise | CRUD und RSVP, abgebildet auf die Server-Termine von GameVox. Keine GUILD_SCHEDULED_EVENT_*-Gateway-Ereignisse. Selbst gehostet: Wiederkehrende Termine werden gespeichert, spätere Vorkommen aber nicht erzeugt | |
| Stage-Kanäle, AutoMod | Nein | Nein | Intents werden akzeptiert, keine Ereignisse | |
| Premium-Apps / Entitlements | Nein | Nein | In v1 keine Monetarisierungsschicht | |
| Portal | Teams (Eigentum mehrerer Entwickler) | Ja | Discord-Parität. Siehe Teams | |
| App-Übertragung an ein Team | Ja | Nur in eine Richtung (wie bei Discord) | ||
| App-Tester (Allowlist für Installationen privater Apps) | Ja | 100 pro App. Siehe Teams → Tester | ||
| OAuth2-Installationslinks (Nutzer- + Serverkontext) | Ja | Keine / von GameVox bereitgestellte / eigene URL. Siehe OAuth2 | ||
| Rotation des Client-Secrets | Ja | Bcrypt-gehasht; wird beim Erstellen / Rotieren einmalig angezeigt | ||
| Bot-Verzeichniseintrag | Ja | Von der Administration freigegebene Einträge auf gamevox.com/bots | ||
Legende
- Ja: funktioniert wie bei Discord, keine Codeänderungen.
- Teilweise: wire-kompatibel, aber es fehlt ein Teil der Semantik. Aufrufbar, löst aber ggf. keine Ereignisse aus.
- Nein: wird auf Protokollebene akzeptiert (kein 4014), bewirkt aber nichts. Rechne damit, dass es fehlt.