Questa pagina descrive come impostare un webhook per inviare messaggi asincroni a un Spazio di Chat che utilizza trigger esterni. Ad esempio, puoi configurare un'applicazione di monitoraggio per avvisare il personale sempre disponibile Chatta quando un server non è disponibile. Per inviare un messaggio sincrono con un'app di Chat, vedi Inviare un messaggio.
Con questo tipo di architettura gli utenti non possono interagire con il webhook o con l'esterno perché la comunicazione è unidirezionale. I webhook non sono conversazionali. Non può rispondere o ricevere messaggi dagli utenti o Eventi di interazione con l'app di Chat. Per rispondere ai messaggi: sviluppare un'app di Chat anziché un webhook.
Anche se un webhook non è tecnicamente un'app di Chat: i webhook collegano le applicazioni utilizzando Richieste HTTP: in questa pagina si parla di app di Chat per semplificazione. Ogni webhook funziona solo nello spazio di Chat in in cui è registrato. I webhook in arrivo funzionano nei messaggi diretti, ma solo quando tutti gli utenti hanno App di chat attivate. Non puoi pubblicare webhook su Google Workspace Marketplace.
Il seguente diagramma mostra l'architettura di un webhook collegato a Chat:
Nel diagramma precedente, un'app di Chat include quanto segue flusso di informazioni:
- La logica dell'app Chat riceve informazioni servizi di terze parti esterni, come un sistema di project management o un per la vendita di biglietti.
- La logica dell'app di Chat è ospitata in un cloud sistema on-premise in grado di inviare messaggi utilizzando un URL webhook a un uno spazio di Chat specifico.
- Gli utenti possono ricevere messaggi dall'app Chat in spazio di Chat specifico, ma non riesci a interagire con App Chat.
Prerequisiti
Python
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat. La tua organizzazione Google Workspace deve consentire agli utenti aggiungere e utilizzare i webhook in arrivo.
- Python 3.6 o versioni successive
- Lo strumento di gestione dei pacchetti pip
La raccolta
httplib2
. Per installare la libreria, esegui questo comando nell'interfaccia a riga di comando:pip install httplib2
Uno spazio di Google Chat. Per crearne uno utilizzando l'API Google Chat, consulta Crea uno spazio. Per crearne uno in Chat: visita il documentazione del Centro assistenza.
Node.js
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat. La tua organizzazione Google Workspace deve consentire agli utenti aggiungere e utilizzare i webhook in arrivo.
- Node.js 14 o versioni successive
- npm strumento di gestione dei pacchetti
- Uno spazio di Google Chat. Per crearne uno utilizzando l'API Google Chat, consulta Crea uno spazio. Per crearne uno in Chat: visita il documentazione del Centro assistenza.
Java
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat. La tua organizzazione Google Workspace deve consentire agli utenti aggiungere e utilizzare i webhook in arrivo.
- Java 11 o versioni successive
- Lo strumento di gestione dei pacchetti Maven
- Uno spazio di Google Chat. Per crearne uno utilizzando l'API Google Chat, consulta Crea uno spazio. Per crearne uno in Chat: visita il documentazione del Centro assistenza.
Apps Script
- Un'azienda o un'impresa Google Workspace con accesso a Google Chat. La tua organizzazione Google Workspace deve consentire agli utenti aggiungere e utilizzare i webhook in arrivo.
- Creare un progetto Apps Script autonomo e attivare il Servizio di chat avanzato.
- Uno spazio di Google Chat. Per crearne uno utilizzando l'API Google Chat, consulta Crea uno spazio. Per crearne uno in Chat: visita il documentazione del Centro assistenza.
Crea un webhook
Per creare un webhook, registralo nello spazio di Chat in cui vuoi ricevere messaggi e scrivere uno script che li invii.
Registra il webhook in arrivo
- In un browser, apri Chatta. I webhook non sono configurabili dall'app mobile Chat.
- Vai allo spazio in cui vuoi aggiungere un webhook.
- Accanto al titolo dello spazio, fai clic sull'icona Espandi la freccia Altro, quindi fai clic su App e integrazioni.
Fai clic su
Aggiungi webhook.Nel campo Nome, inserisci
Quickstart Webhook
.Nel campo URL avatar, inserisci
https://developers.google.com/chat/images/chat-product-icon.png
.Fai clic su Salva.
Per copiare l'URL webhook, fai clic su
Altro, quindi fai clic su Copia link.
Scrivi lo script del webhook
Lo script webhook di esempio invia un messaggio allo spazio in cui si trova il webhook
registrati inviando una richiesta POST
all'URL webhook. La
L'API Chat risponde con un'istanza di
Message
Seleziona una lingua per scoprire come creare uno script webhook:
Python
Nella directory di lavoro, crea un file denominato
quickstart.py
.Incolla il codice seguente in
quickstart.py
:Sostituisci il valore della variabile
url
con l'URL webhook che che hai copiato durante la registrazione del webhook.
Node.js
Nella directory di lavoro, crea un file denominato
index.js
.Incolla il codice seguente in
index.js
:Sostituisci il valore della variabile
url
con l'URL webhook che che hai copiato durante la registrazione del webhook.
Java
Nella directory di lavoro, crea un file denominato
pom.xml
.In
pom.xml
, copia e incolla quanto segue:Nella directory di lavoro, crea la seguente struttura di directory
src/main/java
.Nella directory
src/main/java
, crea un file denominatoApp.java
.Incolla il codice seguente in
App.java
:Sostituisci il valore della variabile
URL
con l'URL webhook che hai copiato durante la registrazione del webhook.
Apps Script
In un browser, vai a Apps Script.
Fai clic su Nuovo progetto
Incolla il seguente codice:
Sostituisci il valore della variabile
url
con l'URL webhook che hai copiato durante la registrazione del webhook.
Esegui lo script webhook
In un'interfaccia a riga di comando, esegui lo script:
Python
python3 quickstart.py
Node.js
node index.js
Java
mvn compile exec:java -Dexec.mainClass=App
Apps Script
- Fai clic su Esegui.
Quando esegui il codice, il webhook invia un messaggio allo spazio in cui l'ha registrato.
Avviare o rispondere a un thread di messaggi
Specifica
spaces.messages.thread.threadKey
nel corpo della richiesta. A seconda che tu abbia iniziato rispondendo a un thread, utilizza i seguenti valori perthreadKey
:Se avvii un thread, imposta
threadKey
su una stringa arbitraria, ma annota questo valore per pubblicare una risposta nel thread.Se rispondi a un thread, specifica il valore
threadKey
impostato quando thread è stato avviato. Ad esempio, per pubblicare una risposta al thread in cui messaggio iniziale utilizzatoMY-THREAD
, impostaMY-THREAD
.
Definisci il comportamento del thread se non viene trovato il valore
threadKey
specificato:Rispondi a un thread o avvia un nuovo thread. Aggiungi il parametro
messageReplyOption=REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD
parametro in l'URL webhook. Il passaggio di questo parametro URL fa sì che Chat per cercare un thread esistente utilizzando il valorethreadKey
specificato. Se uno , il messaggio viene pubblicato come risposta a quel thread. Se nessuna è trovato, il messaggio avvia un nuovo thread corrispondentethreadKey
.Rispondi a un thread o non fare nulla. Aggiungi il parametro
messageReplyOption=REPLY_MESSAGE_OR_FAIL
all'URL webhook. Il passaggio di questo parametro URL fa sì che Chat per cercare un thread esistente utilizzando il valorethreadKey
specificato. Se uno , il messaggio viene pubblicato come risposta a quel thread. Se nessuna è trovato, il messaggio non viene inviato.
Per scoprire di più, visita la pagina
messageReplyOption
.
Il seguente esempio di codice avvia o risponde a un thread di messaggi:
Python
Node.js
Apps Script
Argomenti correlati
- Scegliere un'architettura dell'app di Chat
- Inviare messaggi relativi alle schede
- Formattare i messaggi