118 lines
4.3 KiB
Python
118 lines
4.3 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Script de test pour l'envoi automatique de messages
|
|
"""
|
|
|
|
import os
|
|
import json
|
|
import time
|
|
from datetime import datetime
|
|
|
|
def test_auto_message_system():
|
|
"""Test du système d'envoi automatique de messages"""
|
|
print("🧪 Test du système d'envoi automatique de messages")
|
|
print("=" * 60)
|
|
|
|
# 1. Vérifier les fichiers de configuration
|
|
user_config = "config/user.json"
|
|
if not os.path.exists(user_config):
|
|
print(f"❌ Fichier de configuration utilisateur non trouvé: {user_config}")
|
|
return False
|
|
|
|
print("✅ Fichier de configuration utilisateur trouvé")
|
|
|
|
# 2. Vérifier les générations disponibles
|
|
storage_dir = "storage"
|
|
generation_file = os.path.join(storage_dir, "IA_generator.json")
|
|
|
|
if os.path.exists(generation_file):
|
|
try:
|
|
with open(generation_file, 'r', encoding='utf-8') as f:
|
|
generation_data = json.load(f)
|
|
print(f"✅ {len(generation_data)} génération(s) disponible(s)")
|
|
|
|
if generation_data:
|
|
sorted_keys = sorted(generation_data.keys())
|
|
last_generation = generation_data[sorted_keys[-1]]
|
|
print(f"📝 Dernière génération: {last_generation}")
|
|
except Exception as e:
|
|
print(f"⚠️ Erreur lecture générations: {e}")
|
|
else:
|
|
print("📝 Aucune génération disponible")
|
|
|
|
# 3. Simuler l'envoi automatique
|
|
print("\n🔄 Simulation de l'envoi automatique:")
|
|
print(" 1. Surveillance des nouvelles générations")
|
|
print(" 2. Envoi automatique avec le premier utilisateur")
|
|
print(" 3. Suppression de la génération après envoi")
|
|
print(" 4. Attente de 10 secondes entre chaque envoi")
|
|
|
|
return True
|
|
|
|
def demo_auto_message_interface():
|
|
"""Démonstration de l'interface d'envoi automatique"""
|
|
print("\n🌐 Démonstration de l'interface:")
|
|
print(" 1. Ouvrir http://localhost:5000")
|
|
print(" 2. Dans le tableau de bord (sidebar gauche)")
|
|
print(" 3. Trouver le switch 'Envoi Auto Messages'")
|
|
print(" 4. Activer le switch pour démarrer l'envoi automatique")
|
|
print(" 5. Les messages seront envoyés automatiquement quand des générations sont disponibles")
|
|
|
|
print("\n📋 Fonctionnalités ajoutées:")
|
|
print(" ✅ Bouton slide pour l'envoi automatique de messages")
|
|
print(" ✅ Surveillance des générations IA")
|
|
print(" ✅ Envoi automatique avec le premier utilisateur")
|
|
print(" ✅ Suppression automatique des générations envoyées")
|
|
print(" ✅ Délai de 10 secondes entre chaque envoi")
|
|
print(" ✅ Retour en temps réel via Socket.IO")
|
|
print(" ✅ Gestion des erreurs d'envoi")
|
|
|
|
def test_message_bot():
|
|
"""Test du bot de messages"""
|
|
print("\n🤖 Test du bot de messages:")
|
|
|
|
try:
|
|
from fonction.first_class import messageTwitch
|
|
|
|
# Créer une instance du bot de messages
|
|
message_bot = messageTwitch("config/user.json", "default")
|
|
print("✅ Bot de messages créé avec succès")
|
|
|
|
# Vérifier les utilisateurs disponibles
|
|
with open("config/user.json", 'r') as f:
|
|
users = json.load(f)
|
|
|
|
print(f"✅ {len(users)} utilisateur(s) configuré(s)")
|
|
for i, user in enumerate(users):
|
|
print(f" {i}: {user['tw_acc_pseudo']} {user['charactere']}")
|
|
|
|
return True
|
|
|
|
except Exception as e:
|
|
print(f"❌ Erreur lors du test du bot: {e}")
|
|
return False
|
|
|
|
if __name__ == '__main__':
|
|
print("🚀 Test du système d'envoi automatique de messages")
|
|
print("=" * 60)
|
|
|
|
# Test du système de base
|
|
system_ok = test_auto_message_system()
|
|
|
|
# Test du bot de messages
|
|
bot_ok = test_message_bot()
|
|
|
|
# Démonstration de l'interface
|
|
demo_auto_message_interface()
|
|
|
|
print("\n" + "=" * 60)
|
|
if system_ok and bot_ok:
|
|
print("✅ Test réussi !")
|
|
print("🎉 Le système d'envoi automatique de messages est prêt")
|
|
print("💡 Utilisez le switch dans l'interface web pour l'activer")
|
|
else:
|
|
print("❌ Problèmes détectés")
|
|
if not system_ok:
|
|
print(" - Problème avec le système de base")
|
|
if not bot_ok:
|
|
print(" - Problème avec le bot de messages") |