In questa pagina vengono descritti gli eventi di Google Chat che un'app Google Chat possono abbonarsi utilizzando l'API Google Workspace Events. Dopo aver deciso tipi di eventi di cui hai bisogno, crea un abbonamento per iniziare a ricevere eventi da Google Chat.
Oltre a iscriverti agli eventi, puoi anche eseguire query su eventi richiamando l'API Chat. Chiamare l'API Chat consente di recuperare eventi su base periodica o di recuperare sugli eventi a cui potresti non aver sottoscritto un abbonamento a causa di un'interruzione. Per ulteriori informazioni su come ricevere e rispondere agli eventi di Chat, vedi Lavora con gli eventi di Google Chat nella documentazione di Chat.
Eventi di Chat supportati
Gli abbonamenti a Google Workspace ti consentono di ricevere eventi relativi a i seguenti tipi di modifiche in Chat:
- Messaggi nuovi, aggiornati o eliminati nello spazio.
- Reazioni nuove o rimosse a un messaggio.
- Membri nuovi, aggiornati o rimossi nello spazio.
- Modifiche allo spazio a cui hai effettuato l'iscrizione, ad esempio il nome o la descrizione aggiornati di uno spazio.
Risorse che puoi monitorare per gli eventi
Per ricevere eventi, devi specificare una risorsa di Chat da monitorare, denominata risorsa di destinazione della sottoscrizione.
L'API Google Workspace Events supporta le seguenti risorse di destinazione per Chat:
Risorsa di destinazione | Formato | Limitazioni |
---|---|---|
Spazio |
dove SPACE è l'ID nella
nome risorsa della risorsa |
L'utente di Chat che autorizza l'abbonamento deve essere un membro dello spazio tramite Google Workspace o Google Account. |
Tutti gli spazi per un utente |
|
L'abbonamento riceve solo gli eventi relativi agli spazi in cui l'utente si trova a un membro tramite il suo Account Google Workspace o Google. |
Utente |
dove USER è l'ID nella
nome risorsa della risorsa |
L'abbonamento riceve soltanto gli eventi relativi all'utente che autorizzato l'abbonamento. Un utente non può autorizzare un abbonamento su per conto di altri utenti. |
Tipi di eventi per la creazione di sottoscrizioni
Quando crei un abbonamento, utilizzi
eventTypes[]
per specificare quali tipi di eventi vuoi ricevere. I tipi di evento sono
formattati in base alla specifica CloudEvents, come
google.workspace.APPLICATION.RESOURCE.VERSION.ACTION
.
Ad esempio, per ricevere eventi relativi agli utenti che partecipano a una chat
spazio, specifichi lo spazio come risorsa di destinazione e il tipo di evento come
google.workspace.chat.membership.v1.created
. Per ricevere eventi relativi a un determinato
l'utente che partecipa a uno spazio, specifichi l'utente come risorsa di destinazione e
tipo di evento come google.workspace.chat.membership.v1.created
. Per scoprire di più su
come funzionano gli eventi, vedi Struttura di Google Workspace
eventi.
La tabella seguente mostra i tipi di eventi supportati per gli abbonamenti a spazi e abbonamenti agli utenti. Per scoprire di più sulle eccezioni cosa attiva un evento, consulta Limitazioni.
Tipo di evento | Formato | Dati delle risorse | ||
---|---|---|---|---|
Abbonamenti a spazi | ||||
È stato pubblicato un messaggio. |
|
|
||
Viene aggiornato un messaggio. |
|
|
||
È stato eliminato un messaggio. |
|
|
||
Viene creata una reazione. |
|
|
||
Viene eliminata una reazione. |
|
|
||
Un membro è stato aggiunto allo spazio. |
|
|
||
Un membro è stato aggiornato nello spazio. |
|
|
||
Un membro è stato rimosso dallo spazio. |
|
|
||
Lo spazio è aggiornato. |
|
|
||
Lo spazio è stato eliminato. |
|
|
||
Abbonamenti per gli utenti | ||||
L'utente diventa membro di uno spazio.
Non tutti i nuovi membri attivano eventi. Per maggiori dettagli, vedi Limitazioni |
|
|
||
L'appartenenza dell'utente a uno spazio viene aggiornata. |
|
|
||
L'utente viene rimosso come membro diretto di uno spazio. |
|
|
Tipi di eventi batch (solo output)
Oltre a ricevere i tipi di eventi a cui ti iscrivi, i tuoi L'app Chat potrebbe anche ricevere eventi batch. Un evento batch è un evento che rappresenta molti eventi dello stesso tipo che si verificano in un breve un periodo di tempo. Il payload di un evento batch contiene un elenco di tutte le modifiche Google Cloud.
Ad esempio, se un utente aggiunge 20 utenti contemporaneamente a uno spazio, i tuoi
L'app Chat potrebbe ricevere un evento batch
(google.workspace.chat.membership.v1.batchCreated
) Il payload dell’evento contiene
un elenco di tutte le nuove risorse Membership
create quando l'utente
ha aggiunto i membri allo spazio.
Ricevi un evento batch per qualsiasi tipo di evento a cui hai sottoscritto l'abbonamento, quindi
Non devi specificare eventi batch quando crei una sottoscrizione. Per
Ad esempio, se ti iscrivi alle nuove reazioni
(google.workspace.chat.reaction.v1.created
), il tuo
L'app Chat è configurata automaticamente per ricevere messaggi collettivi
eventi di reazione (google.workspace.chat.reaction.v1.batchCreated
).
La tabella seguente mostra i possibili eventi batch per una sottoscrizione:
Tipo di evento batch | Formato |
---|---|
Vengono pubblicati più messaggi. |
|
Vengono aggiornati più messaggi. |
|
Vengono eliminati più messaggi. |
|
Vengono create più reazioni. |
|
Vengono eliminate più reazioni. |
|
Più membri vengono aggiunti allo spazio a cui hai effettuato l'iscrizione oppure l'utente che ha effettuato l'iscrizione è stato aggiunto a più spazi. |
|
Gli abbonamenti multipli vengono aggiornati nello spazio a cui hai effettuato l'iscrizione o per l'utente che ha effettuato l'iscrizione. |
|
Più membri vengono rimossi dallo spazio a cui hai effettuato l'iscrizione oppure l'utente che ha effettuato l'iscrizione è stato rimosso da più spazi. |
|
Lo spazio ha diversi aggiornamenti. |
|
Dati sugli eventi
Questa sezione descrive i dati sugli eventi e i payload di esempio per gli eventi in Chatta.
Quando il tuo abbonamento a Google Workspace riceve un evento da
Chat, il
data
contiene il payload per l’evento. Questo payload contiene informazioni
Risorsa Google Workspace modificata. Ad esempio, se hai sottoscritto un abbonamento a
per gli eventi di appartenenza in uno spazio, il payload per questi eventi contiene informazioni
su
spaces.membership
risorsa che è stata modificata.
Dati delle risorse nel payload dell'evento
Quando crei una sottoscrizione, puoi specificare se vuoi che il payload includi i dettagli della risorsa o solo il nome della risorsa. Per Ad esempio, se vuoi ricevere eventi relativi ai membri di un puoi specificare i campi di una risorsa di appartenenza che vuoi ricevere nel payload dell'evento.
La tabella seguente fornisce esempi di payload JSON per una sottoscrizione a
lo spazio di Chat spaces/AAAABBBBBB
. Per ogni evento che
riceve un abbonamento, il payload viene visualizzato nel campo data
dell'evento:
Esempio | Tipo di evento | Payload JSON |
---|---|---|
Un utente pubblica nello spazio un messaggio con scritto "Hello world". |
|
Include i dati delle risorse
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD", "sender": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "2023-09-07T21:37:36.260127Z", "text": "Hello world", "thread": { "name": "spaces/AAAABBBBBB/threads/EEEEEEEEEEEE" }, "space": { "name": "spaces/AAAABBBBBB" }, "argumentText": "Hello world" } } Esclude i dati delle risorse
{ "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD" } } |
Un utente diventa un gestore dello spazio. |
|
Include i dati delle risorse
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MANAGER" } } Esclude i dati delle risorse
{ "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } } |
Un utente aggiorna la descrizione dello spazio in "Team di vendita di Cymbal Labs". | google.workspace.chat.space.v1.updated |
Include i dati delle risorse
{ "space": { "name": "spaces/AAAABBBBBB", "displayName": "Cymbal Sales", "spaceThreadingState": "THREADED_MESSAGES", "spaceType": "SPACE", "spaceDetails": { "description": "Sales team for Cymbal Labs." }, "spaceHistoryState": "HISTORY_ON" } } Esclude i dati delle risorse
{ "space": { "name": "spaces/AAAABBBBBB" } } |
Due utenti di Chat sono stati aggiunti allo spazio contemporaneamente. | google.workspace.chat.membership.v1.batchCreated |
Include i dati delle risorse
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/987654321234567890", "state": "JOINED", "member": { "name": "users/987654321234567890", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } } ] } Esclude i dati delle risorse
{ "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/98765432123456789019" } } ] } |
Un utente reagisce a un messaggio con l'emoji 😊. | google.workspace.chat.reaction.v1.created |
Include i dati delle risorse
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } } I dati delle risorse vengono omessi
{ "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" } } |
Gli utenti reagiscono a un messaggio con le emoji 😊 e ⧖. | google.workspace.chat.reaction.v1.batchCreated |
Include i dati delle risorse
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } }, { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", "user": { "name": "users/98765431234564321", "type": "HUMAN" }, "emoji": { "unicode": "😸" } } } ] } I dati delle risorse vengono omessi
{ "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" }, "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", } } ] } |
Limitazioni
-
Per le iscrizioni agli utenti, gli eventi relativi ai nuovi membri in messaggi diretti o chat di gruppo senza nome (
google.workspace.chat.membership.v1.created
), si attivano solo dopo la pubblicazione del primo messaggio. - Per ricevere eventi di iscrizione, l'utente deve essere un membro diretto dello spazio. Se un utente è stato aggiunto, aggiornato o rimosso indirettamente a uno spazio tramite un gruppo Google, l'abbonamento non riceveranno gli eventi associati ai membri. Per capire come funzionano le iscrizioni ai gruppi Google, vedi Aggiungere un gruppo Google a uno spazio.
Argomenti correlati
- Struttura degli eventi di Google Workspace
- Scegli gli ambiti OAuth
- Crea una sottoscrizione per ricezione di eventi di Chat