ajout du control denvoi de message et interface up
This commit is contained in:
@@ -0,0 +1,139 @@
|
||||
# Toggle d'Envoi de Messages Chat
|
||||
|
||||
## 🎯 Fonctionnalité
|
||||
|
||||
Un nouveau bouton slide a été ajouté à l'interface web pour contrôler l'envoi de messages dans le chat Twitch. Cette fonctionnalité permet de désactiver temporairement tous les envois de messages du bot sans avoir à arrêter complètement le système.
|
||||
|
||||
## 🔧 Fonctionnement
|
||||
|
||||
### Interface Utilisateur
|
||||
|
||||
Le toggle se trouve dans la section "Actions Rapides" de l'interface web :
|
||||
|
||||
- **"Envoi Messages Chat"** : Un switch on/off pour activer/désactiver l'envoi de messages
|
||||
- **Statut** : Indique si l'envoi est "Activé" (vert) ou "Désactivé" (gris)
|
||||
|
||||
### Comportement
|
||||
|
||||
Quand l'envoi de messages est **désactivé** :
|
||||
|
||||
1. ✅ Les messages manuels via l'interface web sont bloqués
|
||||
2. ✅ Les messages automatiques sont bloqués
|
||||
3. ✅ Les messages d'auto-réponse sont bloqués
|
||||
4. ✅ Les messages de chat sont bloqués
|
||||
5. ✅ Le bot continue de fonctionner normalement (enregistrement, génération IA, etc.)
|
||||
6. ✅ Aucun message n'est envoyé sur Twitch
|
||||
|
||||
Quand l'envoi de messages est **activé** :
|
||||
|
||||
1. ✅ Tous les types de messages fonctionnent normalement
|
||||
2. ✅ Les messages sont envoyés sur Twitch comme avant
|
||||
|
||||
## 🛠️ Implémentation Technique
|
||||
|
||||
### Backend (Python)
|
||||
|
||||
#### Variables Globales
|
||||
```python
|
||||
# Dans web_interface.py
|
||||
chat_messages_enabled = True # Contrôle global de l'envoi de messages
|
||||
```
|
||||
|
||||
#### Nouvelles Routes API
|
||||
- `POST /api/chat/messages/enable` : Activer l'envoi de messages
|
||||
- `POST /api/chat/messages/disable` : Désactiver l'envoi de messages
|
||||
- `GET /api/chat/messages/status` : Obtenir le statut actuel
|
||||
|
||||
#### Vérifications Ajoutées
|
||||
- Dans `send_message()` : Vérification avant envoi manuel
|
||||
- Dans `send_chat_message()` : Vérification avant envoi de chat
|
||||
- Dans `auto_message_loop()` : Vérification avant envoi automatique
|
||||
- Dans `messageTwitch.send_message()` : Vérification au niveau de la classe
|
||||
|
||||
### Frontend (JavaScript)
|
||||
|
||||
#### Nouvelles Fonctions
|
||||
- `toggleChatMessage()` : Gère le changement d'état du toggle
|
||||
- `checkChatMessageStatus()` : Vérifie le statut au chargement
|
||||
|
||||
#### Interface HTML
|
||||
```html
|
||||
<!-- Chat Message Toggle -->
|
||||
<div class="mt-3">
|
||||
<div class="d-flex justify-content-between align-items-center">
|
||||
<span class="small text-muted">Envoi Messages Chat</span>
|
||||
<div class="form-check form-switch">
|
||||
<input class="form-check-input" type="checkbox" id="chatMessageToggle" onchange="toggleChatMessage()" checked>
|
||||
<label class="form-check-label small" for="chatMessageToggle"></label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mt-2">
|
||||
<small class="text-muted" id="chatMessageStatus">Activé</small>
|
||||
</div>
|
||||
</div>
|
||||
```
|
||||
|
||||
## 🧪 Tests
|
||||
|
||||
Un script de test est disponible : `test_chat_toggle.py`
|
||||
|
||||
```bash
|
||||
# Démarrer le serveur web
|
||||
python start_web_interface.py
|
||||
|
||||
# Dans un autre terminal, lancer les tests
|
||||
python test_chat_toggle.py
|
||||
```
|
||||
|
||||
## 📋 Utilisation
|
||||
|
||||
### Via l'Interface Web
|
||||
|
||||
1. Ouvrir l'interface web sur `http://localhost:5000`
|
||||
2. Aller dans la section "Actions Rapides" (sidebar gauche)
|
||||
3. Trouver le toggle "Envoi Messages Chat"
|
||||
4. Cliquer pour activer/désactiver
|
||||
|
||||
### Via l'API REST
|
||||
|
||||
```bash
|
||||
# Désactiver l'envoi de messages
|
||||
curl -X POST http://localhost:5000/api/chat/messages/disable
|
||||
|
||||
# Activer l'envoi de messages
|
||||
curl -X POST http://localhost:5000/api/chat/messages/enable
|
||||
|
||||
# Vérifier le statut
|
||||
curl http://localhost:5000/api/chat/messages/status
|
||||
```
|
||||
|
||||
## 🔒 Sécurité
|
||||
|
||||
- Le toggle est persistant pendant la session du serveur
|
||||
- Les tentatives d'envoi de messages sont bloquées avec un message d'erreur approprié
|
||||
- Aucun message n'est envoyé quand le toggle est désactivé
|
||||
- Le système continue de fonctionner normalement pour les autres fonctionnalités
|
||||
|
||||
## 🚀 Avantages
|
||||
|
||||
1. **Contrôle Granulaire** : Permet de désactiver uniquement l'envoi de messages
|
||||
2. **Sécurité** : Évite les envois accidentels de messages
|
||||
3. **Flexibilité** : Activation/désactivation en temps réel
|
||||
4. **Transparence** : Interface claire avec statut visuel
|
||||
5. **Non-intrusif** : N'affecte pas les autres fonctionnalités du bot
|
||||
|
||||
## 🐛 Dépannage
|
||||
|
||||
### Le toggle ne fonctionne pas
|
||||
- Vérifier que le serveur web est démarré
|
||||
- Recharger la page web
|
||||
- Vérifier les logs du serveur pour les erreurs
|
||||
|
||||
### Les messages sont toujours envoyés
|
||||
- Vérifier que le toggle est bien désactivé
|
||||
- Redémarrer le serveur web si nécessaire
|
||||
- Vérifier que les routes API répondent correctement
|
||||
|
||||
### Erreur 403 lors de l'envoi de messages
|
||||
- C'est normal quand l'envoi est désactivé
|
||||
- Réactiver le toggle pour pouvoir envoyer des messages
|
||||
Reference in New Issue
Block a user