Project

General

Profile

Demande #698

outil de synthèse de la revue hebdo

Added by Jeanne Tadeusz about 10 years ago. Updated almost 2 years ago.

Status:
Fermé
Priority:
Normale
Assignee:
Christian P. Momon
Target version:
-
Start date:
12/03/2016
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Difficulté:
6 Très difficile

Description

La revue hebdomadaire d'activité est synthétisée à l'aide d'un script python (voir https://agir.april.org/issues/135). Malheureusement, c'est un outil compliqué à utiliser pour les non-geeks et surtout, cela ne fonctionne qu'avec un format de logs irc particulier.

Il pourrait être utile de faire en sorte que l'outil soit plus facilement utilisable par le conducteur de la revue, éventuellement en passant par un bot.


Subtasks

Demande #761: Envoi de sa revue mensuelle par emailRejetéBenjamin Drieu

Actions

Related issues

Related to Animation - Tâche récurrente #135: Revue hebdomadaire AprilEn cours de traitement04/30/201010/15/2042

Actions

History

#1

Updated by Vincent-Xavier JUMEL about 10 years ago

Ouais, ça traine dans les cart cerveaux depuis longtemps, faut juste qu'on se sorte les mains des poches.

#2

Updated by François Poulain about 10 years ago

  • Status changed from Nouveau to En cours de traitement
From: François Poulain <fpoulain@metrodore.fr>
To: xxx
Subject: Re: Robot IRC réunion hebdo
Date: Fri, 2 Sep 2011 15:55:13 +0200
X-Mailer: Claws Mail 3.7.6 (GTK+ 2.20.1; x86_64-pc-linux-gnu)
Le Fri, 2 Sep 2011 15:42:28 +0200,
xxx a écrit :
> Hello !
> 
> Un motivé =)  
Merci. :)
La revue hebdo est documentée ici :
http://www.april.org/revues-hebdomadaires-april
L'essentiel est ici : http://www.april.org/revues-hebdomadaires-april
Un script que j'ai codé débordélise les logs pour structurer la
synthèse : https://redmine.april.org/attachments/download/88/revue.py
Le script est un peu root (les GUI user friendly, c'est pas mon truc
et je n'aime pas sortir de mon shell sans que ce soit nécessaire. :) ).
Surtout, le principal défaut de ce truc est qu'il est sensible à la
syntaxe des logs, et que le filtrage des logs est pénible du fait que
c'est une syntaxe assez peu structurée.
Botifier ça résoudrait pas mal de soucis.
J'ai déjà codé des bots avec irclib, c'est très simple d'usage. Un
exemple con :
#!/usr/bin/python
# -*- coding:utf8 -*-
import irclib
# Lecture et création du dictionnaire
#Informations de connection
network = 'irc.freenode.net'
port = 6667
channel = '#april'
nick = 'Lurker_de_salon'
name = 'Lurker_de_salon'
#Creer un Objet IRC
irc = irclib.IRC()
# Création des intercepteurs
def handlePubMessage(connection, event):
    author = event.source().split('!')[0]
    sentence = event.arguments()[0]

    print "message public :", "<"+author+">", sentence
# Connection des signaux
irc.add_global_handler ('pubmsg', handlePubMessage)
irc.add_global_handler ('action', handlePubMessage)

#Créer un objet serveur, puis se connecter et rejoindre le canal
server = irc.server()
server.connect(network, port, nick, ircname = name)
server.join(channel)

#Sauter à une boucle infinie
#irc.notice(server,'')
# while 1:
#    server.privmsg(channel, ' blah blah') 
#    time.sleep(2**6)
irc.process_forever()

Donc tout est sur pieds ou presque, il reste juste à finir. Parmi ce
qu'il faut gérer : * coder comment définir le meneur de la revue ; * coder comment mettre fin à la revue ; * une fois la revue terminée, enregistrer ça dans un fichier temporaire
et l'ouvrir avec un éditeur de texte.
Je crois que c'est tout.
François
#3

Updated by Nicolas Vinot about 10 years ago

J'ai fini une première version du robot.
Les sources sont disponibles ici (https://bitbucket.org/aeris/hebdobot), sous licence GPLv3 =)
Pour le téléchargement, c'est par ici : https://bitbucket.org/aeris/hebdobot/downloads/hebdobot-1.0.0.zip
Le seul prérequis est de disposer d'une JVM ?6.0.
Globalement, j'ai repris les commandes déjà existantes du script python, avec 3 nouvelles commandes :
— !debut, pour commencer la réunion
— # titre sujet, pour démarrer un nouveau sujet individuel
— ## titre sujet, pour démarrer un nouveau sujet collectif
— % du texte, un commentaire, non pris en compte dans la revue
— !courant, pour afficher le sujet actuel
— !fin, pour mettre fin à la réunion et générer le PV
Le robot garde en mémoire tout ce qui se dit entre le !debut et le !fin, et génère le log complet à la fin.
J'ai aussi conservé la possibilité d'associer les pseudos IRC aux noms réels, via un fichier XML.
Au niveau du conducteur de la réunion, le premier qui lance le !debut est le seul à pouvoir changer les sujets et clôturer la réunion.
Prévu dans une prochaine version :
— Alerte 30min, 15min et 5min avant le début de la réunion
— Publication automatique sur le Redmine
— Ajout d'association nick/noms directement depuis IRC

#4

Updated by François Poulain about 10 years ago

Merci pour ce travail.

Si je comprends, le % sert à insérer des entrées ? Avant ça désignait des commentaires à ignorer, tout les messages étaient des entrées. Je n'ai pas réussi à générer de synthèse, j'ai pris un

$ ./hebdobot.sh 
java.lang.NullPointerException
    at fr.imirhil.april.hebdobot.Meeting.toString(Meeting.java:62)
    at fr.imirhil.april.hebdobot.Bot.end(Bot.java:91)
    at fr.imirhil.april.hebdobot.Bot.onMessage(Bot.java:43)
    at org.jibble.pircbot.PircBot.handleLine(PircBot.java:990)
    at org.jibble.pircbot.InputThread.run(InputThread.java:92)

Voici le log correspondant :

(10:04:30) Hebdobot [~PircBot@lib59-3-82-233-189-211.fbx.proxad.net] a rejoint le salon.
(10:04:35) _PoLuX_: salut eseyman
(10:04:51) _PoLuX_: !debut
(10:04:52) Hebdobot: Début de la réunion hebdo
(10:04:54) _PoLuX_: #toto
(10:04:54) Hebdobot: Début topic individuel : toto
(10:04:57) _PoLuX_: toto
(10:05:01) _PoLuX_: !fin
(10:05:01) Hebdobot: Fin de la réunion hebdo

Sinon, niveau hébergement, est-ce que les termes d'usage de BitBucket en font une forge recommandable ?

#5

Updated by Anonymous about 10 years ago

Ok, effectivement, j'ai inversé commentaire et pas commentaire.
Le gros null pointer qui tache arrive quand un sujet individuel n'a pas d'entrée =)
Les 2 problèmes sont corrigés en version 1.0.1 : https://bitbucket.org/aeris/hebdobot/downloads/hebdobot-1.0.1.zip

Pour la forge, Bitbucket est la seule forge « ouverte » qui gère Mercurial, et elle est gérée par Atlassian, qui est à mon avis loin d'être mauvais en terme d'opensource et de libre.
Les CGU me semblent aussi suffisament sérieuses, en particulier le « Each party retains all right, title and interest in its data, information and intellectual property rights, and nothing in this Agreement is intended to transfer or diminish such rights. ».
Après, si vous avez mieux / libre / opensource, je suis moi-même preneur =).

