From bab961ace744569c9439461058c7653117f9b63b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20CHOMAZ?= Date: Tue, 3 Feb 2026 21:05:55 +0100 Subject: [PATCH] =?UTF-8?q?(update)=20Mise=20=C3=A0=20jour=20de=20Score-Ma?= =?UTF-8?q?nager.js=20pour=20mettre=20en=20forme=20le=20debug=20de=20conso?= =?UTF-8?q?le)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VNode/services/game/score-manager.js | 59 ++++++++++++++-------------- 1 file changed, 29 insertions(+), 30 deletions(-) diff --git a/VNode/services/game/score-manager.js b/VNode/services/game/score-manager.js index 52f1b512..3181dc91 100644 --- a/VNode/services/game/score-manager.js +++ b/VNode/services/game/score-manager.js @@ -33,14 +33,14 @@ fs.access(filePath, fs.constants.F_OK, (err) => { // Le fichier existe, on le lit et on le parse en JSON fs.readFile(filePath, 'utf8', (err, data) => { if (err) { - console.error("Erreur de lecture du fichier :", err); + console.error("[ERREUR] Erreur de lecture du fichier :", err); return; } try { global.jsonData = JSON.parse(data); - console.log("Propriétés importées depuis le fichier JSON :"); + console.log("[INFO] Propriétés importées depuis le fichier JSON :"); } catch (parseErr) { - console.error("Erreur de parsing JSON :", parseErr); + console.error("[ERREUR] Erreur de parsing JSON :", parseErr); } }); } else { @@ -82,10 +82,10 @@ fs.access(filePath, fs.constants.F_OK, (err) => { fs.writeFile(newFilePath, JSON.stringify(initialContent, null, 2), (err) => { if (err) { - console.error("Erreur de création du fichier :", err); + console.error("[ERREUR] Erreur de création du fichier :", err); return; } - console.log(`Fichier JSON créé avec succès : ${newFilePath}`); + console.log(`[INFO] Fichier JSON créé avec succès : ${newFilePath}`); // Mettre à jour ScoreFile et filePath // Charger les données initiales si nécessaire @@ -99,14 +99,14 @@ fs.access(filePath, fs.constants.F_OK, (err) => { function updateTeamTotalScore(teamColor, points) { fs.readFile(filePath, 'utf8', (err, data) => { if (err) { - console.error("Erreur de lecture du fichier :", err); + console.error("[ERREUR] Erreur de lecture du fichier :", err); return; } try { const jsonData = JSON.parse(data); // Vérifier si l'équipe existe if (!jsonData.TEAM.hasOwnProperty(teamColor)) { - console.error(`L'équipe ${teamColor} n'existe pas.`); + console.error(`[ERREUR] L'équipe ${teamColor} n'existe pas.`); return; } @@ -118,18 +118,18 @@ function updateTeamTotalScore(teamColor, points) { // Update global state global.jsonData = jsonData; - console.log(`Le score total pour l'équipe ${teamColor} est de ${jsonData.TEAM[teamColor].TotalScore} points !`) + console.log(`[INFO] Le score total pour l'équipe ${teamColor} est de ${jsonData.TEAM[teamColor].TotalScore} points !`) // Enregistrer les modifications dans le fichier client.publish(mqttScoreTopic, JSON.stringify(jsonData)); fs.writeFile(filePath, JSON.stringify(jsonData, null, 2), (err) => { if (err) { - console.error("Erreur lors de l'écriture du fichier :", err); + console.error("[ERREUR] Erreur lors de l'écriture du fichier :", err); } else { - console.log(`Le score total de l'équipe ${teamColor} a été mis à jour avec succès dans le fichier json !`); + console.log(`[INFO] Le score total de l'équipe ${teamColor} a été mis à jour avec succès dans le fichier json !`); } }); } catch (parseErr) { - console.error("Erreur de parsing JSON :", parseErr); + console.error("[ERREUR] Erreur de parsing JSON :", parseErr); } }); } @@ -141,24 +141,26 @@ const config = JSON.parse(fs.readFileSync(configPath, 'utf8')); // Extraction des informations de config const { mqttHost, services: { score: { MQTTconfig: { mqttScoreTopic, mqttScoreChangeTopic, mqttScoreRequestTopic } } } } = config; -console.log("DEBUG: Config loaded from:", configPath); -console.log("DEBUG: MQTT Host:", mqttHost); -console.log("DEBUG: Topics:", mqttScoreTopic, mqttScoreChangeTopic, mqttScoreRequestTopic); +console.log("------------------------------------------------------------------------------"); +console.log("[CONFIG] Configuration chargée depuis :", configPath); +console.log("[CONFIG] Hôte MQTT :", mqttHost); +console.log("[CONFIG] Topics chargés :", mqttScoreTopic, mqttScoreChangeTopic, mqttScoreRequestTopic); +console.log("------------------------------------------------------------------------------"); // Connexion au broker MQTT const client = mqtt.connect(mqttHost); client.on('connect', () => { - console.log(`Connecté au broker MQTT à ${mqttHost}`); + console.log(`[INFO] Connecté au broker MQTT à ${mqttHost}`); client.subscribe(mqttScoreChangeTopic, (err) => { - if (err) console.error('[ERROR] impossible de souscrire au topic de gestion du score total'); - else console.log(`[INFO] Souscription réalisée avec succès au topic ${mqttScoreChangeTopic}]`); + if (err) console.error('[ERREUR] impossible de souscrire au topic de gestion du score total'); + else console.log(`[INFO] Souscription réalisée avec succès au topic ${mqttScoreChangeTopic}`); }); client.subscribe(mqttScoreRequestTopic, (err) => { - if (err) console.error('[ERROR] impossible de souscrire au topic de demande de score'); - else console.log(`[INFO] Souscription réalisée avec succès au topic ${mqttScoreRequestTopic}]`); + if (err) console.error('[ERREUR] impossible de souscrire au topic de demande de score'); + else console.log(`[INFO] Souscription réalisée avec succès au topic ${mqttScoreRequestTopic}`); }); }); @@ -172,7 +174,7 @@ client.on('message', (topic, message) => { client.publish(mqttScoreTopic, JSON.stringify(global.jsonData)); console.log(`[INFO] Scores envoyés sur ${mqttScoreTopic}`); } else { - console.warn("[WARN] Aucune donnée de score disponible pour le rafraîchissement."); + console.warn("[INFO] Aucune donnée de score disponible pour le rafraîchissement"); } return; // Fin du traitement pour ce message } @@ -188,7 +190,7 @@ client.on('message', (topic, message) => { // Analyse du message reçu payload = JSON.parse(message.toString()); } catch (e) { - console.error(`[ERROR] Invalid JSON message received on topic ${topic}: ${message.toString()}`); + console.error(`[ERREUR] Invalid JSON message received on topic ${topic}: ${message.toString()}`); return; } // Vérifie que le payload est bien un objet @@ -223,7 +225,7 @@ client.on('message', (topic, message) => { if (!isNaN(change)) { updateTeamTotalScore(Team, change); } else { - console.error(`Action invalide : ${Action}`); + console.error(`[ERREUR] Action invalide : ${Action}`); } } } @@ -234,7 +236,7 @@ client.on('message', (topic, message) => { function updateTeamScoreAbsolute(teamColor, totalScore, roundScore) { fs.readFile(filePath, 'utf8', (err, data) => { if (err) { - console.error("Erreur de lecture du fichier :", err); + console.error("[ERREUR] Erreur de lecture du fichier :", err); return; } try { @@ -258,24 +260,21 @@ function updateTeamScoreAbsolute(teamColor, totalScore, roundScore) { client.publish(mqttScoreTopic, JSON.stringify(jsonData)); fs.writeFile(filePath, JSON.stringify(jsonData, null, 2), (err) => { - if (err) console.error("Erreur d'écriture :", err); + if (err) console.error("[ERREUR] Erreur d'écriture :", err); }); } catch (parseErr) { - console.error("Erreur JSON :", parseErr); + console.error("[ERREUR] Erreur JSON :", parseErr); } }); } (async () => { while (true) { - console.log("Boucle en arrière-plan"); - await new Promise((resolve) => setTimeout(resolve, 2000)); // Pause de 2 secondes //client.publish(mqttScoreTopic, JSON.stringify(global.jsonData)); } })(); client.on('error', (error) => { - console.error('Erreur de connexion au broker MQTT:', error.message); -}); - + console.error("[ERREUR] Erreur de connexion au broker MQTT:", error.message); +}); \ No newline at end of file