Fixed !oups feature. Improved stats display.

This commit is contained in:
Christian P. MOMON 2021-04-15 00:13:33 +02:00
parent 58d8bcc3a8
commit de0d8a4d5e
8 changed files with 18 additions and 14 deletions

View file

@ -66,7 +66,7 @@ public class CancelPreviousInputHook extends Hook
} }
else else
{ {
bot.sendMessage(sender + ", suppressiond de votre précédente entrée : " + previousMessage); bot.sendMessage(sender + ", suppression de votre précédente entrée : " + previousMessage);
} }
} }
} }

View file

@ -1,5 +1,5 @@
/** /**
* Copyright (C) 2018-2019 Christian Pierre MOMON <cmomon@april.org> * Copyright (C) 2018-2021 Christian Pierre MOMON <cmomon@april.org>
* *
* This file is part of (April) Hebdobot. * This file is part of (April) Hebdobot.
* *
@ -159,6 +159,7 @@ public class FinishReviewHook extends Hook
} }
// Send conclusion message in channel. // Send conclusion message in channel.
bot.checkReviewAnniversary();
bot.sendMessage("% " + ReviewStatsReporter.reportCurrentReviewCount(datas)); bot.sendMessage("% " + ReviewStatsReporter.reportCurrentReviewCount(datas));
bot.sendMessage("% Compte-rendu de la revue : " + pastebinUrl); bot.sendMessage("% Compte-rendu de la revue : " + pastebinUrl);
bot.sendMessage("% Durée de la revue : " + bot.getReview().getDurationInMinutes() + " minutes"); bot.sendMessage("% Durée de la revue : " + bot.getReview().getDurationInMinutes() + " minutes");

View file

@ -1,5 +1,5 @@
/** /**
* Copyright (C) 2018 Christian Pierre MOMON <cmomon@april.org> * Copyright (C) 2018-2021 Christian Pierre MOMON <cmomon@april.org>
* *
* This file is part of (April) Hebdobot. * This file is part of (April) Hebdobot.
* *
@ -45,7 +45,7 @@ public class HelpHook extends Hook
// Help. // Help.
bot.sendMessage(sender, "Bienvenue " + sender); bot.sendMessage(sender, "Bienvenue " + sender);
bot.sendMessage(sender, "Je suis " + bot.getName() + ", le robot de gestion des revues hebdomadaires de l'APRIL."); bot.sendMessage(sender, "Je suis " + bot.getName() + ", le robot de gestion des revues hebdomadaires de l'April.");
bot.sendMessage(sender, "Voici les commandes que je comprends :"); bot.sendMessage(sender, "Voici les commandes que je comprends :");
bot.sendMessage(sender, " "); bot.sendMessage(sender, " ");
bot.sendMessage(sender, " !aide,!help : afficher cette aide"); bot.sendMessage(sender, " !aide,!help : afficher cette aide");

View file

@ -1,5 +1,5 @@
/** /**
* Copyright (C) 2018 Christian Pierre MOMON <cmomon@april.org> * Copyright (C) 2018-2021 Christian Pierre MOMON <cmomon@april.org>
* *
* This file is part of (April) Hebdobot. * This file is part of (April) Hebdobot.
* *
@ -74,6 +74,7 @@ public class StartReviewHook extends Hook
bot.setReview(new Review(sender, bot.getAliases())); bot.setReview(new Review(sender, bot.getAliases()));
bot.sendMessage(sender, "Bonjour " + sender + ", vous êtes le conducteur de réunion."); bot.sendMessage(sender, "Bonjour " + sender + ", vous êtes le conducteur de réunion.");
bot.sendMessage(sender, "Pour terminer la réunion, tapez \"!fin\""); bot.sendMessage(sender, "Pour terminer la réunion, tapez \"!fin\"");
bot.checkReviewAnniversary();
bot.sendMessage("% Début de la réunion hebdomadaire"); bot.sendMessage("% Début de la réunion hebdomadaire");
bot.sendMessage( bot.sendMessage(
"% rappel : toute ligne commençant par % sera considérée comme un commentaire et non prise en compte dans la synthèse"); "% rappel : toute ligne commençant par % sera considérée comme un commentaire et non prise en compte dans la synthèse");

View file

@ -60,13 +60,15 @@ public class CollectiveTopic extends Topic
{ {
String result; String result;
Message previousMessage = this.messages.getByAuthor(author).getLast(); Messages authorMessages = this.messages.getByAuthor(author);
if (previousMessage == null)
if (authorMessages.isEmpty())
{ {
result = null; result = null;
} }
else else
{ {
Message previousMessage = authorMessages.getLast();
this.messages.remove(previousMessage); this.messages.remove(previousMessage);
result = previousMessage.getContent(); result = previousMessage.getContent();
} }

View file

@ -64,7 +64,7 @@ public class IndividualTopic extends Topic
String result; String result;
Messages authorMessages = this.messages.get(participant); Messages authorMessages = this.messages.get(participant);
if (authorMessages == null) if ((authorMessages == null) || (authorMessages.isEmpty()))
{ {
result = null; result = null;
} }

View file

@ -128,7 +128,7 @@ public class ReviewDatas extends ArrayList<ReviewData>
if (data.getDuration() != null) if (data.getDuration() != null)
{ {
count += 1; count += 1;
result += data.getUserCount(); result += data.getDuration();
} }
} }

View file

@ -135,7 +135,7 @@ public class ReviewStatsReporter
if (lastReview.getUserCount() < recordReview.getUserCount()) if (lastReview.getUserCount() < recordReview.getUserCount())
{ {
double averageUserCount = reviews.getAveratgeUserCount(); double averageUserCount = reviews.getAveratgeUserCount();
result = String.format("La moyenne de participation est de %02.1f personnes.", averageUserCount); result = String.format("La participation moyenne aux revues est de %02.1f personnes.", averageUserCount);
} }
else if (lastReview.getUserCount() == recordReview.getUserCount()) else if (lastReview.getUserCount() == recordReview.getUserCount())
{ {
@ -290,8 +290,8 @@ public class ReviewStatsReporter
} }
else else
{ {
result = String.format("Statistiques sur la durée des revues : min.=%d min, moy.=%.1f min, max.=%d min", datas.getMinDuration(), result = String.format("Durée des revues : min.=%d min, moy.=%.1f min, max=%d min", datas.getMinDuration(), datas.getAveratgeDuration(),
datas.getAveratgeDuration(), datas.getMaxDuration()); datas.getMaxDuration());
} }
// //
@ -315,8 +315,8 @@ public class ReviewStatsReporter
} }
else else
{ {
result = String.format("Statistiques sur la participation des revues : min.=%d, moy.=%.1f, max.=%d)", datas.getMinUserCount(), result = String.format("Participation aux revues : min.=%d, moy.=%.1f, max=%d", datas.getMinUserCount(), datas.getAveratgeUserCount(),
datas.getAveratgeUserCount(), datas.getMaxUserCount()); datas.getMaxUserCount());
} }
// //