Skip to content

Konfiguration

Umgebungsvariablen

Pflicht-Variablen

VariableBeschreibungBeispiel
DISCORD_TOKENDiscord Bot TokenMTIz...
DISCORD_GUILD_IDServer-ID123456789012345678
DATABASE_URLPostgreSQL Connection Stringpostgresql://user:pass@localhost:5432/db
ADMIN_USERNAMEDashboard Admin-Benutzernameadmin
ADMIN_PASSWORD_HASHbcrypt-Hash des Admin-Passworts$2b$10$...
JWT_SECRETJWT Signing Secret (min. 32 Zeichen)ein_sehr_langer_zufaelliger_string

Optionale Variablen

VariableBeschreibungDefault
DISCORD_CLIENT_IDFuer Discord OAuth-
DISCORD_CLIENT_SECRETFuer Discord OAuth-
DISCORD_REDIRECT_URIOAuth Redirect URLhttp://localhost:3000/auth/callback
DASHBOARD_URLFrontend-URL (CORS)http://localhost:3000
PORTAPI Server Port3001
BOT_API_URLAPI-URL (Server-seitig)http://localhost:3001
NEXT_PUBLIC_BOT_API_URLAPI-URL (Client-seitig)http://localhost:3001

Runtime-Settings

Alle zur Laufzeit aenderbaren Einstellungen werden in der settings-Tabelle der Datenbank als Key-Value-Paare gespeichert. Sie sind ueber das Admin-Dashboard oder die API konfigurierbar.

Discord-Konfiguration

Setting KeyBeschreibungBeispiel
discord.channelIdChannel fuer Schedule-Posts123456789012345678
discord.pingRoleIdRolle fuer Benachrichtigungen123456789012345678
discord.clientIdOAuth Client ID123456789012345678
discord.clientSecretOAuth Client Secretabc123...
discord.redirectUriOAuth Redirect URIhttp://localhost:3000/auth/callback
discord.authEnabledDiscord-Login aktivierttrue

Scheduling

Setting KeyBeschreibungDefault
scheduling.dailyPostTimeUhrzeit fuer taeglichen Post18:00
scheduling.timezoneBot-Zeitzone (IANA)Europe/Berlin
scheduling.reminderHoursBeforeStunden vor Post fuer Erinnerung3
scheduling.duplicateReminderEnabledZweite Erinnerung aktivtrue
scheduling.duplicateReminderHoursBeforeStunden vor Post fuer 2. Erinnerung1
scheduling.trainingPollEnabledTraining-Poll bei Schedule-Postfalse

Branding

Setting KeyBeschreibungDefault
branding.teamNameTeam-Name im DashboardTeam
branding.taglineUntertitel-
branding.logoUrlLogo-URL-

Stratbook

Setting KeyBeschreibungDefault
stratbook.editPermissionWer darf bearbeiten?admin

Werte: admin oder all

  • admin - Nur Admins koennen Strategien bearbeiten
  • all - Alle registrierten Spieler koennen bearbeiten

Settings aendern

Via Dashboard

  1. Admin-Dashboard oeffnen: /admin
  2. Tab Settings waehlen
  3. Werte anpassen und speichern
  4. Config wird automatisch neu geladen und Scheduler neu gestartet

Via API

bash
curl -X POST http://localhost:3001/api/settings \
  -H "Authorization: Bearer YOUR_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "scheduling.dailyPostTime": "19:00",
    "scheduling.timezone": "Europe/Berlin"
  }'

Via Config Reload

bash
curl -X POST http://localhost:3001/api/settings/reload-config \
  -H "Authorization: Bearer YOUR_JWT"

MIT License