Beitrittsmeldungen liefen nach #allgemein, weil Discord ohne Angabe den ersten Kanal nimmt. Jetzt gehen sie nach #begruessung (SYSTEM_CHANNEL). Die von Abdu angelegten Textkanaele spielvorschlaege und reaction-einsendungen sind jetzt Foren im Bauplan: ein Beitrag je Spiel bzw. Clip, 👍 als Standard-Reaktion, Stand-Tags nur fuer Mods. apply.ts kann dafuer Tags und Standard-Reaktion anlegen und nachziehen; fremde Tags bleiben mit ihrer ID stehen. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@abdulive/discord
Discord-Anbindung: ein kleiner REST-Client und das Einrichten des Community-Servers.
| Datei | Inhalt |
|---|---|
src/permissions.ts |
Rechtebits als BigInt (das Feld ist 64 Bit breit) |
src/api.ts |
REST-Client: Warteschlange, Rate Limits, lesbare Fehler |
src/plan.ts |
Der Bauplan: Rollen, Kanaele, Rechte, Servereinstellungen |
src/apply.ts |
Traegt den Bauplan auf einen bestehenden Server auf |
src/gateway.ts |
WebSocket-Verbindung fuer Klicks auf Knoepfe |
src/selfroles.ts |
Der Knopf, der Live-Ping gibt und wieder nimmt |
src/bot.ts |
Beides zusammen; laeuft im Ingest-Daemon mit |
Einrichten geschieht einmalig ueber apply.ts, der Betrieb laeuft ueber
bot.ts. Beide lesen denselben Bauplan.
Aufruf ueber die CLI:
abdulive discord:setup --server <ID> --vorschau # zeigt nur, was passieren wuerde
abdulive discord:setup --server <ID> # wendet es an
Und der laufende Teil, der die Knoepfe bedient:
abdulive discord:bot # zum Ausprobieren; sonst im Ingest-Daemon
Wiederholbar: gefunden wird ueber den Namen, danach wird angeglichen statt neu angelegt. Geloescht wird nie.
Begruendung der Struktur, die Schritte, die von Hand gehoeren, und die Fallstricke: docs/projects/discord-community.md