Questa pagina spiega come creare un componente aggiuntivo di Google Workspace che consenta agli utenti di Documenti Google di creare risorse, ad esempio una richiesta di assistenza o un'attività di progetto, in un servizio di terze parti da Documenti Google.
Con un componente aggiuntivo di Google Workspace, puoi aggiungere il tuo servizio al menu @ in Documenti. Il componente aggiuntivo aggiunge voci di menu che consentono agli utenti di creare risorse nel tuo servizio tramite una finestra di dialogo del modulo in Documenti.
Come gli utenti creano le risorse
Per creare una risorsa nel tuo servizio da un documento di Documenti Google, gli utenti devono digitare @ in un documento e selezionare il servizio dal menu @:
Quando gli utenti digitano @ in un documento e selezionano il tuo servizio, viene visualizzata una scheda che include gli input del modulo necessari per creare una risorsa. Dopo che l'utente ha inviato il modulo di creazione della risorsa, il componente aggiuntivo deve creare la risorsa nel servizio e generare un URL che rimandi a questa risorsa.
Il componente aggiuntivo inserisce un chip nel documento per la risorsa creata. Quando gli utenti tengono premuto il cursore sopra questo chip, viene attivato l'attivatore di anteprima dei link associato al componente aggiuntivo. Assicurati che il plug-in inserisca chip con pattern di link supportati dagli attivatori di anteprima dei link.
Crea le schede dei moduli di cui gli utenti hanno bisogno per creare risorse all'interno del tuo servizio.
Gestisci l'invio dei moduli in modo che la funzione che crea la risorsa venga eseguita quando gli utenti inviano il modulo.
Configura la creazione delle risorse
Per configurare la creazione delle risorse, specifica le seguenti sezioni e campi nel manifest del plug-in:
Nella sezione addOns del campo docs, implementa l'attivatore createActionTriggers che include un runFunction. Definisci questa funzione nella sezione Creare le schede del modulo che segue.
Nel campo oauthScopes, aggiungi l'ambitohttps://www.googleapis.com/auth/workspace.linkcreate in modo che gli utenti possano autorizzare il componente aggiuntivo a creare risorse.
Nello specifico, questo ambito consente al componente aggiuntivo di leggere le informazioni inviate dagli utenti al modulo di creazione della risorsa e di inserire uno smart chip nel documento in base a queste informazioni.
Ad esempio, consulta la sezione addons di un manifest che configura la creazione di risorse per il seguente servizio per le richieste di assistenza:
{"oauthScopes":["https://www.googleapis.com/auth/workspace.linkpreview","https://www.googleapis.com/auth/workspace.linkcreate"],"addOns":{"docs":{"linkPreviewTriggers":[...],"createActionTriggers":[{"id":"createCase","labelText":"Create support case","localizedLabelText":{"es":"Crear caso de soporte"},"runFunction":"createCaseInputCard","logoUrl":"https://www.example.com/images/case.png"}]}}}
Nell'esempio, il componente aggiuntivo di Google Workspace consente agli utenti di creare richieste di assistenza.
Ogni attivatore createActionTriggers deve avere i seguenti campi:
Un ID univoco
Un'etichetta di testo visualizzata nel menu @ di Documenti
Un URL del logo che rimanda a un'icona visualizzata accanto al testo dell'etichetta nel menu @
Una funzione di callback che fa riferimento a una funzione Apps Script o a un endpoint HTTP che restituisce una scheda
Crea le schede del modulo
Per creare risorse nel tuo servizio dal menu @
di Documenti, devi implementare le eventuali funzioni
specificate nell'oggetto createActionTriggers.
Quando un utente interagisce con uno dei tuoi elementi del menu, viene attivato l'attivatore createActionTriggers corrispondente e la relativa funzione di callback presenta una scheda con gli input del modulo per la creazione della risorsa.
Elementi e azioni supportati
Per creare l'interfaccia della scheda, utilizzi i widget per visualizzare le informazioni e gli input necessari per creare la risorsa. La maggior parte dei widget e delle azioni dei componenti aggiuntivi di Google Workspace è supportata con le seguenti eccezioni:
I piè di pagina delle schede non sono supportati.
Le notifiche non sono supportate.
Per la navigazione, è supportata solo la navigazione updateCard.
Esempio di scheda con input del modulo
L'esempio seguente mostra una funzione di callback di Apps Script
che mostra una scheda quando un utente seleziona Crea richiesta di assistenza dal menu @:
La funzione createCaseInputCard mostra la seguente scheda:
La scheda include input di testo, un menu a discesa e una casella di controllo. Ha anche un pulsante di testo con un'azione onClick che esegue un'altra funzione per gestire l'invio del modulo di creazione.
Dopo che l'utente ha compilato il modulo e fatto clic su
Crea, il componente aggiuntivo invia gli input del modulo alla funzioneonClick di azione, chiamata submitCaseCreationForm nel nostro esempio, a questo punto il
componente aggiuntivo può convalidare gli input e utilizzarli per
creare la risorsa nel servizio di terze parti.
Gestire gli invii di moduli
Dopo che un utente invia il modulo di creazione, viene eseguita la funzione associata all'azione
onClick. Per un'esperienza utente ideale, il plug-in deve gestire sia i moduli inviati correttamente sia quelli con errori.
Gestire la creazione di risorse riuscita
La funzione onClick del componente aggiuntivo deve creare la risorsa nel servizio di terze parti e generare un URL che rimandi a questa risorsa.
Per comunicare l'URL della risorsa a Documenti per la creazione del chip, la funzione onClick deve restituire un SubmitFormResponse con un array di un elemento in renderActions.action.links che rimandi a un link. Il titolo del link deve rappresentare il titolo della risorsa creata e l'URL deve indirizzare a quella risorsa.
L'esempio seguente mostra un SubmitFormResponse per una risorsa creata:
Dopo che è stato restituito SubmitFormResponse, la finestra di dialogo modale si chiude e il plug-in inserisce un chip nel documento.
Quando gli utenti posizionano il cursore sopra questo chip, viene invocato l'attivatore di anteprima del link associato. Assicurati che il componente aggiuntivo non inserisca chip con pattern di link non supportati dagli attivatori dell'anteprima dei link.
Gestisci gli errori
Se un utente tenta di inviare un modulo con campi non validi, anziché restituire un SubmitFormResponse con un link, il componente aggiuntivo deve restituire un'azione di rendering che mostri un errore utilizzando una navigazione updateCard.
In questo modo l'utente può vedere cosa ha sbagliato e riprovare. Consulta
updateCard(card)
per
Apps Script e updateCard
per altri ambienti di runtime. Le notifiche e le navigazioni di pushCard non sono supportate.
Esempio di gestione degli errori
L'esempio seguente mostra il codice richiamato quando un utente invia il
modulo. Se i dati inseriti non sono validi, la scheda viene aggiornata e vengono visualizzati messaggi di errore. Se gli input sono validi, il componente aggiuntivo restituisce un SubmitFormResponse con un link alla risorsa creata.
Esempio completo: componente aggiuntivo per le richieste di assistenza
L'esempio seguente mostra un componente aggiuntivo di Google Workspace che mostra l'anteprima dei link alle richieste di assistenza di un'azienda e consente agli utenti di creare richieste di assistenza da Documenti Google.
L'esempio esegue le seguenti operazioni:
Genera una scheda con i campi del modulo per creare una richiesta di assistenza dal menu Documenti @.
Convalida gli input del modulo e restituisce messaggi di errore per gli input non validi.
Inserisce il nome e il link della richiesta di assistenza creata nel
documento di Documenti come smart chip.
Mostra l'anteprima del link alla richiesta di assistenza, ad esempio
https://www.example.com/support/cases/1234. Lo smart chip mostra un'icona e la scheda di anteprima include il nome, la priorità e la descrizione della richiesta.
[null,null,["Ultimo aggiornamento 2025-02-14 UTC."],[[["This guide details building a Google Workspace add-on to create and manage external resources (like support cases) directly within Google Docs."],["Users can create resources via a form within Docs, which then inserts a smart chip linking to the resource in the external service."],["The add-on requires configuration in the manifest file and utilizes Apps Script, Node.js, Python, or Java for development."],["Comprehensive code samples are provided to guide developers through card creation, form submission, and error handling."],["Smart chips representing the created resources offer link previews, enhancing user experience and information access."]]],[]]