Change twitter client

This commit is contained in:
aeris 2017-12-14 11:12:15 +01:00
parent 5895fcc6db
commit 416a75200c
13 changed files with 107 additions and 329 deletions

View File

@ -6,12 +6,6 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="target/classes" path="target/generated-sources/jaxb">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>

View File

@ -15,6 +15,11 @@
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.springframework.ide.eclipse.core.springbuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
@ -22,6 +27,8 @@
</buildCommand>
</buildSpec>
<natures>
<nature>org.springframework.ide.eclipse.core.springnature</nature>
<nature>org.sonar.ide.eclipse.core.sonarNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>

View File

@ -3,4 +3,5 @@ encoding//src/main/java=UTF8
encoding//src/main/resources=UTF8
encoding//src/test/java=UTF8
encoding//src/test/resources=UTF8
encoding//target/generated-sources/jaxb=UTF8
encoding/<project>=UTF8

View File

@ -0,0 +1,6 @@
analyseLocally=false
eclipse.preferences.version=1
extraProperties=
projectKey=fr.imirhil.april\:hebdobot
serverUrl=http\://localhost\:9000
version=2

31
pom.xml
View File

@ -1,4 +1,5 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>fr.imirhil.april</groupId>
<artifactId>hebdobot</artifactId>
@ -7,11 +8,11 @@
<connection>scm:hg:file://${basedir}</connection>
</scm>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>${maven.compiler.source}</maven.compiler.target>
<project.build.sourceEncoding>UTF8</project.build.sourceEncoding>
<slf4j.version>1.6.4</slf4j.version>
<spring.version>3.1.1.RELEASE</spring.version>
<slf4j.version>1.7.12</slf4j.version>
<spring.version>4.1.7.RELEASE</spring.version>
</properties>
<build>
<plugins>
@ -70,12 +71,12 @@
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.1</version>
<version>2.8.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.1</version>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
@ -85,23 +86,22 @@
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.6</version>
<version>2.2.12</version>
</dependency>
<dependency>
<groupId>opensymphony</groupId>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.6.5</version>
<scope>runtime</scope>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.1.3</version>
<version>4.5</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
@ -118,7 +118,7 @@
<dependency>
<groupId>org.scribe</groupId>
<artifactId>scribe</artifactId>
<version>1.3.0</version>
<version>1.3.7</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
@ -148,5 +148,10 @@
<version>${spring.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.social</groupId>
<artifactId>spring-social-twitter</artifactId>
<version>1.1.0.RELEASE</version>
</dependency>
</dependencies>
</project>

View File

@ -2,28 +2,30 @@ package fr.imirhil.april.hebdobot;
import javax.annotation.Resource;
import org.springframework.social.twitter.api.impl.TwitterTemplate;
import fr.imirhil.april.hebdobot.irc.Bot;
import fr.imirhil.april.hebdobot.statusnet.IdentiCaClient;
public class Job {
@Resource
private Bot bot;
@Resource
private IdentiCaClient identiCaClient;
private String statusNetMessage;
private String ircMessage;
private TwitterTemplate twitterClient;
private String tweet;
private String irc;
public void setStatusNetMessage(String message) {
this.statusNetMessage = message;
public void setTweet(final String message) {
this.tweet = message;
}
public void setIrcMessage(String message) {
this.ircMessage = message;
public void setIrc(final String message) {
this.irc = message;
}
private void notify(final int min) {
this.bot.sendMessage(String.format(this.ircMessage, min));
this.identiCaClient.post(String.format(this.statusNetMessage, min));
this.bot.sendMessage(String.format(this.irc, min));
final String tweet = String.format(this.tweet, min);
this.twitterClient.timelineOperations().updateStatus(tweet);
}
public void at30() {

View File

@ -0,0 +1,29 @@
package fr.imirhil.april.hebdobot;
import java.util.Scanner;
import org.scribe.builder.ServiceBuilder;
import org.scribe.builder.api.TwitterApi;
import org.scribe.model.Token;
import org.scribe.model.Verifier;
import org.scribe.oauth.OAuthService;
public class OAuthRegistration {
public static void main(final String args[]) throws Exception {
final OAuthService service =
new ServiceBuilder()
.provider(TwitterApi.class)
.apiKey("uCZMXbUWuda7a2RqqKd2yg")
.apiSecret(
"KUH2O77u5RJfqZ2rE8qV6Ak1HBKQRg70DUIVAXDr6oo")
.build();
final Token requestToken = service.getRequestToken();
final String authUrl = service.getAuthorizationUrl(requestToken);
System.out.println(authUrl);
final String value = new Scanner(System.in).nextLine();
final Verifier v = new Verifier(value);
final Token accessToken = service.getAccessToken(requestToken, v);
System.out.println(accessToken);
}
}

View File

@ -28,8 +28,7 @@ public class Bot extends PircBot {
private final int port;
private final String channel;
private Review review = null;
private final Collection<ReviewListener> listeners =
new LinkedList<ReviewListener>();
private final Collection<ReviewListener> listeners = new LinkedList<ReviewListener>();
private final List<Handler> handlers = new LinkedList<Handler>();
public Bot(final String host, final int port, final String name,
@ -115,6 +114,7 @@ public class Bot extends PircBot {
Bot.this.sendMessage(sender,
"Pour terminer la réunion, tapez \"!fin\"");
Bot.this.sendMessage("% Début de la réunion hebdomadaire");
Bot.this.sendMessage("% rappel : toute ligne commençant par % sera considérée comme un commentaire et non prise en compte dans la synthèse");
return true;
}
});
@ -141,6 +141,11 @@ public class Bot extends PircBot {
Bot.this.sendMessage("% "
+ Bot.this.review.getOwner()
+ ", ne pas oublier d'ajouter le compte-rendu de la revue sur https://agir.april.org/issues/135");
final String participants = StringUtils.join(
Bot.this.review.getParticipants(), " ");
Bot.this.sendMessage("% "
+ participants
+ ", pensez à noter votre bénévalo : http://www.april.org/my?action=benevalo");
Bot.this.sendMessage("% Fin de la revue hebdomadaire");
Bot.this.review = null;
return true;
@ -161,11 +166,15 @@ public class Bot extends PircBot {
return false;
}
final CollectiveTopic topic =
new CollectiveTopic(message.replaceFirst("##", "")
.trim());
final CollectiveTopic topic = new CollectiveTopic(message
.replaceFirst("##", "").trim());
Bot.this.review.begin(topic);
Bot.this.sendMessage("Sujet collectif : " + topic.getTitle());
if (topic.getTitle().toLowerCase().contains("bloquage")) {
Bot.this.sendMessage("% si rien à dire vous pouvez dire %ras");
} else {
Bot.this.sendMessage("% 1 minute max");
}
return true;
}
});
@ -184,11 +193,11 @@ public class Bot extends PircBot {
return false;
}
final IndividualTopic topic =
new IndividualTopic(message.replaceFirst("#", "")
.trim());
final IndividualTopic topic = new IndividualTopic(message
.replaceFirst("#", "").trim());
Bot.this.review.begin(topic);
Bot.this.sendMessage("Sujet individuel : " + topic.getTitle());
Bot.this.sendMessage("% quand vous avez fini vous le dites par % fini");
return true;
}
});
@ -208,15 +217,14 @@ public class Bot extends PircBot {
return true;
}
final Collection<String> participants =
Bot.this.review.getParticipants();
final Collection<String> currentParticipants =
topic.getParticipants();
final Collection<String> participants = Bot.this.review
.getParticipants();
final Collection<String> currentParticipants = topic
.getParticipants();
@SuppressWarnings("unchecked")
final Collection<String> missing =
CollectionUtils.subtract(participants,
currentParticipants);
final Collection<String> missing = CollectionUtils.subtract(
participants, currentParticipants);
if (missing.isEmpty()) {
Bot.this.sendMessage("Aucun participant manquant \\o/");
return true;

View File

@ -1,31 +0,0 @@
package fr.imirhil.april.hebdobot.statusnet;
import org.scribe.builder.api.DefaultApi10a;
import org.scribe.model.Token;
public class IdentiCaApi extends DefaultApi10a {
private static final String IDENTI_CA_OAUTH_API_URL =
"https://identi.ca/api/oauth";
private static final String IDENTI_CA_OAUTH_API_REQUEST_TOKEN_URL =
IDENTI_CA_OAUTH_API_URL + "/request_token";
private static final String IDENTI_CA_OAUTH_API_ACCESS_TOKEN_URL =
IDENTI_CA_OAUTH_API_URL + "/access_token";
private static final String IDENTI_CA_OAUTH_API_AUTHORIZE_URL =
IDENTI_CA_OAUTH_API_URL + "/authorize?oauth_token=%s";
@Override
public String getRequestTokenEndpoint() {
return IDENTI_CA_OAUTH_API_REQUEST_TOKEN_URL;
}
@Override
public String getAccessTokenEndpoint() {
return IDENTI_CA_OAUTH_API_ACCESS_TOKEN_URL;
}
@Override
public String getAuthorizationUrl(final Token requestToken) {
return String.format(IDENTI_CA_OAUTH_API_AUTHORIZE_URL,
requestToken.getToken());
}
}

View File

@ -1,21 +0,0 @@
package fr.imirhil.april.hebdobot.statusnet;
public class IdentiCaClient extends StatusNetClient {
private static final Class<IdentiCaApi> API_CLASS = IdentiCaApi.class;
private static final String IDENTICA_API_URL = "https://identi.ca/api";
public IdentiCaClient(final String apiKey, final String apiSecret,
final String tokenKey, final String tokenSecret) {
super(API_CLASS, apiKey, apiSecret, tokenKey, tokenSecret);
}
public static void register(final String apiKey, final String apiSecret) {
StatusNetClient.register(API_CLASS, apiKey, apiSecret);
}
@Override
protected String getApiUrl() {
return IDENTICA_API_URL;
}
}

View File

@ -1,56 +0,0 @@
package fr.imirhil.april.hebdobot.statusnet;
import java.util.Scanner;
import org.scribe.builder.ServiceBuilder;
import org.scribe.builder.api.Api;
import org.scribe.model.OAuthRequest;
import org.scribe.model.Token;
import org.scribe.model.Verb;
import org.scribe.model.Verifier;
import org.scribe.oauth.OAuthService;
public abstract class StatusNetClient {
private final OAuthService service;
private final Token token;
public StatusNetClient(final Class<? extends Api> apiClass,
final String apiKey, final String apiSecret, final String tokenKey,
final String tokenSecret) {
this.service = getService(apiClass, apiKey, apiSecret);
this.token = new Token(tokenKey, tokenSecret);
}
private static OAuthService getService(final Class<? extends Api> apiClass,
final String apiKey, final String apiSecret) {
return new ServiceBuilder().provider(apiClass).apiKey(apiKey)
.apiSecret(apiSecret).build();
}
public static void register(final Class<? extends Api> apiClass,
final String apiKey, final String apiSecret) {
final OAuthService service = getService(apiClass, apiKey, apiSecret);
final Token requestToken = service.getRequestToken();
System.out.println(service.getAuthorizationUrl(requestToken));
System.out.print(">>");
final Scanner scanner = new Scanner(System.in);
try {
final Verifier verifier = new Verifier(scanner.nextLine());
final Token token = service.getAccessToken(requestToken, verifier);
System.out.println(token);
} finally {
scanner.close();
}
}
public void post(final String message) {
final OAuthRequest request =
new OAuthRequest(Verb.POST, this.getApiUrl()
+ "/statuses/update.json");
request.addBodyParameter("status", message);
this.service.signRequest(this.token, request);
request.send();
}
protected abstract String getApiUrl();
}

View File

@ -28,10 +28,8 @@ public class BotTest implements ReviewListener {
}
@Override
public void
onMessage(final String channel, final String sender,
final String login, final String hostname,
final String message) {
public void onMessage(final String channel, final String sender,
final String login, final String hostname, final String message) {
super.onMessage(channel, sender, login, hostname, message);
}
}
@ -41,17 +39,19 @@ public class BotTest implements ReviewListener {
final Bot bot = new BotMock();
bot.add(this);
final InputStream is =
BotTest.class
.getResourceAsStream("/fr/imirhil/april/hebdobot/review.log");
final InputStream is = BotTest.class
.getResourceAsStream("/fr/imirhil/april/hebdobot/review.log");
if (is == null) {
return;
}
try {
final Reader isr = new InputStreamReader(is);
try {
final BufferedReader isbr = new BufferedReader(isr);
try {
String line;
final Pattern pattern =
Pattern.compile(".*\\s+<([^>]+)>\\s+(.*)");
final Pattern pattern = Pattern
.compile(".*\\s+<([^>]+)>\\s+(.*)");
while ((line = isbr.readLine()) != null) {
final Matcher matcher = pattern.matcher(line);
if (matcher.matches()) {
@ -74,8 +74,8 @@ public class BotTest implements ReviewListener {
@Override
public void onEnd(final Review review) {
try {
final String date =
ISODateTimeFormat.basicDate().print(new DateTime());
final String date = ISODateTimeFormat.basicDate().print(
new DateTime());
final String text = review.toString();
final File file = new File("target/" + date + "_revue.txt");
FileUtils.writeStringToFile(file, text);

View File

@ -1,166 +0,0 @@
2011-09-02 12:00:36 <janchou> !debut
2011-09-02 12:00:36 <janchou> % rappel : toute ligne commençant par % ne sera considérée comme un commentaire et non prise en compte dans la synthèse
2011-09-02 12:00:36 <janchou> # 1/ Actions passées ou en cours % quand vous avez fini vous le dites par
2011-09-02 12:00:36 <janchou> % fini
2011-09-02 12:00:55 * coinpan (500c6ecb@gateway/web/freenode/ip.80.12.110.203) a rejoint #april
2011-09-02 12:00:59 <coinpan> coin
2011-09-02 12:01:03 <_PoLuX_> Institutionnel : travail sur consultation cloud
2011-09-02 12:01:10 <janchou> % coinpan : pile à temps, on démarre :)
2011-09-02 12:01:10 <galilea> cloud : fin de la réponse à la consultation européenne
2011-09-02 12:01:15 <_PoLuX_> Institutionnel : remarques sur tv connectée
2011-09-02 12:01:19 <galilea> cloud note en cours
2011-09-02 12:01:24 <aurelia> commande cartes de visites pour _PoLuX_
2011-09-02 12:01:27 <benj> Initiatives Candidats.fr: amélioration de la plate-forme
2011-09-02 12:01:34 <benj> Suivi achat portable Jeanne
2011-09-02 12:01:34 <galilea> cloud : mise en ligne de la consultation
2011-09-02 12:01:37 <aurelia> dépot chèque à la banque
2011-09-02 12:01:41 <janchou> cloud : finalisation réponse consultation européenne, envoi, mise en ligne de la réponse sur le site de l'April
2011-09-02 12:01:42 <benj> Création d'un compte SVN pour galilea
2011-09-02 12:01:46 <benj> Divers relectures
2011-09-02 12:01:48 <_PoLuX_> Suivi divers en trésorerie
2011-09-02 12:01:54 <galilea> cloud : remerciement des participants
2011-09-02 12:01:55 <coinpan> traductions : relayé l'appel à trad de Simon Descarpentries (livre Eloquent Javascript)
2011-09-02 12:01:56 <janchou> TV connectée : suite préparation réponse de l'April
2011-09-02 12:01:58 <benj> %fini
2011-09-02 12:02:11 <coinpan> traductions : publié traduction relue (déclaration d'utilisation de LL)
2011-09-02 12:02:16 <teymour> %oups je suis en retard
2011-09-02 12:02:18 <galilea> agenda 2020 : bilan en cours 2012
2011-09-02 12:02:25 <_PoLuX_> Entretient avec Antoine Chao + CR
2011-09-02 12:02:26 <janchou> Formats ouverts : préparation de l'actu sur la généralisation des standards ouverts dans l'administration
2011-09-02 12:02:32 <aurelia> prise de contact avec nouveau fournisseur poru les t-shirts
2011-09-02 12:02:33 <teymour> réu dossier instit/réunion d'équipe
2011-09-02 12:02:35 <janchou> % teymour : on en est encore aux activités semaine passée
2011-09-02 12:02:38 <_PoLuX_> Relances diverses sur projet de guide libreasso
2011-09-02 12:02:42 <teymour> format ouverts push des infos
2011-09-02 12:02:42 <galilea> pt déj dossiers institutionnels
2011-09-02 12:02:46 <coinpan> traductions : rédaction d'une niouze pour la publication de nouvelles trad + demande de publication
2011-09-02 12:02:48 <benj> Réunion dossiers institutionnels / point d'équipe
2011-09-02 12:02:49 <aurelia> appel à particpation pour la braderie de lille
2011-09-02 12:02:53 <benj> %fini
2011-09-02 12:02:57 <galilea> rapport d'étonnement 1 mois de stage
2011-09-02 12:02:58 <teymour> RPVA rdv ministère de la justice + récupération d'infos
2011-09-02 12:02:59 <aurelia> crétaion page wiki braderie de lille
2011-09-02 12:03:06 <_PoLuX_> Préparation du stand pour la braprendre rdv avec le conseiller credit mut derie de lille
2011-09-02 12:03:07 <coinpan> %fini
2011-09-02 12:03:09 <janchou> entretien journaliste sur Hadopi
2011-09-02 12:03:18 <_PoLuX_> Suivi divers pour le CA
2011-09-02 12:03:19 <teymour> Loop suiv et correction du draft de _PoluX_
2011-09-02 12:03:22 <aurelia> petit dèj institutionnel
2011-09-02 12:03:26 <galilea> examen compétence hadopi sur accès aux info essentielles d'interop
2011-09-02 12:03:31 <janchou> petit déjeuner point d'équipe
2011-09-02 12:03:34 <teymour> envoi du courriel Loop au CA en cours
2011-09-02 12:03:35 <_PoLuX_> Proposition de lettre de soutien au loop
2011-09-02 12:03:39 <galilea> %fini
2011-09-02 12:04:00 <janchou> discussions sur le bilan France Numérique 2012 et réponse à la consultation france numérique 2020
2011-09-02 12:04:02 <aurelia> mise a jour bilan financier des rmll
2011-09-02 12:04:14 <janchou> suivi reprise des travaux parlementaires (et réponses aux QE)
2011-09-02 12:04:23 <teymour> routing d'un appel journaliste RFI sur HADOPI vers axx_ de LQDN
2011-09-02 12:04:23 <_PoLuX_> Participation au petit dej institutionnel
2011-09-02 12:04:27 <aurelia> commabde d'affiches et catalibre pour le stand de la braderie de lille
2011-09-02 12:04:41 <janchou> % teymour : c'était Clare ?
2011-09-02 12:04:49 <_PoLuX_> % fini
2011-09-02 12:05:10 <teymour> %janchou oui elle m'a rappelé en fin de semaine derenière. Tu l'as rajoutée dans les contacts presse ou il faut que je le fasse ?
2011-09-02 12:05:21 <teymour> relecture Cloud Computing
2011-09-02 12:05:41 <janchou> % teymour : je m'en occupe (je l'ai vue mardi)
2011-09-02 12:05:42 <aurelia> prise de rdv avec le conseiller bancaire
2011-09-02 12:05:59 <teymour> % janchou galilea pour info, on m'a fait des compliments sur le draft de note sur le cloud ce matin
2011-09-02 12:06:20 <galilea> %teymour :)
2011-09-02 12:06:30 <teymour> %janchou cool pour Clare, je pensais qu'elle avait laché l'affaire avec nous pour son sujet
2011-09-02 12:06:36 <aurelia> gestion relance 1er septembre
2011-09-02 12:06:45 <PhilippeVay> commande d'un livre sur Drupal chez Eyrolles ^^
2011-09-02 12:06:46 <teymour> %fini
2011-09-02 12:06:48 <aurelia> gestion radiation 1er septembre
2011-09-02 12:06:52 <PhilippeVay> % fini
2011-09-02 12:07:10 <aurelia> mise a jour lettre interne
2011-09-02 12:07:29 <janchou> % fini
2011-09-02 12:07:39 <janchou> mise à jour lettre interme
2011-09-02 12:07:42 <janchou> % fini pour de vrai
2011-09-02 12:07:53 <aurelia> % fini
2011-09-02 12:08:13 <janchou> % on va passer à la suite : Actions à venir
2011-09-02 12:08:13 <janchou> # 2/ Actions à venir
2011-09-02 12:08:13 <janchou> % quand vous avez fini vous le dites par % fini
2011-09-02 12:08:23 <_PoLuX_> Participation Braderie de Lille
2011-09-02 12:08:27 <echarp> revue de presse
2011-09-02 12:08:29 <janchou> cloud : relecture de la note
2011-09-02 12:08:30 <galilea> cloud : note en cours
2011-09-02 12:08:31 <benj> Réception/configuration éventuelle portable Jeanne
2011-09-02 12:08:33 <_PoLuX_> Rédaction du guide libreasso
2011-09-02 12:08:38 <echarp> 4 questions à responsable de groupe
2011-09-02 12:08:43 <_PoLuX_> Relance des contributeurs pour libreasso
2011-09-02 12:08:46 <benj> Améliorations initiatives candidats.fr
2011-09-02 12:08:48 <janchou> TV connectée : envoi de la réponse à l'appel à contribution
2011-09-02 12:08:49 <galilea> mise à jour cahiers candidats. fr
2011-09-02 12:09:00 <janchou> france numérique : suite discussion, préparation réponse
2011-09-02 12:09:01 <galilea> agenda numérique 2020
2011-09-02 12:09:11 <janchou> marchés publics : conférence à l'AMIF
2011-09-02 12:09:11 <_PoLuX_> + Suivi divers et dépillage post-été
2011-09-02 12:09:14 <coinpan> traductions : faire une trad
2011-09-02 12:09:16 * xpo est parti (Quit: xpo)
2011-09-02 12:09:17 <galilea> RPVA: voir pour les contacts
2011-09-02 12:09:18 <aurelia> pointage compta aout
2011-09-02 12:09:23 <coinpan> traductions : générer un nouveau listing de documents àtraduire
2011-09-02 12:09:25 <benj> %fini
2011-09-02 12:09:29 <janchou> RPVA : suivi contacts
2011-09-02 12:09:33 <benj> Formation SVN Marie
2011-09-02 12:09:33 <coinpan> %fini
2011-09-02 12:09:34 <teymour> RPVA contacts
2011-09-02 12:09:35 <janchou> vente liée : diverses relances
2011-09-02 12:09:35 <galilea> comprendre SVN
2011-09-02 12:09:35 <echarp> %fini
2011-09-02 12:09:36 <benj> %fini pour de vrai
2011-09-02 12:09:44 <teymour> Cloud relecture
2011-09-02 12:09:47 <janchou> % galilea : impossible :)
2011-09-02 12:09:52 <galilea> %fini
2011-09-02 12:09:52 <aurelia> % galilea bonne chance :)
2011-09-02 12:10:02 <benj> %/me aime les défis
2011-09-02 12:10:03 <teymour> Marchés public, mettre en relation janchou avec Justice
2011-09-02 12:10:05 <galilea> % l'espoir fait vivre
2011-09-02 12:10:10 <aurelia> suivi bounce aout et septembre
2011-09-02 12:10:18 <janchou> ACTA : mise à jour sur le site de l'April
2011-09-02 12:10:23 <aurelia> suivi relance
2011-09-02 12:10:30 <teymour> mettre nouveaux contacts dans dotproject
2011-09-02 12:10:45 <teymour> Envoi lettre Loop
2011-09-02 12:10:56 <aurelia> contacter ppsj pour arret
2011-09-02 12:11:17 <janchou> france numérique : envoyer commentaire sur le projet de consultation
2011-09-02 12:11:33 <janchou> vente liée : finalisation / validation de la synthèse ?
2011-09-02 12:11:46 <janchou> %fini
2011-09-02 12:11:48 <aurelia> % fini
2011-09-02 12:12:12 <janchou> % teymour fini ?
2011-09-02 12:12:16 <teymour> %fini
2011-09-02 12:12:27 <janchou> % on va passer à la suite : Points de blocage
2011-09-02 12:12:27 <janchou> ## 3/ Points de blocage existants ou levés cette semaine
2011-09-02 12:12:27 <janchou> % si rien à dire vous dites %ras
2011-09-02 12:12:38 <janchou> laptop : en cours de résolution
2011-09-02 12:12:49 <coinpan> %ras
2011-09-02 12:12:55 <galilea> %ras
2011-09-02 12:12:56 <aurelia> prendre rdv avec le conseiller credit mut > réglé
2011-09-02 12:12:56 <benj> Débloqué bug javascript/json bloquant pour les initiatives
2011-09-02 12:13:08 <teymour> %ras
2011-09-02 12:13:14 <benj> Recu confirmation livraison laptop
2011-09-02 12:13:16 <benj> %fini
2011-09-02 12:13:46 <aurelia> oubli de la braderie de lille, appel à participation tardif
2011-09-02 12:14:11 <janchou> % on va passer à la suite : Points Forts et Points de Vigilance de la réunion
2011-09-02 12:14:12 <janchou> ## 4/ Points forts de la réunion
2011-09-02 12:14:12 <janchou> % 1 mn max
2011-09-02 12:14:12 <janchou> % si rien à dire vous dites %ras
2011-09-02 12:14:25 <coinpan> toujours aussi rapide et motivant
2011-09-02 12:14:30 <janchou> beaucoup de présents, effet rentrée ?
2011-09-02 12:14:41 <aurelia> beaucoup de boulot aussi
2011-09-02 12:14:44 * _bibi (~obibi@office.bearstech.com) a rejoint #april
2011-09-02 12:15:02 <galilea> du boulot on s'ennuie pas !
2011-09-02 12:15:07 <galilea> %fini
2011-09-02 12:15:16 <benj> Retour de plein de gens
2011-09-02 12:15:22 * _bibi (~obibi@office.bearstech.com) a quitté #april
2011-09-02 12:15:26 <galilea> %trop bien le stage :)
2011-09-02 12:15:29 <janchou> % on va passer à la suite : Points de Vigilance de la réunion
2011-09-02 12:15:29 <janchou> ## 5/ Points de vigilance de la réunion
2011-09-02 12:15:29 <janchou> % si rien à dire vous dites
2011-09-02 12:15:29 <janchou> %ras % 1 mn max
2011-09-02 12:15:36 <coinpan> %ras
2011-09-02 12:15:48 <galilea> %ras
2011-09-02 12:16:02 <aurelia> % galilea tu dira plus ça quand tu aura ouvert svn :P
2011-09-02 12:16:05 <janchou> % galilea : oui, tu apprends plein de trucs techniques... /o\
2011-09-02 12:16:26 <benj> %ras
2011-09-02 12:16:26 <janchou> % Fin de la revue hebdomadaire, merci à vous
2011-09-02 12:16:26 <janchou> % Pensez à noter votre bénévalo : http://www.april.org/my?action=benevalo
2011-09-02 12:16:26 <janchou> !fin