feat: Implémentation RCON, gestion historique et corrections Docker
- Fix protocole RCON (Int32LE, Map-based response handling) - Ajout historique des commandes RCON avec persistance - Correction chemins Docker (SERVER_DIR, RCON_HOST, volumes) - Fix récupération données joueurs (world/players) - Amélioration UX login/register - Nettoyage logs de debug
This commit is contained in:
107
CHANGELOG.md
Normal file
107
CHANGELOG.md
Normal file
@@ -0,0 +1,107 @@
|
||||
# Changelog - Panel Admin NationsGlory
|
||||
|
||||
## 4 Février 2026 - Améliorations Majeures
|
||||
|
||||
### 🔐 Authentification
|
||||
- ✅ **Page de connexion améliorée** : Ajout de 2 boutons distincts
|
||||
- Bouton "Se connecter" sur le formulaire de connexion
|
||||
- Bouton "Créer un compte" pour basculer vers l'inscription
|
||||
- Bouton "Retour à la connexion" sur le formulaire d'inscription
|
||||
- ✅ **Correction de la détection d'admin** : L'endpoint `/auth/check` retourne maintenant `hasAdmin: true/false` correctement
|
||||
|
||||
### 👥 Joueurs
|
||||
- ✅ **Affichage des joueurs connectés en temps réel** via RCON
|
||||
- Nouvel endpoint : `GET /api/players/online`
|
||||
- Affiche le nombre de joueurs en ligne : `X / Y joueurs`
|
||||
- Liste les noms des joueurs actuellement connectés
|
||||
- Bouton d'actualisation pour rafraîchir les données
|
||||
- ✅ **Séparation claire** entre joueurs connectés et historique des joueurs
|
||||
|
||||
### ⚙️ Paramètres du Serveur
|
||||
- ✅ **Interface de modification des paramètres** server.properties
|
||||
- Formulaire pour modifier les paramètres principaux :
|
||||
- MOTD (Message du jour)
|
||||
- Nombre maximum de joueurs
|
||||
- Mode de jeu (Survie/Créatif/Aventure)
|
||||
- Difficulté (Paisible/Facile/Normal/Difficile)
|
||||
- PvP (Activé/Désactivé)
|
||||
- Distance de vue
|
||||
- Whitelist
|
||||
- Vol autorisé
|
||||
- Spawn des monstres/animaux
|
||||
- Bouton "Sauvegarder les paramètres"
|
||||
- Avertissement pour redémarrer le serveur après modification
|
||||
- Vue en lecture seule de tous les paramètres
|
||||
|
||||
### 🎮 Contrôle du Serveur
|
||||
- ✅ **Bouton Arrêter** : Nouvel endpoint `POST /api/server/stop`
|
||||
- Confirmation avant arrêt
|
||||
- Envoie la commande `stop` via RCON
|
||||
- ✅ **Bouton Redémarrer** : Endpoint corrigé `POST /api/server/restart`
|
||||
- Sauvegarde automatique avant redémarrage
|
||||
- Avertissement aux joueurs (10 secondes)
|
||||
- Arrêt du serveur après le délai
|
||||
- ✅ **Statut du serveur** : Endpoint `GET /api/server/status`
|
||||
- Vérifie si le serveur RCON est accessible
|
||||
|
||||
### 💾 Backups
|
||||
- ✅ **Sauvegarde automatique du monde** avant création de backup
|
||||
- Utilise `save-all` via RCON avant archivage
|
||||
- Exclusion du dossier backups dans l'archive
|
||||
- Correction de l'exclusion des fichiers temporaires
|
||||
|
||||
### 📋 Logs
|
||||
- ✅ **Endpoint existant maintenu** : `GET /api/logs`
|
||||
- Recherche de `latest.log` ou `ForgeModLoader-server-0.log`
|
||||
- Affichage des dernières lignes (paramètre `?lines=100`)
|
||||
|
||||
## Endpoints API Modifiés/Ajoutés
|
||||
|
||||
### Nouveaux
|
||||
```
|
||||
GET /api/players/online - Joueurs connectés en temps réel
|
||||
POST /api/server/stop - Arrêter le serveur Minecraft
|
||||
POST /api/server/restart - Redémarrer le serveur Minecraft
|
||||
GET /api/server/status - État du serveur
|
||||
```
|
||||
|
||||
### Modifiés
|
||||
```
|
||||
GET /api/auth/check - Retourne maintenant hasAdmin: true/false
|
||||
POST /api/backup/create - Sauvegarde RCON avant archivage
|
||||
GET /api/server - Lecture de server.properties
|
||||
POST /api/server/update - Modification de server.properties
|
||||
```
|
||||
|
||||
## Fichiers Modifiés
|
||||
|
||||
### Backend
|
||||
- `backend/src/routes/auth.js` - Correction du chemin vers users.json et ajout hasAdmin
|
||||
- `backend/src/routes/players.js` - Ajout endpoint /online via RCON
|
||||
- `backend/src/routes/server.js` - Ajout endpoints stop/restart/status
|
||||
- `backend/src/routes/backup.js` - Sauvegarde RCON avant backup
|
||||
|
||||
### Frontend
|
||||
- `frontend/public/js/app.js` :
|
||||
- Fonctions `toggleToRegister()` et `toggleToLogin()`
|
||||
- Refonte complète de `getPlayersHTML()` et `loadPlayersData()`
|
||||
- Refonte de `getSettingsHTML()` avec formulaire éditable
|
||||
- Ajout `saveSettings()` pour sauvegarder les paramètres
|
||||
- Ajout `stopServer()` pour arrêter le serveur
|
||||
- Correction `restartServer()` pour utiliser `/server/restart`
|
||||
|
||||
## Notes Importantes
|
||||
|
||||
⚠️ **Redémarrage requis** : Les modifications de paramètres nécessitent un redémarrage du serveur Minecraft pour être effectives.
|
||||
|
||||
✅ **RCON fonctionnel** : Tous les tests passent, communication RCON opérationnelle.
|
||||
|
||||
🔒 **Authentification** : Un seul admin peut être créé. Le système détecte automatiquement si un admin existe.
|
||||
|
||||
## Prochaines Étapes Suggérées
|
||||
|
||||
1. Ajouter un système de logs en temps réel (WebSocket)
|
||||
2. Implémenter la restauration de backups
|
||||
3. Ajouter des graphiques de performance (CPU, RAM)
|
||||
4. Créer un système de plugins/mods manager
|
||||
5. Ajouter la gestion des permissions avancées
|
||||
Reference in New Issue
Block a user