Add new features for giveaways, tickets, self-roles, tags, starboard, suggestions, and birthdays
- Integrated new command modules for managing giveaways, tickets, self-roles, tags, starboard, suggestions, and birthdays, enhancing the bot's capabilities. - Implemented job handling for giveaway endings, ticket management, and birthday role expirations, improving automation and user experience. - Updated command definitions and interaction handling to support new features, ensuring smooth user interactions. - Enhanced the job processing system with dedicated workers for managing various tasks, including auto-closing tickets and running birthday checks. - Documented the new features and their setup processes in PHASE-TRACKING.md for clarity on implementation steps.
This commit is contained in:
@@ -173,48 +173,39 @@ Dieses Dokument hält den aktuellen Implementierungsstand fest. Es wird bei jede
|
||||
- `/rps`, `/choose`, `/trivia`, `/tictactoe`, `/connect4`, `/hangman`
|
||||
- `/meme`, `/cat`, `/dog` (abschaltbar via Redis `fun:config:{guildId}`)
|
||||
|
||||
### Manuelle Discord-Tests (Phase 3 – bestätigt)
|
||||
|
||||
- Manuell auf Test-Server bestätigt (User-Freigabe).
|
||||
|
||||
## Phase 4 – Giveaways, Tickets, Selfroles, Tags, Starboard, Suggestions, Birthdays, Temp-Voice (Status: implementiert, manuelle Tests ausstehend)
|
||||
|
||||
### Abgeschlossen
|
||||
|
||||
- Prisma-Migration `20260722160000_phase4_modules`
|
||||
- Shared `packages/shared/src/phase4.ts` + Tests
|
||||
- Alle Module in `commands.ts` / `index.ts` / `jobs.ts` verdrahtet
|
||||
- Intents: `GuildMessageReactions`; Partials: `Reaction`
|
||||
- Queues: `giveaways`, `tickets` (inkl. SelfRole-Expire + Auto-Close), `birthdays`
|
||||
|
||||
### Module
|
||||
|
||||
| Modul | Features |
|
||||
|--------|----------|
|
||||
| **Giveaways** | `/giveaway start\|end\|reroll\|list\|delete\|pause`, Join-Button, Auto-End |
|
||||
| **Tickets** | Panel/Kategorie, Close/Claim/…, HTML-Transkript, Rating, Auto-Close |
|
||||
| **Selfroles** | Panel create/edit/delete (Buttons/Dropdown/Reactions + Behaviors) |
|
||||
| **Tags** | create/edit/delete/list/info/run, Auto-Responder |
|
||||
| **Starboard** | `/starboard setup`, Reaction-Events |
|
||||
| **Suggestions** | `/suggest`, Staff-Status, Voting-Buttons |
|
||||
| **Birthdays** | set/remove/next/list/setup, stündlicher Check, 24h-Rolle |
|
||||
| **Temp-Voice** | setup + Steuerung + Join-to-Create + Control-Panel |
|
||||
|
||||
### Manuelle Discord-Tests (offen)
|
||||
|
||||
- Leveling: Nachrichten/Voice → XP, `/rank`, Level-Up, `/xp`
|
||||
- Economy: Daily/Work, Shop, Blackjack-Buttons, `/eco give`
|
||||
- Utility: Poll, Reminder, AFK, Snipe, Embed, Translate
|
||||
- Fun: `/flip` vs `/coinflip`, Spiele, Medien-APIs
|
||||
- Stack neu bauen: `docker compose up -d --build` (Migration anwenden)
|
||||
- Giveaway, Ticket-Flow, Selfroles, Tags, Starboard, Suggestions, Birthday, Temp-Voice
|
||||
- `docker compose up -d --build` (Migration + Guild-Command-Sync)
|
||||
|
||||
## Nächster geplanter Schritt
|
||||
|
||||
- Manuelle Phase-3-Tests, dann nach Freigabe Phase 4 (Giveaways, Tickets, Reaction Roles, Custom Commands, Geburtstage, Temp-Voice).
|
||||
|
||||
### Starboard (`apps/bot/src/modules/starboard/`)
|
||||
|
||||
- `/starboard setup` (Kanal, Schwellenwert, Emoji, Self-Star)
|
||||
- Reaktions-Events: Nachrichten mit genügend ⭐ (konfigurierbar) → Embed im Starboard-Kanal
|
||||
- NSFW-/Bot-/Ignore-Kanal-Ausschluss, Self-Star-Regel, Eintrag in `StarboardEntry`
|
||||
|
||||
### Suggestions (`apps/bot/src/modules/suggestions/`)
|
||||
|
||||
- `/suggest`, `/suggestion setup|approve|deny|consider|implement`
|
||||
- Upvote/Downvote-Buttons (`sug:vote:{id}:up|down`), optional Thread
|
||||
- Status-Update mit Kanal-Verschiebung (approved/denied) und DM an Autor
|
||||
|
||||
### Manuelle Discord-Tests Starboard/Suggestions (offen)
|
||||
|
||||
- `/starboard setup`, Reaktionen bis/unter Schwellenwert, Self-Star aus/an
|
||||
- `/suggestion setup`, `/suggest`, Voting, Staff-Status + DM
|
||||
|
||||
### Giveaways (`apps/bot/src/modules/giveaways/`)
|
||||
|
||||
- `/giveaway start|end|reroll|list|delete|pause`
|
||||
- Button `gw:join:{giveawayId}`, BullMQ-Job `giveawayEnd` (Export: `endGiveaway`)
|
||||
- Anforderungen: Rolle, Level, Mitgliedschaftsdauer; DM an Gewinner
|
||||
|
||||
### Tickets (`apps/bot/src/modules/tickets/`)
|
||||
|
||||
- `/ticket panel create`, `/ticket category create`, `/ticket close|claim|add|remove|rename|priority`
|
||||
- Panel-Buttons/Select, Modal, Kanal-/Thread-Modus, HTML-Transkript, Bewertung, Auto-Close-Export
|
||||
|
||||
### Manuelle Discord-Tests Giveaways/Tickets (offen)
|
||||
|
||||
- Giveaway: Start, Join, Ende/Reroll/Pause; Ticket: Panel, Öffnen, Close, Transkript, Rating
|
||||
- Wiring in `commands.ts`, `index.ts`, `jobs.ts` (Parent-Agent)
|
||||
- Manuelle Phase-4-Tests, dann nach Freigabe Phase 5 (Statistiken/Invite-Tracking, Social-Feeds, Scheduler, Backup).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user