Format iCalendar

Le format iCalendar est un format texte permettant de définir différentes informations pour une tâche. Il convient donc parfaitement au besoin.

Exemple d'une entrée générée où on peut retrouver les différentes informations formatées :

BEGIN:VCALENDAR
VERSION:2.0
BEGIN:VEVENT
DTSTART:20071003T140000
DTEND:20071003T160000
SUMMARY:BCS -  TD
LOCATION:I59
CATEGORIES:Cours
ORGANIZER:NOM Prénom
ATTENDEE:TOUT SSI
END:VEVENT

Fonctionnement du script

Les différentes étapes pour créer un fichier iCalendar sont :

  • s'authentifier après du SSO de Rennes1 ;
  • aller à la page du planning ;
  • sélectionner et récupérer les informations intéressantes ;
  • parser les données ;
  • se déconnecter.

Une des particularité du site est également d'offrir la possibilité de consulter le planning sous forme de liste chronologique présenté en tableau HTML. Grace à ce format de donnée, il est possible d'extraire sans gros problèmes les informations qui nous sont nécessaires, à savoir :

  • la date du jour ;
  • l'heure de début ;
  • la durée ;
  • l'emplacement ;
  • l'intervenant ;
  • les personnes présentes.

Je me suis servis de Ruby pour automatiser ces tâches afin de pouvoir importer ce planning dans un logiciel d'agenda (sur ordinateur ou smartphone).

Après une phase d'authentification (renseigner l'identifiant et le mot de passe du portail), le robot récupère le tableau de la formation désiré. Il imprime alors l'agenda formaté dans la sortie standard que l'on peut rediriger vers un fichier.

Le code source est sous licence GPL et disponible ici.

Exemple d'affichage

Planning Rennes1

Mise à jour : 05/09/2008