Publié le 04/14/2018, rédigé par Gaulthier LALLEMAND

DAViCal

Afficher un calendrier dans Lightning.

Sommaire : Monter son propre service de calendrier

Etape précédente : Quelques cas d'utilisation

Il existe un certain nombre de clients susceptibles d'aider à la gestion d'un calendrier. J'ai choisi d'utiliser le module intégré à Thunderbird qui s'appelle Lightning.

Dans les versions récentes de Thunderbird, ce module est installé par défaut et on peut le voir sous le nom Agenda.

Afficher un calendrier

Pour voir un calendrier, je lance Thunderbird et je vais dans l'onglet Agenda :

Thunderbird Lightning button

Ensuite, dans la colonne située à gauche de l'interface, je déroule le menu Agendas, afin de voir l'agenda créé par défaut par Lightning (je pourrai le supprimer plus tard) nommé Mon agenda :

Lightning Agendas menu

Puis je fais un clic-droit juste en dessous de ce menu (dans la zone blanche), et je choisis Nouvel agenda.... La fenêtre suivante apparaît :

Lightning Create Agenda 1

Comme je cherche à afficher mon calendrier stocké sur le serveur DAViCal, je choisis l'option Sur le réseau. Puis je clique sur Suivant.

Sur la nouvelle fenêtre, je choisis l'option CalDAV comme format :

Lightning Create Agenda 2

Puis je dois entrer l'URL du calendrier. Cette URL est de la forme :

https://domaine.tld/caldav.php/username/calendar_name

Si j'ai un compte sur le serveur DAViCal dont le username est marie, et que mon calendrier s'appelle work_calendar, et si je reprends la convention de nommage de ce tutoriel, alors l'URL devient :

https://davical.mondomaine.fr/caldav.php/marie/work_calendar

Rappel : pour connaître le nom de mon calendrier, je me connecte sur l'interface web du serveur DAViCal. Puis je vais dans le menu User Functions et View My Details. Enfin, je vais à la section Principal Collections, et je regarde la colonne Path :

DAViCal Collection name

Le Path d'une Collection est formé ainsi :

/username/nom_de_la_collection/

Dans le cas présent, je vois deux calendriers :

Je clique sur Suivant et j'arrive sur la fenêtre suivante :

Lightning Create Agenda 3

Je choisis le nom de ce calendrier qui apparaîtra dans le menu Agendas.

Je choisis également une couleur qui servira à identifier les événements de ce calendrier. C'est très utile dans le cas (fréquent) où j'affiche les événements de plusieurs calendriers simultanément.

Dans le champs Adresse électronique, je sélectionne Aucun pour l'instant.

Puis je clique sur Suivant. Une fenêtre m'annonce que le site https://davical.mondomaine.fr demande un nom d'utilisateur (marie) et le mot de passe correspondant. Il s'agit évidemment du mot de passe que j'utilise pour me connecter en tant que marie sur le site web du serveur DAViCal. Je valide en cliquant sur OK.

Une dernière fenêtre m'indique Votre agenda a été créé. Je clique alors sur Terminer.

Afficher d'autres calendriers

Dans la pratique, un utilisateur ne possède en général que les accès à son compte sur le serveur DAViCal. Cela lui permet d'afficher tous ses calendriers sur le client Lightning, en suivant la même procédure.

Cependant, si j'affiche mon calendrier en tant qu'utilisateur marie, je ne pourrai pas afficher simultanément un calendrier en tant qu'utilisateur aline. Il faut choisir.

Pour que marie puisse afficher le calendrier d'aline, celle-ci devra donner les droits suffisants à marie.

Sinon, marie pourra éventuellement afficher le calendrier FREE/BUSY d'aline, comme nous le verrons dans le prochain article.

Supprimer un calendrier

Il existe deux façons de supprimer un calendrier :

Attention : la suppression depuis l'interface web est définitive, tandis que le désabonnement laisse le calendrier sur le serveur.

Et si le processus de création échoue?

Le DNS est mal configuré

Je vérifie dans l'interface web du prestataire qui gère mon domaine que j'ai bien créé un champs A qui redirige mon domaine (ou sous-domaine) vers l'adresse IP du serveur qui héberge DAViCal.

L'URL du calendrier est incorrecte

L'URL doit être de la forme suivante :

https://domaine.tld/caldav.php/username/nom_du_calendrier

https : le choix entre http et https vient de mon souhait d'intégrer ou non le SSL à mon serveur web.

mon_nom_de_domaine.tld : il s'agit du domaine (ou sous-domaine) que j'ai indiqué dans le champs A que j'ai créé dans le DNS.

caldav.php : spécifie le fichier PHP à interroger.

username : le login que j'utilise pour me loguer sur le site web du serveur DAViCal.

nom_du_calendrier : le nom du calendrier visible sur la page de mon utilisateur dans l'interface web de DAViCal (voir plus haut comment connaître le nom d'une Collection).

Les identifiants ne sont pas bons

Au risque de me répéter, les login et mot de passe que j'utilise sont exactement ceux que j'utilise pour me connecter sur le site web du serveur DAViCal.

Le calendrier n'existe pas

Peut-être s'agit-il d'une faute de frappe ?

Si ce n'est pas le cas, je dois me connecter sur le site web du serveur DAViCal pour créer un calendrier avant de pouvoir l'utiliser dans Lightning.

Le serveur web est mal configuré

Dans ce cas, j'ai peut-être fait une faute de frappe en écrivant le fichier de configuration d'Apache.

Le pare-feu de mon serveur DAViCal est trop restrictif

Je devrai dans ce cas consulter les règles iptables :

sudo iptables -S

Si une règle empêche l'émission ou la réception de paquets sur le port spécifié dans le fichier de configuration d'Apache, je dois y remédier.

Mon ordinateur n'a pas accès à internet

J'arrête l'informatique :p

Etape suivante : Utiliser le FREE/BUSY dans Lightning