Files
MamieHenriette/README.md
skylanix 86e8e46959 Migration vers pré-prod : refonte Docker et documentation
- Dockerfile modernisé avec venv Python et locales françaises
  - Configuration docker-compose simplifiée
  - README complètement réécrit pour l'architecture multi-plateformes
  - Suppression bot.py et statuts.txt (remplacés par modules webapp/discordbot)
  - Migration vers interface d'administration web
2025-08-12 01:33:04 +02:00

4.7 KiB
Executable File

MamieHenriette 👵

Bot multi-plateformes pour Discord, Twitch et YouTube Live

Vue d'ensemble

Mamie Henriette est un bot intelligent open-source développé spécifiquement pour les communautés de STEvE sur YouTube, Twitch et Discord.

⚠️ Statut : En cours de développement

Caractéristiques principales

  • Interface web d'administration complète
  • Gestion multi-plateformes (Discord, Twitch, YouTube Live)
  • Système de notifications automatiques
  • Base de données intégrée pour la persistance
  • Surveillance optionnelle avec Zabbix (non testée)

Fonctionnalités

Discord

  • Statuts dynamiques : Rotation automatique des humeurs (10 min)
  • Notifications Humble Bundle : Surveillance et alertes automatiques (30 min)
  • Commandes personnalisées : Gestion via interface web
  • Modération : Outils intégrés

Twitch (en développement)

  • Chat bot : Commandes et interactions
  • Événements live : Notifications de stream

YouTube Live (en développement)

  • Chat bot : Modération et commandes
  • Événements : Notifications de diffusion

Interface d'administration

  • Dashboard : Vue d'ensemble et statistiques
  • Configuration : Tokens, paramètres des plateformes
  • Gestion des humeurs : Création et modification des statuts
  • Commandes : Édition des commandes personnalisées
  • Modération : Outils de gestion communautaire

Surveillance

  • Zabbix Agent 2 : Monitoring avancé (non testé)
  • Métriques : Santé du bot et uptime

Installation

Prérequis

  • Docker et Docker Compose
  • Token Discord pour le bot

Démarrage rapide

# 1. Cloner le projet
git clone https://github.com/skylanix/MamieHenrietteCredential
cd MamieHenriette
# 2. Lancer avec Docker
docker compose up --build -d

Configuration

  1. Interface web : Accédez à http://localhost
  2. Token Discord : Section "Configurations"
  3. Humeurs : Définir les statuts du bot
  4. Canaux : Configurer les notifications

⚠️ Important : Après avoir configuré le token Discord, les humeurs et autres fonctionnalités via l'interface web, redémarrez le conteneur pour que les changements soient pris en compte :

docker compose restart mamiehenriette

Commandes Docker utiles

# Logs en temps réel
docker compose logs -f mamiehenriette
# Logs d'un conteneur en cours d'exécution
docker logs -f mamiehenriette
# Redémarrer
docker compose restart mamiehenriette
# Arrêter
docker compose down

Configuration avancée

Variables d'environnement

environment:
  - ENABLE_ZABBIX=false     # Surveillance (non testée)
  - ZABBIX_SERVER=localhost
  - ZABBIX_HOSTNAME=MamieHenriette

Interface d'administration

Section Fonction
Configurations Tokens et paramètres généraux
Humeurs Gestion des statuts Discord
Commandes Commandes personnalisées
Modération Outils de gestion

Architecture du projet

Structure des modules

├── database/          # Couche données
│   ├── models.py      # Modèles ORM
│   ├── helpers.py     # Utilitaires BDD
│   └── schema.sql     # Structure initiale
│
├── discordbot/        # Module Discord
│   └── __init__.py    # Bot et handlers
│
└── webapp/            # Interface d'administration
    ├── static/        # Assets statiques
    ├── templates/     # Vues HTML
    └── *.py          # Contrôleurs par section

Composants principaux

Fichier Rôle
run-web.py Point d'entrée principal
start.sh Script de démarrage Docker
docker-compose.yml Configuration des services
requirements.txt Dépendances Python

Spécifications techniques

Base de données (SQLite)

  • Configuration : Paramètres et tokens
  • Humeur : Statuts Discord rotatifs
  • Message : Messages périodiques (planifié)
  • GameBundle : Historique Humble Bundle

Architecture multi-thread

  • Thread 1 : Interface web Flask (port 5000)
  • Thread 2 : Bot Discord et tâches automatisées

Dépendances principales

discord.py     # API Discord
flask          # Interface web
requests       # Client HTTP
waitress       # Serveur WSGI

Développement

Installation locale

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python run-web.py

Contribution

  1. Fork du projet
  2. Branche feature
  3. Pull Request

Mamie Henriette vous surveille ! 👵👀