Event

Un evento di interazione con l'app Google Chat che rappresenta e contiene i dati relativi all'interazione di un utente con un'app di Chat. Per configurare l'app di Chat in modo che riceva gli eventi di interazione, consulta Ricevi e rispondi alle interazioni degli utenti.

Oltre a ricevere eventi dalle interazioni degli utenti, le app di Chat possono ricevere eventi relativi alle modifiche agli spazi, ad esempio quando un nuovo membro viene aggiunto a uno spazio. Per scoprire di più sugli eventi degli spazi, consulta Utilizza gli eventi di Google Chat.

Avviso: questo oggetto evento viene utilizzato solo per le app di Chat che non sono componenti aggiuntivi. Se la tua app di Chat è creata come componente aggiuntivo di Google Workspace, consulta invece la sezione Oggetti evento dei componenti aggiuntivi nella documentazione dei componenti aggiuntivi. Per verificare il tipo di evento ricevuto dalla tua app, consulta Determinare il tipo di evento.

Rappresentazione JSON
{
  "type": enum (EventType),
  "eventTime": string,
  "token": string,
  "threadKey": string,
  "message": {
    object (Message)
  },
  "user": {
    object (User)
  },
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "action": {
    object (FormAction)
  },
  "configCompleteRedirectUrl": string,
  "isDialogEvent": boolean,
  "dialogEventType": enum (DialogEventType),
  "common": {
    object (CommonEventObject)
  },
  "appCommandMetadata": {
    object (AppCommandMetadata)
  }
}
Campi
type

enum (EventType)

Il tipo di interazione dell'utente con l'app di Chat, ad esempio MESSAGE o ADDED_TO_SPACE.

eventTime

string (Timestamp format)

Il timestamp che indica quando si è verificato l'evento di interazione.

token

string

Un valore segreto che le app di Chat legacy possono utilizzare per verificare se una richiesta proviene da Google. Google genera il token in modo casuale e il suo valore rimane statico. Puoi ottenere, revocare o rigenerare il token dalla pagina di configurazione dell'API Chat nella console Google Cloud.

Le app di Chat moderne non utilizzano questo campo. Non è presente nelle risposte dell'API e nella pagina di configurazione dell'API Chat.

threadKey

string

La chiave definita dall'app di Chat per il thread correlato all'evento di interazione. Per saperne di più, consulta spaces.messages.thread.threadKey.

message

object (Message)

Per gli eventi di interazione ADDED_TO_SPACE, CARD_CLICKED e MESSAGE, il messaggio che ha attivato l'evento di interazione, se applicabile.

user

object (User)

L'utente che ha interagito con l'app di Chat.

thread

object (Thread)

Il thread in cui l'utente ha interagito con l'app di Chat. Potrebbe trattarsi di un nuovo thread creato da un messaggio appena inviato. Questo campo viene compilato se l'evento di interazione è associato a un messaggio o a un thread specifico.

space

object (Space)

Lo spazio in cui l'utente ha interagito con l'app Chat.

action

object (FormAction)

Per gli eventi di interazione CARD_CLICKED, i dati dell'azione del modulo associati quando un utente fa clic su una scheda o una finestra di dialogo. Per scoprire di più, consulta Leggere i dati del modulo inseriti dagli utenti nelle schede.

configCompleteRedirectUrl

string

Questo URL viene compilato per gli eventi di interazione MESSAGE, ADDED_TO_SPACE e APP_COMMAND. Dopo aver completato un flusso di autorizzazione o configurazione al di fuori di Google Chat, gli utenti devono essere reindirizzati a questo URL per segnalare a Google Chat che il flusso di autorizzazione o configurazione è andato a buon fine. Per saperne di più, consulta Connetti un'app di Chat ad altri servizi e strumenti.

isDialogEvent

boolean

Per gli eventi di interazione CARD_CLICKED e MESSAGE, se l'utente sta interagendo o sta per interagire con una finestra di dialogo.

dialogEventType

enum (DialogEventType)

Il tipo di evento di interazione dialog ricevuto.

common

object (CommonEventObject)

Rappresenta le informazioni sul client dell'utente, ad esempio le impostazioni internazionali, l'app host e la piattaforma. Per le app di Chat, CommonEventObject include le informazioni inviate dagli utenti che interagiscono con le finestre di dialogo, ad esempio i dati inseriti in una scheda.

appCommandMetadata

object (AppCommandMetadata)

Metadati relativi a un comando di un'app di Chat.

CommonEventObject

L'oggetto evento comune è la parte dell'oggetto evento complessivo che trasmette informazioni generali e indipendenti dall'host al componente aggiuntivo dal client dell'utente. Queste informazioni includono dettagli come le impostazioni internazionali, l'app host e la piattaforma dell'utente.

