(update) Mise à jour de Score-Manager.js pour mettre en forme le debug de console)
This commit is contained in:
@@ -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);
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user