Table of Contents
Se vi siete imbattuti in questo articolo è probabile che siate dei fedeli utilizzatori di Thunderbird, il famosissimo client di posta realizzato da Mozilla - la stessa software community che si occupa anche della realizzazione del celeberrimo browser Firefox, del client FTP FileZilla e tanti altri software open-source.
E' quindi probabile che siate già a conoscenza del fatto che, già da qualche anno, Thunderbird ha integrato la gestione dei calendari tramite l'estensione Lightning, un add-on formalmente opzionale ma che viene ormai distribuito come componente aggiuntivo insieme al pacchetto di installazione ufficiale ed è quindi presente nella maggior parte delle installazioni.
La presenza di Lightning consente a Thunderbird di risolvere in modo efficace una serie di gap funzionali che il client aveva accumulato rispetto a competitor come Microsoft Outlook, come ad esempio la gestione integrata degli eventi tramite e-mail con relative funzionalità a corredo: notifiche, inviti ai partecipanti con possibilità di accettare, rifiutare e/o fare controproposte, e via dicendo; si tratta di modalità organizzative "semi-automatizzate" che, con la recente diffusione del prodotto Microsoft Teams, stanno diventando sempre più frequenti nella maggior parte delle realtà lavorative a livello mondiale, in sostituzione del classico approccio manuale basato su una serie di scambi e-mail non standardizzati ("vogliamo fare mercoledì prossimo?" "Ok, a che ora?" e così via).
Pur trattandosi di un ottimo prodotto, Lightning non consente in modo nativo di gestire calendari in cloud, ovvero automaticamente sincronizzati tra più device e/o applicazioni: si tratta di una "limitazione" comune anche a MS Outlook, che però nel caso della suite Microsoft può essere agevolmente superata utilizzando la suite Microsoft 365 e le funzionalità "cloud-based" da essa previste; tra queste, c'è per l'appunto quella che consente di poter creare dei calendari online, consultabili (in lettura e/o modifica) da più client diversi in tempo reale.
Per risolvere questo problema senza dotarsi della suite Microsoft 365 è possibile configurare Lightning in modo che utilizzi un servizio di cloud calendar anziché un calendario locale, come ad esempio Google Calendar: in questo modo gli eventi potranno essere sincronizzati automaticamente e in tempo reale su molteplici dispositivi desktop e mobili. Nei paragrafi seguenti vedremo che è possibile farlo in due modi, cercando di sottolineare i pregi e i difetti di ciascuna alternativa.
Metodo 1: Sync tramite add-on
Il modo più semplice per sincronizzare i calendari presenti su Google Calendar con Thunderbird/Lightning è mediante l'utilizzo del componente aggiuntivo Provider for Google Calendar, sviluppato da Philipp Kewish e disponibile gratuitamente sulla pagina ufficiale di add-on per Mozilla Thunderbird. Si tratta di un add-on estremamente comodo, perché consente - tra le altre cose - di accedere all'intera lista dei nostri calendari presenti su Google Drive, così da poter scegliere in un colpo solo quali sincronizzare e quali no.
Per poter utilizzare il componente aggiuntivo è sufficiente compiere i seguenti passaggi:
- Scaricare l'estensione dalla pagina ufficiale sul sito degli add-on di Mozilla.
- Installarla tramite la funzionalità Strumenti > Componenti aggiuntivi accessibile dal menu principale di Thunderbird.
- Riavviare Thunderbird per rendere effettive le nuove impostazioni.
- Creare un nuovo calendario utilizzando la funzionalità File > Nuovo > Calendario presente sul menu principale di Thunderbird.
- Selezionare la volontà di creare un nuovo calendario sulla rete, quindi indicare Google Calendar nella finestra pop-up successiva.
- Inserire l'indirizzo e-mail dell'account Google sul quale sono configurati i calendari da aggiungere.
Provider for Google Calendar funziona utilizzando il Google Data Protocol, una tecnologia REST sviluppata appositamente per accedere ai dati presenti su Google tramite servizi web.
Ovviamente, al fine di consentire l'accesso in lettura e/o scrittura, sarà necessario autorizzare Lightning ad accedere alle Google API tramite gli appositi pop-up di conferma:
Una volta fornito l'OK alle autorizzazioni del caso, i calendari che abbiamo selezionato per la sincronizzazione saranno resi disponibili all'interno dell'interfaccia grafica di Lightning.
Il componente aggiuntivo Provider for Google Calendar è certamente un ottimo modo per sincronizzare i calendari di Lightning e Google Calendar in modo facile e veloce, ma ha alcune limitazioni che potrebbero comprometterne l'effettiva utilità in determinati contesti. Ad esempio, non consente di assegnare un indirizzo e-mail predefinito a ciascun calendario: si tratta di una funzionalità estremamente utile per poter creare automaticamente gli eventi relativi agli inviti ricevuti tramite e-mail su calendari diversi a seconda dell'indirizzo e-mail su cui si riceve l'invito. La mancanza di questa utile funzionalità fa sì che tutti gli eventi vengano creati sul calendario principale dell'utente Google indicato in fase di autorizzazione, indipendentemente dall'indirizzo e-mail su cui è stato ricevuto l'invito.
Per sopperire a questa limitazione è possibile utilizzare il metodo descritto nel paragrafo successivo, che pur essendo decisamente più lento e macchinoso consente di poter gestire anche questo importante aspetto.
Metodo 2: Sync tramite CalDAV
Il protocollo CalDAV è uno standard che estende le specifiche WebDAV (noto protocollo basato su HTTP per la manipolazione dei dati) per consentire a un client di accedere alle informazioni di pianificazione su un server remoto attraverso il formato standard iCalendar (ICS). Il protocollo di accesso è definito dalla RFC 4791, mentre le estensioni per la pianificazione automatizzata sono definite nella RFC 6638.
La sincronizzazione tramite CalDAV è integrata in Mozilla Lightning e non necessita quindi di alcun modulo aggiuntivo: al tempo stesso è leggermente più complessa (e potenzialmente lunga) da configurare, in quanto costringe a sincronizzare ciascun singolo calendario individualmente. Il principale vantaggio del protocollo CalDAV è la versatilità, in quanto consente di sfruttare sui calendari presenti sulla rete la maggior parte delle funzionalità disponibili su quelli memorizzati in locale.
#1. Recuperare la URL del calendario (CalDAV)
La prima cosa da fare è individuare il calendario Google che vogliamo sincronizzare e recuperare la URL che consentirà di poterlo gestire tramite protocollo CalDAV. Per far questo, sarà sufficiente accedere a calendar.google.com: una volta lì potremo creare un nuovo calendario (o, in alternativa, selezionarne uno di quelli già presenti) e accedere al pannello Impostazioni e Condivisione, come illustrato nella screenshot di seguito.
All'interno della schermata Impostazioni e condivisione troveremo un paragrafo denominato Integra calendario, all'interno del quale troveremo l'ID del calendario:
L'ID del calendario così recuperato, comprensivo di suffisso @group.calendar.google.com, potrà essere utilizzato per "costruire" la URL che consentirà a Mozilla Lightning di accedervi tramite il protocollo CalDAV:
https://apidata.googleusercontent.com/caldav/v2/<CALENDAR-ID>/events
Ovviamente, sarà necessario sostituire il placeholder <CALENDAR-ID> con l'ID del calendario desiderato.
#2. Aggiungere il calendario a Thunderbird/Lightning
Il passo successivo (nonché l'ultimo, a meno di problemi) è configurare il Google Calendar su Thunderbird utilizzando l'apposita funzione "Creazione nuovo calendario", accessibile dal menu principale tramite i comandi File > Nuovo > Calendario: nella finestra pop-up che si aprirà occorrerà indicare che si desidera creare un calendario sulla rete, ovvero gestito tramite internet e non memorizzato sul sistema locale.
Nella schermata successiva occorrerà selezionare CalDAV, quindi inserire il Nome utente (il proprio username Google, ad es. mario@gmail.com) e la URL che abbiamo recuperato nel paragrafo precedente:
Si accederà quindi a una terza (e ultima) schermata, nella quale potremo:
- Dare un nome e un colore al calendario, per identificarlo all'interno di Thunderbird e Lightning: ovviamente, sia il nome che il colore potranno coincidere o meno con quelli assegnati al calendario su Google Calendar.
- Mostrare gli allarmi, ovvero visualizzare le notifiche impostate su Google Calendar sui singoli eventi anche all'interno dell'interfaccia utente di Thunderbird/Lightning (con delle finestre pop-up).
- Assegnare un indirizzo e-mail, necessario per poter gestire la creazione automatica di eventi alla ricezione di inviti in formato e-calendar. Ad esempio, assegnando al calendario l'e-mail di lavoro, tutte le volte che accetterete un invito a una riunione proveniente da quella casella e-mail l'evento relativo all'invito sarà creato automaticamente su questo calendario. Se non avete questo tipo di esigenza, potete anche selezionare Nessuna.
Una volta impostati nome, colore, notifiche degli allarmi ed indirizzo e-mail, sarà possibile fare click su Avanti e completare la procedura automatica. Inutile dire che sarà necessario autorizzare Lightning ad accedere al proprio account Google, secondo le stesse modalità autorizzative descritte in precedenza. Anche in questo caso, una volta fornito l'OK alle necessarie richieste di autorizzazione, i calendari che abbiamo selezionato per la sincronizzazione saranno resi disponibili all'interno di Thunderbird e Lightning.
Conclusioni
Per il momento è tutto: come abbiamo potuto vedere, i metodi per sincronizzare i calendari di Mozilla Lightning e Google Calendar sono sostanzialmente due, caratterizzati da diversi pregi e difetti: l'estensione Provider for Google Calendar, più semplice e comodo ma privo di alcune funzionalità utili, e il protocollo CalDAV, leggermente più macchinoso da configurare ma dotato di maggiore versatilità. Ovviamente, nulla vieta di utilizzarli entrambi, limitando la configurazione del secondo a quei soli calendari che necessitano delle funzionalità avanzate non coperte dal primo.
Ci auguriamo che questa guida possa essere utile ai tanti utenti e amministratori di sistema interessati a realizzare questo tipo di sincronizzazioni. Alla prossima!