Creare un'app Google Chat protetta da un firewall con Pub/Sub (original) (raw)
Per iniziare
Planimetria
Creazione
Utilizzare gli spazi
- Creare uno spazio denominato
- Creare uno spazio e aggiungere membri
- Visualizzare i dettagli di uno spazio
- Trovare uno spazio per i messaggi diretti
- Trovare una chat di gruppo
- Elenca spazi
- Aggiornare uno spazio
- Eliminare uno spazio
- Visualizzare le impostazioni di notifica dello spazio di un utente
- Aggiornare le impostazioni di notifica dello spazio di un utente
Deployment, test e risoluzione dei problemi
Convertire un'app di Chat interattiva in un componente aggiuntivo di Google Workspace
Pubblicare su Google Workspace Marketplace
Requisiti di elaborazione e revisione per le app di Chat pubbliche
Gestire Chat come amministratore di Google Workspace
Creare un'app Google Chat protetta da un firewall con Pub/Sub
Questa pagina spiega come creare un'app di Chat utilizzandoPub/Sub. Questo tipo di architettura per un'app di Chat è utile se la tua organizzazione ha un firewall, che può impedire a Chat di inviare messaggi alla tua app di Chat, o se l' app di Chat utilizza l'API Google Workspace Events. Tuttavia, questa architettura presenta le seguenti limitazioni dovute al fatto che queste app di Chat possono inviare e riceveresolo messaggi asincroni:
- Non è possibile utilizzare le finestre di dialogonei messaggi. Utilizza invece unmessaggio con scheda.
- Non è possibile aggiornare le singole schede con una risposta sincrona. Aggiorna invece l'intero messaggio chiamando ilpatchmetodo.
Il seguente diagramma mostra l'architettura di un'app di Chat creata con Pub/Sub:
Nel diagramma precedente, un utente che interagisce con un'app di Chat Pub/Sub ha il seguente flusso di informazioni:
- Un utente invia un messaggio in Chat a un' app di Chat, in un messaggio diretto o in uno spazio di Chat, oppure si verifica un evento in uno spazio di Chat per il quale l'app di Chat ha unasottoscrizione attiva.
- Chat invia il messaggio a un argomento Pub/Sub.
- Un server delle applicazioni, ovvero un sistema cloud o on-premise che contiene la logica dell'app di Chat, si abbona all'argomento Pub/Sub per ricevere il messaggio tramite il firewall.
- Se vuoi, l'app di Chat può chiamare l'API Chat per pubblicare messaggi in modo asincrono o eseguire altre operazioni.
Prerequisiti
Quando crei l'app di Chat, devi deselezionare Crea questa app di Chat come componente aggiuntivo di Google Workspace nella pagina di configurazione dell'API Chat nella console Google Cloud. ConsultaPubblicare l'app su Google Chat.
Node.js
- Un account Google Workspace Business o Enterprisecon accesso a Google Chat.
- Un progetto Google Cloud con la fatturazione abilitata. Per verificare che la fatturazione sia abilitata per un progetto esistente, consulta Verifica lo stato di fatturazione dei progetti. Per creare un progetto e configurare la fatturazione, consultaCrea un progetto Google Cloud.
- Node.js 14 o versioni successive
- Lo strumento di gestione dei pacchetti npm
- Un progetto Node.js inizializzato. Per inizializzare un nuovo progetto, crea e passa a una nuova cartella, quindi esegui il comando seguente nell'interfaccia a riga di comando:
npm init
Python
- Un account Google Workspace Business o Enterprisecon accesso a Google Chat.
- Un progetto Google Cloud con la fatturazione abilitata. Per verificare che la fatturazione sia abilitata per un progetto esistente, consulta Verifica lo stato di fatturazione dei progetti. Per creare un progetto e configurare la fatturazione, consultaCrea un progetto Google Cloud.
- Python 3.6 o versioni successive
- Lo strumento di gestione dei pacchetti pip
Java
- Un account Google Workspace Business o Enterprisecon accesso a Google Chat.
- Un progetto Google Cloud con la fatturazione abilitata. Per verificare che la fatturazione sia abilitata per un progetto esistente, consulta Verifica lo stato di fatturazione dei progetti. Per creare un progetto e configurare la fatturazione, consultaCrea un progetto Google Cloud.
- Java 11 o versioni successive
- Lo strumento di gestione dei pacchetti Maven
Configurare l'ambiente
Prima di utilizzare le API di Google, devi attivarle in un progetto Google Cloud. Puoi attivare una o più API in un singolo progetto Google Cloud.
- Nella console Google Cloud, abilita l'API Google Chat e l'API Pub/Sub.
Abilita le API
Configurare Pub/Sub
- Crea un argomento Pub/Suba cui l'API Chat può inviare messaggi. Ti consigliamo di utilizzare un singolo argomento per ogni app di Chat.
- Concedi a Chat l'autorizzazione a pubblicarenell'argomento assegnando il ruolo Publisher Pub/Sub al seguente account di servizio:
chat-api-push@system.gserviceaccount.com - Crea un account di servizioper l'app di Chat per l'autorizzazione con Pub/Sub e Chat e salva il file della chiave privata nella directory di lavoro.
- Crea una sottoscrizione pullper l'argomento.
- Assegna il ruolo Sottoscrittore Pub/Sub alla sottoscrizioneper l'account di servizio che hai creato in precedenza.
Scrivere lo script
Node.js
- In un'interfaccia a riga di comando, fornisci le credenziali dell'account di servizio:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH - In un'interfaccia a riga di comando, fornisci l'ID progetto Google Cloud:
export PROJECT_ID=PROJECT_ID - In un'interfaccia a riga di comando, fornisci l'ID sottoscrizione per la sottoscrizione Pub/Sub che hai creato in precedenza:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID - Nella directory di lavoro, crea un file denominato
package.json. - Nel file
package.json, incolla il seguente codice: - Nella directory di lavoro, crea un file denominato
index.js. - In
index.js, incolla il seguente codice:
Python
- In un'interfaccia a riga di comando, fornisci le credenziali dell'account di servizio:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH - In un'interfaccia a riga di comando, fornisci l'ID progetto Google Cloud:
export PROJECT_ID=PROJECT_ID - In un'interfaccia a riga di comando, fornisci l'ID sottoscrizione per la sottoscrizione Pub/Sub che hai creato in precedenza:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID - Nella directory di lavoro, crea un file denominato
requirements.txt. - Nel file
requirements.txt, incolla il seguente codice: - Nella directory di lavoro, crea un file denominato
app.py. - In
app.py, incolla il seguente codice:
Java
- In un'interfaccia a riga di comando, fornisci le credenziali dell'account di servizio:
export GOOGLE_APPLICATION_CREDENTIALS=SERVICE_ACCOUNT_FILE_PATH - In un'interfaccia a riga di comando, fornisci l'ID progetto Google Cloud:
export PROJECT_ID=PROJECT_ID - In un'interfaccia a riga di comando, fornisci l'ID sottoscrizione per la sottoscrizione Pub/Sub che hai creato in precedenza:
export SUBSCRIPTION_ID=SUBSCRIPTION_ID - Nella directory di lavoro, crea un file denominato
pom.xml. - Nel file
pom.xml, incolla il seguente codice: - Nella directory di lavoro, crea la struttura di directory
src/main/java. - Nella directory
src/main/java, crea un file denominatoMain.java. - In
Main.java, incolla il seguente codice:
Pubblicare l'app su Chat
- Nella console Google Cloud, vai a Menu> API e servizi> API e servizi abilitati> API Google Chat> Configurazione.
Vai alla configurazione - Configura l'app di Chat per Pub/Sub:
- Deseleziona Crea questa app di Chat come componente aggiuntivo di Google Workspace. Viene visualizzata una finestra di dialogo che ti chiede di confermare. Nella finestra di dialogo, fai clic su Disattiva.
- In Nome app, inserisci
Quickstart App. - In URL avatar, inserisci
https://developers.google.com/chat/images/quickstart-app-avatar.png. - In Descrizione, inserisci
Quickstart app. - In Funzionalità, seleziona Partecipa a spazi e conversazioni di gruppo.
- In Impostazioni di connessione, seleziona Cloud Pub/Sub e incolla il nome dell'argomento Pub/Sub che hai creato in precedenza.
- In Visibilità, seleziona Rendi disponibile questa app Google Chat a utenti e gruppi specifici nel tuo dominio e inserisci il tuo indirizzo email.
- In Log, seleziona Registra gli errori in Logging.
- Fai clic su Salva.
L'app è pronta per ricevere e rispondere ai messaggi su Chat.
Eseguire lo script
In un'interfaccia a riga di comando, passa alla directory di lavoro ed esegui lo script:
Node.js
npm install
npm start
Python
python -m venv env
source env/bin/activate
pip install -r requirements.txt -U
python app.py
Java
mvn compile exec:java -Dexec.mainClass=Main
Quando esegui il codice, l'applicazione inizia ad ascoltare i messaggi pubblicati nell'argomento Pub/Sub.
Testare l'app di Chat
Per testare l'app di Chat, apri uno spazio di messaggi diretti con l'app di Chat e invia un messaggio:
- Apri Google Chat utilizzando l'account Google Workspace che hai fornito quando ti sei aggiunto come tester di fiducia.
Vai a Google Chat - Fai clic su Nuova chat.
- Nel campo Aggiungi una o più persone, digita il nome della tua app di Chat.
- Seleziona la tua app di Chat dai risultati. Si apre un messaggio diretto.
- Nel nuovo messaggio diretto con l'app, digita
Helloe premienter.
Per aggiungere tester di fiducia e scoprire di più sui test delle funzionalità interattive, consultaTestare le funzionalità interattive per le app Google Chat.
Risoluzione dei problemi
Quando un'app o unascheda di Google Chat restituisce un errore, l' interfaccia di Chat mostra un messaggio che indica "Si è verificato un problema". o "Impossibile elaborare la richiesta". A volte l'interfaccia utente di Chat non mostra alcun messaggio di errore, ma l'app o la scheda di Chat produce un risultato imprevisto; ad esempio, un messaggio con scheda potrebbe non essere visualizzato.
Anche se nell'interfaccia utente di Chat potrebbe non essere visualizzato un messaggio di errore, sono disponibili messaggi di errore descrittivi e dati di log per aiutarti a correggere gli errori quando la registrazione degli errori per le app di Chat è attiva. Per assistenza nella visualizzazione, nel debug e nella correzione degli errori, consultaRisolvere e correggere gli errori di Google Chat.
Liberare spazio
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 suMenu > IAM e amministrazione > Gestisci risorse.
Vai a Resource Manager - Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic suElimina .
- Nella finestra di dialogo, digita l'ID progetto, quindi fai clic su Chiudi per eliminare il progetto.
- Per aggiungere altre funzionalità alla tua app di Chat, consulta le seguenti sezioni:
- Scegliere un'architettura dell'app di Chat
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2026-04-01 UTC.