# @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: ```powershell abdulive discord:setup --server --vorschau # zeigt nur, was passieren wuerde abdulive discord:setup --server # wendet es an ``` Und der laufende Teil, der die Knoepfe bedient: ```powershell 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](../../docs/projects/discord-community.md)