Voici le contenu de ces scripts. On doit pouvoir aller plus loin, comme afficher les rendez-vous de la journée suivante, voire même mettre tout ça dans un module et créer une petite application en Perl/GTK2 l'utilisant... Mais bon, ça sera pour plus tard, hein :-)
ocalendar.pl
#!/usr/bin/env perl # use strict; use warnings; use HTTP::Request::Common; use LWP::UserAgent; use Text::Iconv; my $username = 'username'; my $password = 'password'; my $server = ''; # sans http://, avec le chemin complet jusqu'a OWA, pour le login #my $server = 'serveur/exchange'; my $loginurl = "http://$username:$password\@$server/"; my $converter = Text::Iconv->new("UTF-8", "ISO-8859-1"); my $ua = LWP::UserAgent->new; my $loginpage = $ua->get($loginurl); $server = $loginpage->base; $server =~ s|^http://|http://$username:$password\@|; undef $loginpage; my $calendar = $server . "Calendrier/?Cmd=contents"; my $calendarpage = $ua->get($calendar); my $page = $calendarpage->decoded_content; my @meetings = $page =~ /TITLE="([^"]+)"/g; foreach my $meeting (@meetings) { $meeting = $converter->convert($meeting); # on doit le faire 2 fois, je sais pas pkoi.. $meeting = $converter->convert($meeting); print $meeting, "\n"; }
ocalendar.sh
#!/bin/sh while true ; do clear ocalendar.pl sleep 500 done
Lancement de aterm
aterm +sb -tr -vb -fg blue -txttype orInverted -title "Outlook Calendar" -geometry 40x5-64+0 -e "ocalendar.sh" &