Creare le interfacce di Google Calendar

I componenti aggiuntivi di Google Workspace possono fornire interfacce personalizzate quando l'utente visualizza o modifica calendari ed eventi di Calendar. In questo modo, puoi fornire all'utente informazioni aggiuntive pertinenti, automatizzare le attività e connettere sistemi di terze parti a Google Calendar.

Quando crei un'interfaccia del componente aggiuntivo per Google Calendar, puoi fornire una home page. Puoi utilizzare la stessa home page per più host o progettarne una specifica per Google Calendar.

Il componente aggiuntivo può anche definire un'interfaccia che viene visualizzata quando l'utente ha aperto un evento di Calendar.

Accedere all'interfaccia utente del componente aggiuntivo

A seconda di come viene aperto, un componente aggiuntivo Google Workspace può definire un'interfaccia della home page, un'interfaccia degli eventi di Google Calendar, un'interfaccia di selezione degli allegati o tutte e tre:

  • Se un utente fa clic sull'icona del componente aggiuntivo in una visualizzazione del calendario, il componente aggiuntivo esegue la funzione calendar.homepageTrigger corrispondente (se presente). Questa funzione crea e restituisce una scheda della home page a Calendar per la visualizzazione. Se non è definita una funzione calendar.homepageTrigger, viene visualizzata una scheda generica della home page.
  • Se l'utente apre un evento di Calendar e poi fa clic sull'icona del componente aggiuntivo oppure il componente aggiuntivo è aperto quando l'utente apre un evento, il componente aggiuntivo esegue la funzione eventOpenTrigger corrispondente (se presente). Questa funzione crea l'interfaccia dell'evento di calendario del componente aggiuntivo e torna a Google Calendar per la visualizzazione.
  • Se il componente aggiuntivo definisce una funzione eventAttachmentTrigger, viene visualizzato come fornitore di allegati quando l'utente fa clic su Aggiungi allegato durante la modifica di un evento di Calendar. Quando il componente aggiuntivo è selezionato, la funzione eventAttachmentTrigger crea l'interfaccia di selezione degli allegati del componente aggiuntivo e la restituisce a Google Calendar per la visualizzazione.

Creazione dell'interfaccia del componente aggiuntivo di Calendar

Puoi estendere Google Calendar con un componente aggiuntivo di Google Workspace seguendo questi passaggi:

  1. Decidi se vuoi che il tuo componente aggiuntivo abbia una home page specifica per Calendar. Decidi anche se vuoi fornire un'interfaccia personalizzata mentre l'utente modifica gli eventi di Calendar.
  2. Aggiungi i campi addOns.common e addOns.calendar appropriati al manifest del progetto di script del componente aggiuntivo, inclusi gli ambiti richiesti.
  3. Se fornisci una home page specifica di Calendar, implementa la funzione calendar.homepageTrigger per creare questa interfaccia. Puoi anche scegliere di utilizzare l'interfaccia common.homepageTrigger per più host Google Workspace.
  4. Se fornisci un'interfaccia per eventi di Calendar, devi implementare una funzione calendar.eventOpenTrigger per creare questa interfaccia. Per maggiori dettagli, vedi Estensione dell'interfaccia degli eventi di Calendar.
  5. Implementa le funzioni di callback associate necessarie per rispondere alle interazioni dell'utente con l'interfaccia utente, ad esempio i clic sui pulsanti.

Home page di Calendar

Google Calendar supporta la visualizzazione delle home page dei componenti aggiuntivi di Google Workspace. Per mostrare la home page comune del componente aggiuntivo in Google Calendar, assicurati che nel manifest del componente aggiuntivo sia presente un campo addOns.calendar.

In alternativa, aggiungi un calendar.homepageTrigger al manifest dell'add-on per fornire una home page specifica per Calendar.

