Questo tutorial mostra come creare un'app Google Chat che risponde agli incidenti in tempo reale. Quando risponde a un incidente, l'app crea e compila uno spazio di Chat, semplifica la risoluzione dell'incidente con messaggi, comandi barra e dialoghi e utilizza l'IA per riepilogare la risposta all'incidente in un documento di Documenti Google.
Un incidente è un evento che richiede l'attenzione immediata di un team di persone per essere risolto. Ecco alcuni esempi di incidenti:
- Viene creata una richiesta urgente in una piattaforma di gestione dei rapporti con i clienti (CRM), che richiede la collaborazione di un team di assistenza per trovare una soluzione.
- Un sistema diventa offline, avvisando un gruppo di SRE (Site Reliability Engineer) in modo che possano collaborare per riportarlo online.
- Si verifica un terremoto di grande magnitudo e i soccorritori devono coordinare la loro risposta.
Ai fini di questo tutorial, l'avviso di incidente si avvia quando un utente segnala l'incidente facendo clic su un pulsante da una pagina web. La pagina web simula un incidente chiedendo agli utenti di inserire informazioni di base sull'incidente: titolo, descrizione e indirizzi email degli utenti che rispondono.
Guarda l'app Chat per la gestione degli incidenti in azione:
-
Figura 1. Il sito web su cui un utente può segnalare un incidente. -
Figura 2. Notifica che lo spazio di Chat per l'incidente è stato creato. -
Figura 3. Lo spazio di Chat per la risposta agli incidenti. -
Figura 4. Risolvere l'incidente con un comando slash. -
Figura 5. Finestra di dialogo Risoluzione dell'incidente. -
Figura 6. Documento di Documenti Google sulla risoluzione dell'incidente condiviso nello spazio. -
Figura 7. Il documento di Documenti Google sulla risoluzione degli incidenti relativi ai riepiloghi dell'IA.
Prerequisiti
Se hai bisogno che uno di questi prerequisiti venga attivato per la tua organizzazione, chiedi all'amministratore di Google Workspace di attivarlo:
- Un account Google Workspace Business o Enterprise con accesso a Google Chat.
- Avere attivato Directory (condivisione dei contatti) per Google Workspace. L'app Incidenti utilizza la directory per cercare i dati di contatto degli addetti agli interventi in caso di incidenti, ad esempio nome e indirizzo email. Gli addetti alla gestione degli incidenti devono essere utenti con un account Google Chat nella tua organizzazione Google Workspace.
Obiettivi
- Crea un'app di chat che risponda agli incidenti.
- Aiuta gli utenti a rispondere agli incidenti nel seguente modo:
- Creazione di spazi di risposta agli incidenti.
- Pubblicazione di messaggi che riepilogano gli incidenti e le risposte.
- Supporto della collaborazione con le funzionalità interattive dell'app Chat.
- Riassumere conversazioni e risoluzioni con Vertex AI.
Architettura
Il seguente diagramma mostra l'architettura delle risorse Google Workspace e Google Cloud utilizzate dall'app Google Chat per la risposta agli incidenti.
L'architettura mostra come l'app Google Chat per la risposta agli incidenti elabora un incidente e la relativa risoluzione.
Un utente avvia un incidente da un sito web esterno ospitato su Apps Script.
Il sito web invia una richiesta HTTP asincrona all'app Google Chat, ospitata anche su Apps Script.
L'app Google Chat per la risposta agli incidenti elabora la richiesta:
Il servizio SDK Admin di Apps Script riceve informazioni sul membro del team, come ID utente e indirizzo email.
Con un insieme di richieste HTTP all'API Chat che utilizza il servizio Chat avanzato di Apps Script, l'app Google Chat per la risposta agli incidenti crea uno spazio Chat per gli incidenti, lo compila con i membri del team e invia un messaggio allo spazio.
I membri del team discutono dell'incidente nello spazio di Chat.
Un membro del team richiama un comando barra per segnalare la risoluzione dell'incidente.
Una chiamata HTTP all'API Chat che utilizza il servizio Chat avanzato di Apps Script elenca tutti i messaggi dello spazio Chat.
Vertex AI riceve i messaggi elencati e genera un riepilogo.
Il servizio
DocumentApp
di Apps Script crea un documento Docs e aggiunge al documento il riepilogo di Vertex AI.L'app Google Chat per la gestione degli incidenti chiama l'API Chat per inviare un messaggio che condivide un link al documento Documenti di riepilogo.
Prepara l'ambiente
Questa sezione mostra come creare e configurare un progetto Google Cloud per l'app Chat.
Crea un progetto Google Cloud
Console Google Cloud
- Nella console Google Cloud, vai a Menu > IAM e amministrazione > Crea un progetto.
-
Nel campo Nome progetto, inserisci un nome descrittivo per il progetto.
(Facoltativo) Per modificare l'ID progetto, fai clic su Modifica. L'ID progetto non può essere modificato dopo la creazione del progetto, quindi scegli un ID che soddisfi le tue esigenze per l'intera durata del progetto.
- Nel campo Località, fai clic su Sfoglia per visualizzare le potenziali località per il tuo progetto. Quindi, fai clic su Seleziona.
- Fai clic su Crea. La console Google Cloud passa alla pagina Dashboard e il progetto viene creato entro pochi minuti.
Interfaccia a riga di comando gcloud
In uno dei seguenti ambienti di sviluppo, accedi a Google Cloud CLI (gcloud
):
-
Cloud Shell: per utilizzare un terminale online con gcloud CLI già configurato, attiva Cloud Shell.
Attiva Cloud Shell -
Shell locale: per utilizzare un ambiente di sviluppo locale,
installa e
inizializza
l'interfaccia a riga di comando gcloud.
Per creare un progetto Cloud, utilizza il comandogcloud projects create
: Sostituisci PROJECT_ID impostando l'ID del progetto che vuoi creare.gcloud projects create PROJECT_ID
Abilita la fatturazione per il progetto Cloud
Console Google Cloud
- Nella console Google Cloud, vai a Fatturazione. Fai clic su Menu > Fatturazione > I miei progetti.
- In Seleziona un'organizzazione, scegli l'organizzazione associata al tuo progetto Google Cloud.
- Nella riga del progetto, apri il menu Azioni ( ), fai clic su Modifica fatturazione e scegli l'account di fatturazione Cloud.
- Fai clic su Imposta account.
Interfaccia a riga di comando gcloud
- Per elencare gli account di fatturazione disponibili, esegui:
gcloud billing accounts list
- Collega un account di fatturazione a un progetto Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Sostituisci quanto segue:
PROJECT_ID
è l'ID progetto del progetto Cloud per cui vuoi attivare la fatturazione.BILLING_ACCOUNT_ID
è l'ID account di fatturazione da collegare al progetto Google Cloud.
Abilita le API
Console Google Cloud
Nella console Google Cloud, abilita l'API Google Chat, l'API Documenti Google, l'API SDK Admin e l'API Vertex AI.
Verifica di attivare le API nel progetto Cloud corretto, poi fai clic su Avanti.
Verifica di attivare le API corrette, quindi fai clic su Attiva.
Interfaccia a riga di comando gcloud
Se necessario, imposta il progetto Cloud corrente su quello che hai creato con il comando
gcloud config set project
:gcloud config set project PROJECT_ID
Sostituisci PROJECT_ID con l'ID progetto del progetto Cloud che hai creato.
Abilita l'API Google Chat, l'API Google Docs, l'API SDK Admin e l'API Vertex AI con il comando
gcloud services enable
:gcloud services enable chat.googleapis.com docs.googleapis.com admin.googleapis.com aiplatform.googleapis.com
Configurare l'autenticazione e l'autorizzazione
L'autenticazione e l'autorizzazione consentono all'app Chat di accedere alle risorse in Google Workspace e Google Cloud per elaborare una risposta all'incidente.
In questo tutorial pubblichi l'app internamente, quindi puoi utilizzare informazioni segnaposto. Prima di pubblicare l'app esternamente, sostituisci le informazioni del segnaposto con informazioni reali per la schermata del consenso.
Nella console Google Cloud, vai a Menu > > Branding.
Se hai già configurato il , puoi configurare le seguenti impostazioni della schermata per il consenso OAuth in Branding, Pubblico e Accesso ai dati. Se viene visualizzato il messaggio non ancora configurato, fai clic su Inizia:
- In Informazioni sull'app, in Nome dell'app, digita
Incident Management
. - In Indirizzo email dell'assistenza utente, seleziona il tuo indirizzo email o un gruppo Google appropriato.
- Fai clic su Avanti.
- In Pubblico, seleziona Interno. Se non riesci a selezionare Interno, seleziona Esterno.
- Fai clic su Avanti.
- In Informazioni di contatto, inserisci un indirizzo email a cui puoi ricevere notifiche in caso di modifiche al progetto.
- Fai clic su Avanti.
- In Fine, esamina le Norme relative ai dati utente dei servizi API di Google e, se accetti, seleziona Accetto le Norme relative ai dati utente: servizi API di Google.
- Fai clic su Continua.
- Fai clic su Crea.
- Se hai selezionato Esterno come tipo di utente, aggiungi gli utenti di test:
- Fai clic su Pubblico.
- In Utenti di test, fai clic su Aggiungi utenti.
- Inserisci il tuo indirizzo email e gli altri utenti di test autorizzati, quindi fai clic su Salva.
- In Informazioni sull'app, in Nome dell'app, digita
Fai clic su Accesso ai dati > Aggiungi o rimuovi ambiti. Viene visualizzato un riquadro con un elenco di ambiti per ogni API che hai attivato nel tuo progetto Google Cloud.
In Aggiungi ambiti manualmente, incolla i seguenti ambiti:
https://www.googleapis.com/auth/chat.spaces.create
https://www.googleapis.com/auth/chat.memberships
https://www.googleapis.com/auth/chat.memberships.app
https://www.googleapis.com/auth/chat.messages
https://www.googleapis.com/auth/documents
https://www.googleapis.com/auth/admin.directory.user.readonly
https://www.googleapis.com/auth/script.external_request
https://www.googleapis.com/auth/userinfo.email
https://www.googleapis.com/auth/cloud-platform
Fai clic su Aggiungi alla tabella.
Fai clic su Aggiorna.
Dopo aver selezionato gli ambiti richiesti dalla tua app, fai clic su Salva nella pagina Accesso ai dati.
Creare e implementare l'app Chat
Nella sezione seguente, copierai e aggiornerai un intero progetto Apps Script contenente tutto il codice dell'applicazione richiesto per la tua app Chat, quindi non dovrai copiare e incollare ogni file.
Alcune funzioni includono trattini bassi alla fine dei nomi, ad esempioprocessSlashCommand_()
da ChatApp.gs
. L'underscore nasconde la funzione dalla pagina web di inizializzazione dell'incidente quando è aperta in un browser. Per ulteriori informazioni, consulta Funzioni private.
Apps Script supporta due tipi di file: script .gs
e file .html
. Per rispettare questo supporto, il codice JavaScript lato client dell'app è incluso
nei tag <script />
e il relativo CSS è incluso nei tag <style />
all'interno
di un file HTML.
Se vuoi, puoi visualizzare l'intero progetto su GitHub.
Ecco una panoramica di ogni file:
Consts.gs
Definisce le costanti a cui fanno riferimento altri file di codice, tra cui l'ID progetto Cloud, l'ID posizione Vertex AI e l'ID comando barra per la chiusura di un incidente.
Visualizza il codice
Consts.gs
ChatApp.gs
Gestisce gli eventi di interazione con la chat, tra cui messaggi, clic sulle schede, comandi barra e dialoghi. Risponde al comando barra
/closeIncident
aprendo una finestra di dialogo per raccogliere i dettagli sulla risoluzione dell'incidente. Legge i messaggi nello spazio chiamando il metodospaces.messages.list
nell'API Chat. Recupera gli ID utente utilizzando il servizio Directory dell'SDK Admin in Apps Script.Visualizza il codice
ChatApp.gs
ChatSpaceCreator.gs
Riceve i dati del modulo inseriti dagli utenti nella pagina web di inizializzazione dell'incidente, li utilizza per configurare uno spazio Chat creandolo e compilandolo, quindi pubblica un messaggio sull'incidente.
Visualizza il codice
ChatSpaceCreator.gs
DocsApi.gs
Chiama l'API Documenti Google per creare un documento Documenti Google su Google Drive di un utente e scrive nel documento un riepilogo delle informazioni sull'incidente, create in
VertexAiApi.gs
.Visualizza il codice
DocsApi.gs
VertexAiApi.gs
Riassume la conversazione nello spazio Chat utilizzando Vertex AI. Questo riepilogo viene pubblicato in un documento appositamente creato in
DocsAPI.gs
.Visualizza il codice
VertexAiApi.gs
WebController.gs
Pubblica il sito web di inizializzazione dell'incidente.
Visualizza il codice
WebController.gs
Index.html
Il codice HTML che compone il sito web di inizializzazione dell'incidente.
Visualizza il codice
Index.html
JavaScript.html
Gestisce il comportamento del modulo, inclusi invii, errori e cancellazioni, per il sito web di inizializzazione degli incidenti. È inclusa in
Index.html
dalla funzioneinclude
personalizzata inWebController.gs
.Visualizza il codice
JavaScript.html
Stylesheet.html
Il CSS per il sito web di inizializzazione dell'incidente. È incluso in
Index.html
dalla funzione personalizzatainclude
inWebController.gs
.Visualizza il codice
Stylesheet.html
Trovare il numero e l'ID del progetto Cloud
Nella console Google Cloud, vai al tuo progetto Cloud.
Fai clic su Impostazioni e utilità > Impostazioni progetto.
Prendi nota dei valori nei campi Numero progetto e ID progetto. Puoi usarli nelle sezioni seguenti.
Crea il progetto Apps Script
Per creare un progetto Apps Script e collegarlo al tuo progetto Cloud:
- Fai clic sul seguente pulsante per aprire il progetto Apps Script Rispondi agli incidenti con Google Chat.
Apri il progetto - Fai clic su Panoramica.
- Nella pagina Panoramica, fai clic su
Crea una copia.
Assegna un nome alla copia del progetto Apps Script:
Fai clic su Copia di Rispondere agli incidenti con Google Chat.
In Titolo del progetto, digita
Incident Management Chat app
.Fai clic su Rinomina.
Nella copia del progetto Apps Script, vai al file
Consts.gs
e sostituisciYOUR_PROJECT_ID
con l'ID del tuo progetto Cloud.
Imposta il progetto cloud del progetto Apps Script
- Nel progetto Apps Script,
fai clic su
Impostazioni progetto.
- In Progetto Google Cloud (Google Cloud), fai clic su Cambia progetto.
- In Numero progetto Google Cloud, incolla il numero del tuo progetto Cloud.
- Fai clic su Imposta progetto. Il progetto Cloud e il progetto Apps Script sono ora collegati.
Creare un deployment di Apps Script
Ora che tutto il codice è in atto, esegui il deployment del progetto Apps Script. L'ID di deployment viene utilizzato per configurare l'app Chat in Google Cloud.
In Apps Script, apri il progetto dell'app di risposta agli incidenti.
Fai clic su Esegui il deployment > Nuovo deployment.
Se Componente aggiuntivo e App web non sono già selezionati, accanto a Seleziona tipo, fai clic sui tipi di deployment
e seleziona Componente aggiuntivo e App web.
In Descrizione, inserisci una descrizione per questa versione, ad esempio
Complete version of incident management app
.In Esegui come, seleziona Utente che accede all'app web.
In Chi ha accesso, seleziona Tutti gli utenti della tua organizzazione Workspace, dove "la tua organizzazione Workspace" è il nome della tua organizzazione Google Workspace.
Fai clic su Esegui il deployment. Apps Script segnala il deployment riuscito e fornisce un ID deployment e un URL per la pagina web di inizializzazione dell'incidente.
Prendi nota dell'URL dell'app web da visitare in un secondo momento quando avvii un incidente. Copia l'ID deployment. Utilizza questo ID durante la configurazione dell'app Chat nella console Google Cloud.
Fai clic su Fine.
Configurare l'app Chat nella console Google Cloud
Questa sezione mostra come configurare l'API Google Chat nella console Google Cloud con informazioni sulla tua app di Chat, incluso l'ID del deployment che hai appena creato dal progetto Apps Script.
Nella console Google Cloud, fai clic su Menu > Altri prodotti > Google Workspace > Libreria di prodotti > API Google Chat > Gestisci > Configurazione.
In Nome app, digita
Incident Management
.In URL avatar, digita
https://developers.google.com/chat/images/quickstart-app-avatar.png
.In Descrizione, digita
Responds to incidents.
.Fai clic sul pulsante di attivazione/disattivazione Attiva funzionalità interattive per impostarlo su On.
In Funzionalità, seleziona Ricevi messaggi 1:1, Partecipa a spazi e conversazioni di gruppo.
Nella sezione Impostazioni di connessione, seleziona Apps Script.
In ID deployment, incolla l'ID deployment di Apps Script che hai copiato in precedenza dal deployment del progetto Apps Script.
Registra un comando con barra utilizzato dall'app Chat implementata completamente:
In Comandi slash, fai clic su Aggiungi un comando slash.
In Nome, digita
/closeIncident
.In ID comando, digita
1
.In Descrizione, digita
Closes the incident being discussed in the space.
Seleziona Apre una finestra di dialogo.
Fai clic su Fine. Il comando barra è registrato e elencato.
In Visibilità, seleziona Rendi disponibile l'app di chat a utenti e gruppi specifici nel tuo dominio Workspace e inserisci il tuo indirizzo email.
In Log, seleziona Errori di log in Logging.
Fai clic su Salva. Viene visualizzato un messaggio che indica che la configurazione è stata salvata e che l'app è pronta per il test.
Testare l'app Chat
Per testare l'app Chat per la gestione degli incidenti, avvia un incidente dalla pagina web e verifica che l'app Chat funzioni come previsto:
Vai all'URL dell'app web di deployment di Apps Script.
Quando Apps Script richiede l'autorizzazione per accedere ai tuoi dati, fai clic su Esamina autorizzazioni, accedi con un Account Google appropriato nel tuo dominio Google Workspace e fai clic su Consenti.
Si apre la pagina web di inizializzazione dell'incidente. Inserisci le informazioni sul test:
- In Incident title (Titolo incidente), digita
The First Incident
. - Se vuoi, in Risponditori agli incidenti, inserisci gli indirizzi email dei tuoi colleghi che rispondono agli incidenti. Devono essere utenti con un account Google Chat nella tua organizzazione Google Workspace, altrimenti la creazione dello spazio non andrà a buon fine. Non inserire il tuo indirizzo email, perché viene incluso automaticamente.
- In Messaggio iniziale, digita
Testing the incident management Chat app.
- In Incident title (Titolo incidente), digita
Fai clic su Crea spazio di Chat. Viene visualizzato un messaggio
creating space
.Dopo aver creato lo spazio, viene visualizzato un messaggio
Space created!
. Fai clic su Apri spazio per aprire lo spazio in Chat in una nuova scheda.Se vuoi, tu e gli altri responsabili della risposta agli incidenti potete inviare messaggi nello spazio. L'app riassume questi messaggi utilizzando Vertex AI e condivide un documento di retrospettiva.
Per terminare la risposta all'incidente e avviare la procedura di risoluzione, digita
/closeIncident
nello spazio Chat. Si apre una finestra di dialogo per la gestione degli incidenti.In Chiudi incidente, inserisci una descrizione per la risoluzione dell'incidente, come
Test complete
.Fai clic su Chiudi incidente.
L'app Gestione incidenti elenca i messaggi nello spazio, li riassume con Vertex AI, incolla il riepilogo in un documento di Documenti Google e condivide il documento nello spazio.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, ti consigliamo di eliminare il progetto Cloud.
- Nella console Google Cloud, vai alla pagina Gestisci risorse. Fai clic su Menu > IAM e amministrazione > Gestisci risorse.
- Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare e fai clic su Elimina .
- Nella finestra di dialogo, digita l'ID progetto e fai clic su Chiudi per eliminare il progetto.
Argomenti correlati
- Rispondi a domande basate sulle conversazioni di Chat con un'app di chat basata sull'IA di Gemini
- Gestire i progetti con Google Chat, Vertex AI e Firestore
- L'app di risposta agli incidenti si autentica con le credenziali utente per chiamare le API
e invocare i servizi Google Cloud, come l'API Chat e l'API Vertex AI.
Ciò significa che l'utente che inizializza un incidente deve avere accesso a questi servizi. Per rendere l'app più solida, ti consigliamo di chiamare l'API Vertex AI con un account di servizio anziché con le credenziali dell'utente che invoca il comando
/closeIncident
slash. Per assistenza sulla configurazione di un account di servizio per l'API Vertex AI, consulta Utilizzare un account di servizio personalizzato.