Event

Un evento di interazione dell'app Google Chat che rappresenta e contiene dati sull'interazione di un utente con un'app Chat. Per configurare l'app Chat in modo che riceva eventi di interazione, consulta Ricevere e rispondere 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 informazioni sugli eventi dello spazio, vedi Utilizzare gli eventi di Google Chat.

Nota: questo evento viene utilizzato solo per gli eventi di interazione con la chat. Se la tua app di Chat è creata come componente aggiuntivo di Google Workspace, consulta la sezione Oggetti evento di Chat nella documentazione dei componenti aggiuntivi.

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 utente con l'app 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 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 in Google Cloud Console.

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 Chat.

thread

object (Thread)

Il thread in cui l'utente ha interagito con l'app 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 saperne di più, consulta Leggere i dati dei moduli inseriti dagli utenti sulle 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ù, vedi Connettere un'app di chat ad altri servizi e strumenti.

isDialogEvent

boolean

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

dialogEventType

enum (DialogEventType)

Il tipo di evento di interazione dialogo ricevuto.

common

object (CommonEventObject)

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

appCommandMetadata

object (AppCommandMetadata)

Metadati relativi a un comando dell'app di chat.

CommonEventObject

L'oggetto evento comune è la parte dell'oggetto evento complessivo che trasferisce informazioni generali e indipendenti dall'host al componente aggiuntivo dal client dell'utente. Queste informazioni includono dettagli quali la lingua, l'app host e la piattaforma dell'utente.

Oltre ai trigger contestuali e della home page, 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 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

Disabilitato per impostazione predefinita. L'identificatore di lingua e paese/regione dell'utente nel formato 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 ulteriori dettagli, consulta Accesso alle impostazioni internazionali e al fuso orario dell'utente.

hostApp

enum (HostApp)

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

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

enum (Platform)

L'enumerazione della piattaforma che indica la piattaforma di origine dell'evento (WEB, IOS o ANDROID). Non supportato dalle app di chat.

timeZone

object (TimeZone)

Disabilitato per impostazione predefinita. L'ID fuso orario e l'offset rispetto al Coordinated Universal Time (UTC). 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 ulteriori dettagli, consulta Accesso alle impostazioni internazionali e al fuso orario dell'utente.

Supportato solo per i tipi di eventi CARD_CLICKED e SUBMIT_DIALOG.

formInputs

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

Una mappa contenente i valori attuali dei widget nella scheda visualizzata. Le chiavi della mappa sono gli ID stringa assegnati a ogni widget.

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

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

  • Widget a valore singolo (ad esempio, una casella di testo): un elenco di stringhe (un solo elemento).

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

  • Widget con più valori (ad esempio, gruppi di caselle di controllo): un elenco di stringhe.

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

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

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

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

parameters

map (key: string, value: string)

Qualsiasi parametro aggiuntivo fornito 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 sulle funzioni, come identificatori, i componenti aggiuntivi che estendono Chat devono utilizzare il campo parameters. Consulta Creare interfacce interattive per le app di chat.

TimeZone

L'ID fuso orario e l'offset rispetto al Coordinated Universal Time (UTC). Supportato solo per i tipi di eventi 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

L'offset del fuso orario dell'utente, in millisecondi, rispetto al tempo universale coordinato (UTC).

Input

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

Rappresentazione JSON
{

  // Union field inputs can be only one of the following:
  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
  // End of list of possible types for union field inputs.
}
Campi

Campo unione inputs.

inputs può essere solo uno dei seguenti:

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 che 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.

StringInputs

Parametro di input per i widget normali. Per i widget a valore singolo, si tratta di un elenco di valori singoli. Per i widget con più valori, come 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, in millisecondi.

hasDate

boolean

Se l'input datetime include una data del 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, in millisecondi.

TimeInput

Valori di input dell'ora.

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

integer

L'ora su 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 Chat.