#6

Updated by Anonymous about 10 years ago

Il y a quelques bugs dont :

- l'encodage de la synthèse qui devrait être en utf-8

- pour le conducteur de la revue le robot met dans le log 2 fois les changements d'état, genre 1/ Actions passées ou en cours

Concernant le format de la sunthèse ce serait bien d'avoir exactement le même format que les synthèse générées par le script actuel (comme https://agir.april.org/attachments/220/20110916-log-irc-revue-hebdomadaire.txt).

Il faudrait aussi avoir la justification/retour à la ligne des lignes longues.

Ajouter automatiquement la date du jour sous "Revue de la semaine en cours".

#7

Updated by Nicolas Vinot almost 10 years ago

J'ai fait les corrections sur la nouvelle version
Apparemment, ça a l'air de fonctionner correctement depuis 15 jours.

Quand j'ai un moment, il faut que je traite encore l'interface avec identi.ca.

#8

Updated by Loïc Dachary almost 9 years ago

  • Target version set to Backlog
#9

Updated by Loïc Dachary almost 9 years ago

  • Category set to Task
  • Difficulté set to 2 Facile
#10

Updated by Loïc Dachary almost 9 years ago

  • Difficulté changed from 2 Facile to 3 Moyen
#11

Updated by Loïc Dachary almost 9 years ago

  • Status changed from En cours de traitement to Un jour peut-être
  • Difficulté changed from 3 Moyen to 6 Très difficile

Mettre en ligne, maintenir et monitorer un logiciel original aussi petit qu'il soit est une tache difficile.

#12

Updated by Benjamin Drieu about 5 years ago

  • Description updated (diff)
  • Status changed from Un jour peut-être to Résolu

Résolu par hebdobot

#13

Updated by Benjamin Drieu almost 4 years ago

  • Project changed from Admins to Hebdobot
  • Category deleted (Task)
  • Target version deleted (Backlog)
#14

Updated by Isabella Vanni over 3 years ago

  • Status changed from Résolu to Fermé
#15

Updated by Christian P. Momon almost 2 years ago

  • Assignee set to Christian P. Momon

Also available in: Atom PDF