From 97f69b4cff0b5a978c9792f2d8929af85c94f0b6 Mon Sep 17 00:00:00 2001 From: Mathis Date: Tue, 31 Mar 2026 22:09:00 +0200 Subject: [PATCH] feat: add debug messages for ticket validation and update PENDING_TASKS.md --- commandes/PENDING_TASKS.md | 12 ++++++++---- commandes/ticket_whitelist.py | 6 ++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/commandes/PENDING_TASKS.md b/commandes/PENDING_TASKS.md index 7533628..0d14d57 100644 --- a/commandes/PENDING_TASKS.md +++ b/commandes/PENDING_TASKS.md @@ -9,7 +9,11 @@ La commande **"validé"** par message (on_message) n'est pas détectée ou ne r - Le design des MPs (Orange/Vert) est restauré conforme aux captures. - **Reste** : Vérifier pourquoi `on_message` ignore parfois le message "validé" (probablement un problème de sujet (topic) ou de permissions au moment de la lecture). -### Prochaine Étape -1. Lancer le bot. -2. Ouvrir/Réouvrir un ticket. -3. Taper "validé" et observer les messages d'erreur explicites (❌) que j'ai ajoutés. +### Prochaine Étape (À faire lors de la reprise) +1. **Ticket Ouvert/Réouvert** : Le bot est actuellement en ligne avec des messages de debug (❌). +2. **Test "validé"** : Taper "validé" dans un ticket (neuf ou réouvert). +3. **Analyser les retours** : + - `❌ Debug: message.channel.topic est vide ou None.` (Cache d.py obsolète ?) + - `❌ Debug: Topic trouvé mais pas d'ID matché.` (Format de topic invalide ?) + - `❌ Debug: Permission refusée.` (Rôle Staff ou Permissions Admin non reconnus ?) +4. **Action** : Une fois la cause identifiée, implémenter le "fetch_channel" ou une méthode alternative de récupération de l'owner. diff --git a/commandes/ticket_whitelist.py b/commandes/ticket_whitelist.py index e8f3a26..379d7e9 100644 --- a/commandes/ticket_whitelist.py +++ b/commandes/ticket_whitelist.py @@ -604,10 +604,14 @@ class Ticket(commands.Cog): # Détection du format du topic du ticket via regex (robuste) if not message.channel.topic: + if "validé" in message.content.lower(): + await message.channel.send("❌ Debug: `message.channel.topic` est vide ou None.") return match = re.search(r"(\d{17,20})", message.channel.topic) if not match: + if "validé" in message.content.lower(): + await message.channel.send(f"❌ Debug: Topic trouvé mais pas d'ID matché. Content: `{message.channel.topic}`") return # On ne traite que si le message contient "validé" @@ -623,6 +627,8 @@ class Ticket(commands.Cog): is_staff = any(r.id == int(staff_role_id) for r in message.author.roles) if not is_staff and not message.author.guild_permissions.administrator: + if "validé" in message.content.lower(): + await message.channel.send("❌ Debug: Permission refusée. Vous n'êtes ni Staff ni Admin.") return try: