Some checks failed
Auto Build and Push Docker Image / build (push) Failing after 15s
79 lines
2.6 KiB
Markdown
79 lines
2.6 KiB
Markdown
# Pixelpöbel Discord Bot
|
|
|
|
Ein moderner, modularer und erweiterbarer Discord-Bot, entwickelt mit TypeScript und `discord.js`.
|
|
|
|
## 🚀 Features
|
|
- **TypeScript-Basis:** Volle Typsicherheit für stabilen Code.
|
|
- **Modulare Architektur:** Automatisches Laden von Commands und Events.
|
|
- **Twitch-Integration:** Überwachung von Streamern mit Live-Benachrichtigungen (Thumbnail, Titel, Zuschauer).
|
|
- **Datenpersistenz:** SQLite-Datenbank für Einstellungen, Verwarnungen und Statistiken.
|
|
- **Admin-Tools:** Umfangreiche Moderations- und Twitch-Management-Befehle.
|
|
- **Owner-Konsole:** Exklusive Befehle zur Bot-Verwaltung, Server-Übersicht und DM-Tracking.
|
|
- **Docker-Ready:** Einfache Bereitstellung mit Docker & Docker Compose.
|
|
|
|
## 🛠 Installation
|
|
|
|
1. **Abhängigkeiten installieren:**
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
2. **Konfiguration:**
|
|
Erstelle eine `.env` Datei im Hauptverzeichnis (nutze `.env.example` als Vorlage):
|
|
```env
|
|
DISCORD_TOKEN=dein_bot_token
|
|
CLIENT_ID=deine_client_id
|
|
TWITCH_CLIENT_ID=deine_twitch_id
|
|
TWITCH_CLIENT_SECRET=dein_twitch_secret
|
|
```
|
|
|
|
3. **Commands registrieren:**
|
|
Bevor der Bot gestartet wird (oder wenn neue Befehle hinzugefügt wurden), müssen die Slash-Commands bei Discord registriert werden:
|
|
|
|
**Lokal:**
|
|
```bash
|
|
npm run deploy
|
|
```
|
|
|
|
**Über Docker (wenn der Container bereits gebaut wurde):**
|
|
```bash
|
|
docker-compose run --rm pixelpoebel-bot npm run deploy
|
|
```
|
|
|
|
## 🎮 Befehle (Auszug)
|
|
|
|
### Moderation & Utility
|
|
- `/help`: Zeigt alle verfügbaren Befehle (angepasst an Rechte).
|
|
- `/ping`: Testet die Latenz.
|
|
- `/kick`: Kickt einen Nutzer (Admin).
|
|
- `/warn`: Verwarnt einen Nutzer (Admin).
|
|
- `/trigger`: Verwaltet automatische Antworten (Admin).
|
|
- **Kontextmenü:** Rechtsklick auf Nachricht -> Apps -> "Als Trigger speichern" (Admin).
|
|
|
|
### Twitch
|
|
**Für alle Nutzer:**
|
|
- `/twitch online <channel>`: Prüft sofort, ob ein Streamer online ist.
|
|
- `/twitch list`: Zeigt überwachte Streamer für den aktuellen Kanal an.
|
|
|
|
**Nur für Administratoren:**
|
|
- `/twitch add`: Streamer für den aktuellen Kanal hinzufügen.
|
|
- `/twitch remove`: Streamer aus der Überwachung entfernen.
|
|
- `/twitch listall`: Alle überwachten Streamer des Servers anzeigen.
|
|
- `/twitch interval`: Prüf-Intervall einstellen (2-30 Min).
|
|
|
|
### Owner (Nur Bot-Besitzer)
|
|
- `/deploy`: Aktualisiert Befehle direkt aus Discord.
|
|
- `/stats`: Zeigt System- und Nutzungsstatistiken.
|
|
- `/servers`: Liste aller Server, auf denen der Bot ist.
|
|
- `/leave`: Bot einen Server verlassen lassen.
|
|
- `/dmusers`: Liste aller Nutzer, die den Bot privat angeschrieben haben.
|
|
|
|
## 🐳 Docker
|
|
|
|
```bash
|
|
docker-compose up -d --build
|
|
```
|
|
|
|
## 📄 Lizenz
|
|
MIT
|