Oltre ai trigger della home page e contestuali, i componenti aggiuntivi creano e passano oggetti evento alle funzioni di callback delle azioni quando l'utente interagisce con i widget. La funzione di callback del componente aggiuntivo può eseguire query sull'oggetto evento comune per determinare i contenuti dei widget aperti nel client dell'utente. Ad esempio, il componente aggiuntivo può individuare il testo inserito da un utente in un widget TextInput nell'oggetto eventObject.commentEventObject.formInputs.

Per le app di Chat, il nome della funzione richiamata dall'utente durante l'interazione con un widget.

Rappresentazione JSON
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
Campi
userLocale

string

Disattivato per impostazione predefinita. L'identificatore della lingua e del paese/della regione dell'utente nel formato del codice lingua ISO 639-codice paese/regione ISO 3166. Ad esempio: en-US.

Per attivare questo campo, devi impostare addOns.common.useLocaleFromApp su true nel manifest del componente aggiuntivo. L'elenco degli ambiti del componente aggiuntivo deve includere anche https://www.googleapis.com/auth/script.locale. Per maggiori dettagli, consulta Accesso alle impostazioni internazionali e al fuso orario dell'utente.

hostApp

enum (HostApp)

Indica l'app host in cui è attivo il componente aggiuntivo quando viene generato l'oggetto evento. I valori possibili sono i seguenti:

  • GMAIL
  • CALENDAR
  • DRIVE
  • DOCS
  • SHEETS
  • SLIDES
  • CHAT
platform

enum (Platform)

L'enum della piattaforma che indica la piattaforma da cui ha origine l'evento (WEB, IOS o ANDROID). Non supportato dalle app di Chat.

timeZone

object (TimeZone)

Disattivato per impostazione predefinita. L'ID del fuso orario e l'offset rispetto al fuso orario UTC (Coordinated Universal Time). Per attivare questo campo, devi impostare addOns.common.useLocaleFromApp su true nel manifest del componente aggiuntivo. L'elenco degli ambiti del componente aggiuntivo deve includere anche https://www.googleapis.com/auth/script.locale. Per maggiori dettagli, consulta Accesso alle impostazioni internazionali e al fuso orario dell'utente.

Supportato solo per i tipi di evento CARD_CLICKED e SUBMIT_DIALOG.

formInputs

map (key: string, value: object (Inputs))

Una mappa contenente i valori correnti dei widget nella scheda visualizzata. Le chiavi della mappa sono i valori stringa name assegnati a ogni widget di input (ad esempio TextInput.name, SelectionInput.name, DateTimePicker.name o DecoratedText.SwitchControl.name).

La struttura dell'oggetto valore mappa dipende dal tipo di widget:

Nota: i seguenti esempi sono formattati per il runtime V8 di Apps Script. Se utilizzi il runtime Rhino, devi aggiungere [""] dopo il valore. Ad esempio, anziché e.commonEventObject.formInputs.employeeName.stringInputs.value[0], formatta l'oggetto evento come e.commonEventObject.formInputs.employeeName[""].stringInputs.value[0]. Per scoprire di più sui runtime in Apps Script, consulta la panoramica del runtime V8.

  • Widget con un solo valore (ad esempio un widget TextInput o un widget SelectionInput di tipo DROPDOWN o RADIO_BUTTON): un oggetto StringInputs contenente un elenco con un solo elemento (o un elenco vuoto se non viene effettuata alcuna selezione).

Esempio: per un widget di immissione di testo con employeeName come name, accedi al valore di immissione di testo con: e.commonEventObject.formInputs.employeeName.stringInputs.value[0].

  • Widget con più valori (ad esempio un widget SelectionInput di tipo CHECK_BOX, SWITCH o MULTI_SELECT): un oggetto StringInputs contenente l'elenco delle stringhe value degli elementi selezionati.

