đ Discord Emoji-Bewerbungssystem Bot
Ein Discord Bot, bei dem sich Member mit Emoji-Reaktionen auf einer Nachricht fĂźr Rollen bewerben kĂśnnen. Admins sehen die Bewerbungen in einem separaten Channel und kĂśnnen sie akzeptieren oder ablehnen.
Emoji-Reaktions-Bewerbung â User reagieren auf eine Panel-Nachricht mit einem Emoji
Admin-Review â Bewerbungen erscheinen in einem Admin-Channel mit Akzeptieren/Ablehnen-Buttons
Automatische Rollenvergabe â Bei Akzeptierung bekommt der User die Rolle automatisch
Vollständiges Logging â Alle Aktionen werden in einem Log-Channel protokolliert
Command Beschreibung /setup-createKanäle konfigurieren (Nachricht, Anfragen, Log, Setup) /setup-configAktuelle Konfiguration anzeigen /emoji-addEmoji â Rolle Zuordnung hinzufĂźgen /emoji-removeEmoji â Rolle Zuordnung entfernen /emoji-editEmoji â Rolle Zuordnung bearbeiten /apply-sendBewerbungs-Panel senden/aktualisieren
Command Beschreibung /owner-addBot-Owner hinzufßgen /owner-removeBot-Owner entfernen /owner-listAlle Bot-Owner anzeigen /key-addKey-User mit erweiterten Rechten hinzufßgen /key-removeKey-User entfernen /key-listAlle Key-User anzeigen /maintenanceWartungsmodus ein/aus (Bot fßr normale User deaktivieren) /restartBot-Neustart (DB-Migrationen neu ausfßhren) /support-createSupport-Server mit Kanälen & Panels erstellen /support-deleteSupport-Server Setup lÜschen
Rendering mermaid diagram...
main.ts â HTTP Endpoint (Discord Interactions)
commands/
router.ts â Command-Dispatcher
emoji.ts â /emoji-add, /emoji-remove, /emoji-edit
apply.ts â /apply-send
setup.ts â /setup-create, /setup-config
owner.ts â Owner-Only Commands
handlers/
buttons.ts â Akzeptieren/Ablehnen Button Handler
discord/
api.ts â Discord REST API Helpers
handler.ts â Interaction Router & Response Helpers
verify.ts â Ed25519 Signatur-Verifizierung
embeds.ts â Embed-Builder
permissions.ts â Owner/Key-User/Admin Checks
commands.ts â (Legacy) Slash Command Definitions
buttons.ts â (Legacy) Button Handler
database/
schema.ts â SQLite Migrations & Queries
cron/
poll-reactions.ts â Pollt Emoji-Reaktionen (Interval)
scripts/
register-commands.ts â Registriert Slash Commands bei Discord
âď¸ Environment Variables
Variable Beschreibung DISCORD_BOT_TOKENBot Token aus dem Developer Portal DISCORD_PUBLIC_KEYPublic Key fĂźr Signatur-Verifizierung DISCORD_APPLICATION_IDApplication ID des Bots BOT_OWNER_IDDiscord User ID des Hauptbesitzers
Bot im Discord Developer Portal erstellen
Environment Variables setzen
scripts/register-commands.ts einmal ausfĂźhren
Bot Interactions Endpoint URL auf die main.ts Endpoint-URL setzen
Bot zum Server einladen (Scopes: bot, applications.commands)
/setup-create auf dem Server ausfĂźhren
/emoji-add um Emoji-Rollen hinzuzufĂźgen
/apply-send um das Bewerbungs-Panel zu senden
Owner â Vollzugriff auf alle Commands (Ăźber BOT_OWNER_ID oder /owner-add)
Key-User â Erweiterte Rechte, ähnlich wie Admin (Ăźber /key-add)
Discord Admin â Server-Admins kĂśnnen Emoji-Commands nutzen
Member â KĂśnnen sich nur Ăźber Emoji-Reaktionen bewerben
Der Wartungsmodus deaktiviert den Bot fĂźr alle auĂer Owner.