Ajouts des fonctionnalitées

This commit is contained in:
skylanix
2025-11-12 02:09:21 +01:00
parent cb559c2863
commit d5d3e45a62

View File

@@ -56,16 +56,40 @@ Mamie Henriette est un bot intelligent open-source développé spécifiquement p
- Commande `!protondb nom_du_jeu` ou `!pdb nom_du_jeu` pour vérifier la compatibilité Linux/Steam Deck - Commande `!protondb nom_du_jeu` ou `!pdb nom_du_jeu` pour vérifier la compatibilité Linux/Steam Deck
- Recherche intelligente avec support des alias de jeux - Recherche intelligente avec support des alias de jeux
- Affichage du score de compatibilité, nombre de rapports et lien direct - Affichage du score de compatibilité, nombre de rapports et lien direct
- **Intégration anti-cheat** : Affiche automatiquement les systèmes anti-cheat et leur statut (supporté, cassé, refusé)
- Cache mis à jour automatiquement depuis AreWeAntiCheatYet
- **Modération** : Système complet de modération avec historique - **Modération** : Système complet de modération avec historique
- Avertissements : `!averto`, `!warn`, `!av`, `!avertissement` - **Avertissements** : `!averto`, `!warn`, `!av`, `!avertissement`
- Gestion des avertissements : `!delaverto`, `!removewarn`, `!delwarn` - Envoi automatique de DM à l'utilisateur averti
- Liste des événements : `!warnings`, `!listevent`, `!listwarn` - Support des timeouts combinés : `!warn @user raison --to durée`
- Inspection utilisateur : `!inspect` (historique complet, date d'arrivée, compte) - **Timeout** : `!timeout`, `!to` - Exclusion temporaire d'un utilisateur
- Bannissement : `!ban`, `!unban` (avec invitation automatique), `!banlist` - Syntaxe : `!to @user durée raison` (ex: `!to @User 10m Spam`)
- Expulsion : `!kick` - Durées supportées : secondes (s), minutes (m), heures (h), jours (j/days)
- Aide : `!aide`, `!help` - **Gestion des avertissements** : `!delaverto`, `!removewarn`, `!delwarn`
- Messages de bienvenue et départ personnalisables - **Liste des événements** : `!warnings`, `!listevent`, `!listwarn`
- Panneau d'administration web pour consulter l'historique - **Inspection utilisateur** : `!inspect @user`
- Historique complet des sanctions
- Date d'arrivée et durée sur le serveur
- Détection des comptes suspects (< 7 jours)
- Affichage du code d'invitation utilisé et de l'inviteur
- **Bannissement** : `!ban @user raison`, `!banlist`
- `!unban @user raison` ou `!unban #ID raison` (débannir par ID de sanction)
- Invitation automatique par DM lors du débannissement
- **Expulsion** : `!kick @user raison`
- **Annonces** : `!say #canal message` - Envoi de messages en tant que bot (staff uniquement)
- **Aide** : `!aide`, `!help` - Liste complète des commandes disponibles
- **Configuration avancée** :
- Support de multiples rôles staff
- Canal de logs dédié pour toutes les actions
- Suppression automatique des messages de modération (délai configurable)
- Activation/désactivation individuelle des fonctionnalités
- Panneau d'administration web pour consulter, éditer et supprimer l'historique
- **Messages de bienvenue et départ** :
- Messages personnalisables avec variables : `{member.mention}`, `{member.name}`, `{server.name}`, `{server.member_count}`
- **Système de tracking d'invitations** : Affiche qui a invité le nouveau membre
- **Messages de départ intelligents** : Détection automatique de la raison (volontaire, kick, ban)
- Affichage de la durée passée sur le serveur
- Embeds enrichis avec avatar et informations détaillées
### Twitch ### Twitch
- **Chat bot** : Commandes et interactions automatiques - **Chat bot** : Commandes et interactions automatiques
@@ -82,10 +106,23 @@ Mamie Henriette est un bot intelligent open-source développé spécifiquement p
### Interface d'administration ### Interface d'administration
- **Dashboard** : Vue d'ensemble et statistiques - **Dashboard** : Vue d'ensemble et statistiques
- **Configuration** : Tokens, paramètres des plateformes, configuration ProtonDB - **Configuration** :
- **Gestion des humeurs** : Création et modification des statuts - Tokens Discord/Twitch et paramètres des plateformes
- **Commandes** : Édition des commandes personnalisées - Configuration ProtonDB (API Algolia)
- **Modération** : Outils de gestion communautaire - Gestion des rôles staff (support de multiples rôles)
- Activation/désactivation individuelle des fonctionnalités (modération, ban, kick, welcome, leave)
- Configuration du délai de suppression automatique des messages de modération
- **Gestion des humeurs** : Création et modification des statuts Discord rotatifs
- **Commandes** : Édition des commandes personnalisées multi-plateformes
- **Modération** :
- Consultation de l'historique complet des sanctions
- Édition des raisons des événements de modération
- Suppression d'événements de modération
- Filtrage et recherche dans l'historique
- **Messages de bienvenue/départ** :
- Personnalisation des messages avec variables dynamiques
- Configuration des canaux de bienvenue et départ
- Activation/désactivation indépendante
## Installation ## Installation
@@ -134,7 +171,7 @@ cd MamieHenriette
``` ```
```bash ```bash
# 2. Récupérer l'image depuis Docker Hub et lancer # 2. Récupérer l'image depuis GitHub Container Registry et lancer
docker compose pull docker compose pull
docker compose up -d docker compose up -d
``` ```
@@ -163,12 +200,12 @@ cd MamieHenriette
```yaml ```yaml
services: services:
MamieHenriette: mamiehenriette:
container_name: MamieHenriette container_name: MamieHenriette
restart: unless-stopped restart: unless-stopped
build: . # ← Décommentez cette lignes build: . # ← Décommentez cette ligne
image: mamiehenriette # ← Décommentez cette lignes image: mamiehenriette # ← Décommentez cette ligne
# image: skylanix/mamiehenriette:latest # ← Commentez cette ligne # image: ghcr.io/skylanix/mamiehenriette:latest # ← Commentez cette ligne
# ... reste de la configuration # ... reste de la configuration
``` ```
@@ -234,9 +271,9 @@ services:
- Donnez un nom : `MamieHenriette` - Donnez un nom : `MamieHenriette`
- Collez la configuration ci-dessus dans l'éditeur - Collez la configuration ci-dessus dans l'éditeur
3. **Adapter les chemins** : 3. **Adapter les chemins des volumes** :
- Remplacez `/chemin/vers/instance` par le chemin absolu sur votre serveur (ex: `/opt/containers/MamieHenriette/instance`) - Modifiez `./instance` et `./logs` selon votre configuration
- Remplacez `/chemin/vers/logs` par le chemin absolu sur votre serveur (ex: `/opt/containers/MamieHenriette/logs`) - Exemple : `/opt/containers/MamieHenriette/instance` et `/opt/containers/MamieHenriette/logs`
4. **Déployer** : 4. **Déployer** :
- Cliquez sur "Deploy the stack" - Cliquez sur "Deploy the stack"
@@ -281,10 +318,12 @@ git pull origin main
# 3. Mettre à jour l'image Docker # 3. Mettre à jour l'image Docker
docker compose pull docker compose pull
# 4. Reconstruire et relancer # 4. Relancer
docker compose up --build -d docker compose up -d
``` ```
> 💡 **Note** : Si vous utilisez Watchtower, les mises à jour de l'image sont automatiques (vérification toutes les 30 minutes).
#### Sans Docker (installation locale) #### Sans Docker (installation locale)
```bash ```bash
# 1. Arrêter l'application # 1. Arrêter l'application
@@ -352,14 +391,16 @@ python run-web.py
## Spécifications techniques ## Spécifications techniques
### Base de données (SQLite) ### Base de données (SQLite)
- **Configuration** : Paramètres et tokens des plateformes - **Configuration** : Paramètres et tokens des plateformes, configuration des fonctionnalités
- **Humeur** : Statuts Discord rotatifs avec gestion automatique - **Humeur** : Statuts Discord rotatifs avec gestion automatique
- **Commande** : Commandes personnalisées multi-plateformes (Discord/Twitch) - **Commande** : Commandes personnalisées multi-plateformes (Discord/Twitch)
- **LiveAlert** : Configuration surveillance streamers Twitch (nom, canal Discord, statut) - **LiveAlert** : Configuration surveillance streamers Twitch (nom, canal Discord, statut)
- **GameAlias** : Alias pour améliorer les recherches ProtonDB - **GameAlias** : Alias pour améliorer les recherches ProtonDB
- **GameBundle** : Historique et notifications Humble Bundle - **GameBundle** : Historique et notifications Humble Bundle
- **Message** : Messages automatiques périodiques (implémenté) - **AntiCheatCache** : Cache des informations anti-cheat pour ProtonDB (mise à jour automatique hebdomadaire)
- **Moderation** : Historique complet des actions de modération (avertissements, bans, kicks, unbans) avec raison, staff et timestamp - **Message** : Messages automatiques périodiques
- **Moderation** : Historique complet des actions de modération (avertissements, timeouts, bans, kicks, unbans) avec raison, staff, timestamp et durée
- **MemberInvites** : Tracking des invitations (code d'invitation, inviteur, date de join)
### Architecture multi-thread ### Architecture multi-thread
- **Thread 1** : Interface web Flask (port 5000) avec logging rotatif - **Thread 1** : Interface web Flask (port 5000) avec logging rotatif