In entrambi i casi, devi fornire il nome di una funzione di attivazione della home page nel progetto di script del componente aggiuntivo. Questa funzione viene chiamata automaticamente per creare la home page di Google Calendar quando è necessario. Devi implementare questa funzione per creare e restituire un singolo oggetto Card o un array di oggetti Card che compongono la home page. Alla funzione di attivazione della home page viene passato un oggetto evento come parametro che contiene alcune informazioni generali, ad esempio la piattaforma del client. Puoi utilizzare i dati dell'oggetto evento per personalizzare la creazione della home page.

Estensione dell'interfaccia dell'evento di calendario

Google Calendar si basa su un trigger contestuale per determinare quale interfaccia (se presente) visualizzare quando l'utente modifica un evento di Calendar. Quando viene attivato il trigger, viene eseguita la funzione di trigger contestuale specificata dal campo calendar.eventOpenTrigger nel manifest del componente aggiuntivo.

Devi implementare la funzione denominata nel campo calendar.eventOpenTrigger. Questa funzione accetta un oggetto evento come argomento e deve restituire un singolo oggetto Card o un array di oggetti Card da visualizzare in Calendar mentre l'utente ha aperto l'evento.

Oggetti evento

Viene creato un oggetto evento e passato alla funzione di trigger contestuale calendar.eventOpenTrigger quando un utente apre un evento di Calendar. La funzione di attivazione può utilizzare le informazioni contenute in questo oggetto evento per determinare come costruire le schede dei componenti aggiuntivi o controllare il comportamento del componente aggiuntivo. Gli oggetti evento vengono creati e passati alle funzioni homepageTrigger anche quando un componente aggiuntivo viene aperto per la prima volta e quando l'utente fa clic o seleziona widget interattivi.

La struttura completa degli oggetti evento è descritta in Oggetti evento. Quando Calendar è l'app host del componente aggiuntivo, gli oggetti evento di attivazione contestuale e di interazione con i widget includono il campo Oggetto evento di Calendar che contiene informazioni specifiche del client di Calendar.

Aggiornare gli eventi di Calendar

Oltre all'intent contestuale calendar.eventOpenTrigger che viene attivato quando un utente apre un evento di calendario per la modifica, puoi anche definire un calendar.eventUpdateTrigger che viene attivato quando l'utente aggiorna e salva un evento di calendario. Questo trigger viene attivato solo se l'utente esegue una o più delle seguenti modifiche:

  • Aggiunge uno o più partecipanti.
  • Rimuove uno o più partecipanti.
  • Aggiunge o passa a un'altra soluzione per conferenze.

Quando questo trigger viene attivato, esegue la funzione di trigger specificata dal campo manifest calendar.eventUpdateTrigger. La funzione viene eseguita prima del salvataggio della modifica dell'evento di Calendar.

Il calendar.eventUpdateTrigger viene in genere utilizzato per uno o più dei seguenti scopi:

  • Aggiorna l'interfaccia dell'evento di calendario del componente aggiuntivo in risposta alle modifiche apportate dall'utente all'evento di calendario.
  • Sincronizzare i dati degli eventi di Calendar con un sistema di terze parti, ad esempio un sistema di conferenza connesso a Google Calendar.

Se devi apportare modifiche ai dati di un evento di Calendar (ad esempio all'elenco dei partecipanti), devi impostare il campo manifest dell'add-on calendar.currentEventAccess su WRITE o READ_WRITE. Inoltre, il componente aggiuntivo deve disporre dell'ambito https://www.googleapis.com/auth/calendar.addons.current.event.write.

Aggiunta di soluzioni per conferenze

Le soluzioni per videoconferenze rappresentano opzioni di conferenza di terze parti che gli utenti possono allegare agli eventi di Google Calendar. La documentazione Panoramica delle conferenze di terze parti fornisce dettagli su come creare un componente aggiuntivo che aggiunga nuove soluzioni di conferenza. Non è necessario creare un'interfaccia utente per questo tipo di estensione; le soluzioni aggiunte vengono visualizzate semplicemente come opzioni nel menu a discesa dell'interfaccia utente dell'evento di Google Calendar.