Esempio: per un widget con più valori con participants come name, accedi all'array di valori con: e.commonEventObject.formInputs.participants.stringInputs.value.

  • Un widget DecoratedText.SwitchControl: un oggetto StringInputs. Quando selected è true, stringInputs.value contiene il campo value dello switch (o "" se value non è stato specificato; se più switch condividono lo stesso name, il value di ogni switch selezionato è incluso nell'elenco). Quando selected è false, value dell'opzione viene omesso da stringInputs.value.

  • Un selettore di data e ora (DateTimePickerType.DATE_AND_TIME): un DateTimeInput object.

Esempio: per un selettore con un name di myDTPicker, accedi all'oggetto DateTimeInput utilizzando e.commonEventObject.formInputs.myDTPicker.dateTimeInput.

  • Un selettore di sola data (DateTimePickerType.DATE_ONLY): un DateInput object.

Esempio: per un selettore con un name di myDatePicker, accedi all'oggetto DateInput utilizzando e.commonEventObject.formInputs.myDatePicker.dateInput.

Esempio: per un selettore con un name di myTimePicker, accedi all'oggetto TimeInput utilizzando e.commonEventObject.formInputs.myTimePicker.timeInput.

parameters

map (key: string, value: string)

Eventuali parametri aggiuntivi forniti a un'azione utilizzando actionParameters o Action.setParameters().

Anteprima per gli sviluppatori: per i componenti aggiuntivi che estendono Google Chat, per suggerire elementi in base a ciò che gli utenti digitano nei menu a selezione multipla, utilizza il valore della chiave "autocomplete_widget_query" (event.commonEventObject.parameters["autocomplete_widget_query"]). Puoi utilizzare questo valore per eseguire query su un database e suggerire elementi selezionabili agli utenti mentre digitano. Per maggiori dettagli, vedi Raccogliere ed elaborare le informazioni degli utenti di Google Chat.

invokedFunction

string

Nome della funzione da richiamare.

Questo campo non viene compilato per i componenti aggiuntivi di Google Workspace che estendono Google Chat. Per ricevere dati delle funzioni come gli identificatori, i componenti aggiuntivi che estendono Chat devono utilizzare il campo parameters. Consulta Crea interfacce interattive per le app di Chat.

TimeZone

L'ID del fuso orario e l'offset rispetto al fuso orario UTC (Coordinated Universal Time). Supportato solo per i tipi di evento CARD_CLICKED e SUBMIT_DIALOG.

Rappresentazione JSON
{
  "id": string,
  "offset": integer
}
Campi
id

string

Il codice del database dei fusi orari IANA TZ, ad esempio "America/Toronto".

offset

integer

La differenza di fuso orario dell'utente, in millisecondi, rispetto al fuso orario UTC (Coordinated Universal Time).

Input

Tipi di dati che gli utenti possono inserire in schede o finestre di dialogo. Il tipo di input dipende dal tipo di valori accettati dal widget.

Rappresentazione JSON
{

  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
}
Campi
Di seguito è riportato un elenco di campi che si escludono a vicenda. In una risposta verrà impostato al massimo uno dei campi:
stringInputs

object (StringInputs)

Un elenco di stringhe che rappresentano i valori inseriti dall'utente in un widget.

Se il widget accetta un solo valore, ad esempio un widget TextInput, l'elenco contiene un oggetto stringa. Se il widget accetta più valori, ad esempio un widget SelectionInput di caselle di controllo, l'elenco contiene un oggetto stringa per ogni valore inserito o selezionato dall'utente.

dateTimeInput

object (DateTimeInput)

Valori di input di data e ora da un widget DateTimePicker che accetta sia una data sia un'ora.

dateInput

object (DateInput)

Valori di input della data da un widget DateTimePicker che accetta solo valori di data.

timeInput

object (TimeInput)

Valori di input dell'ora da un widget DateTimePicker che accetta solo valori di ora.

Fine dei campi che si escludono a vicenda.

StringInputs

Parametro di input per i widget normali. Per i widget con un singolo valore, si tratta di un elenco di valori singoli. Per i widget con più valori, ad esempio la casella di controllo, vengono presentati tutti i valori.

Rappresentazione JSON
{
  "value": [
    string
  ]
}
Campi
value[]

string

Un elenco di stringhe inserite dall'utente.

DateTimeInput

Valori di input di data e ora.

Rappresentazione JSON
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
Campi
msSinceEpoch

string (int64 format)

Tempo trascorso dall'epoca di Unix, in millisecondi.

hasDate

boolean

Se l'input datetime include una data di calendario.

hasTime

boolean

Indica se l'input datetime include un timestamp.

DateInput

Valori di input della data.

Rappresentazione JSON
{
  "msSinceEpoch": string
}
Campi
msSinceEpoch

string (int64 format)

Tempo trascorso dall'epoca di Unix, in millisecondi.

TimeInput

Valori di input dell'ora.

Rappresentazione JSON
{
  "hours": integer,
  "minutes": integer
}
Campi
hours

integer

L'ora in un orologio di 24 ore.

minutes

integer

Il numero di minuti dopo l'ora. I valori validi sono compresi tra 0 e 59.

AppCommandMetadata

Metadati relativi a un comando dell'app di Chat.

Rappresentazione JSON
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
Campi
appCommandId

integer

L'ID del comando specificato nella configurazione dell'API Chat.

appCommandType

enum (AppCommandType)

Il tipo di comando dell'app di Chat.