Event

Es un evento de interacción de la app de Google Chat que representa y contiene datos sobre la interacción de un usuario con una app de Chat. Para configurar tu app de Chat para que reciba eventos de interacción, consulta Cómo recibir y responder interacciones de los usuarios.

Además de recibir eventos de las interacciones de los usuarios, las apps de Chat pueden recibir eventos sobre cambios en los espacios, como cuando se agrega un miembro nuevo a un espacio. Para obtener información sobre los eventos de espacio, consulta Cómo trabajar con eventos de Google Chat.

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

enum (EventType)

El tipo de interacción del usuario con la app de Chat, como MESSAGE o ADDED_TO_SPACE

eventTime

string (Timestamp format)

Es la marca de tiempo que indica cuándo ocurrió el evento de interacción.

token

string

Es un valor secreto que las apps de Chat heredadas pueden usar para verificar si una solicitud proviene de Google. Google genera el token de forma aleatoria y su valor permanece estático. Puedes obtener, revocar o volver a generar el token desde la página de configuración de la API de Chat en la consola de Google Cloud.

Las apps de Chat modernas no usan este campo. No está presente en las respuestas de la API ni en la página de configuración de la API de Chat.

threadKey

string

Es la clave definida por la app de Chat para el subproceso relacionado con el evento de interacción. Consulta spaces.messages.thread.threadKey para obtener más información.

message

object (Message)

Para los eventos de interacción ADDED_TO_SPACE, CARD_CLICKED y MESSAGE, el mensaje que activó el evento de interacción, si corresponde

user

object (User)

El usuario que interactuó con la app de Chat.

space

object (Space)

Es el espacio en el que el usuario interactuó con la app de Chat.

action

object (FormAction)

Para los eventos de interacción CARD_CLICKED, los datos de acción del formulario asociados cuando un usuario hace clic en una tarjeta o un diálogo. Para obtener más información, consulta Cómo leer los datos de formulario que ingresan los usuarios en las tarjetas.

configCompleteRedirectUrl

string

Para los eventos de interacción MESSAGE, es la URL a la que se deben redireccionar los usuarios después de completar un flujo de autorización o configuración fuera de Google Chat. Para obtener más información, consulta Cómo conectar una app de Chat con otros servicios y herramientas.

isDialogEvent

boolean

Para los eventos de interacción CARD_CLICKED y MESSAGE, si el usuario está interactuando con un diálogo o está a punto de hacerlo.

dialogEventType

enum (DialogEventType)

Es el tipo de evento de interacción de diálogo que se recibió.

common

object (CommonEventObject)

Representa información sobre el cliente del usuario, como la configuración regional, la app host y la plataforma. En el caso de las apps de Chat, CommonEventObject incluye la información que envían los usuarios que interactúan con los diálogos, como los datos ingresados en una tarjeta.

appCommandMetadata

object (AppCommandMetadata)

Se propaga para los comandos de la app, incluidos los comandos de barra y los comandos rápidos.

CommonEventObject

Representa información sobre el cliente del usuario, como la configuración regional, la app host y la plataforma. En el caso de las apps de Chat, CommonEventObject incluye los datos que envían los usuarios que interactúan con las tarjetas, como los datos ingresados en los diálogos.

Representación JSON
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
Campos
userLocale

string

El locale.displayName completo en el formato [código de idioma ISO 639]-[código de país o región ISO 3166], como "es-US".

hostApp

enum (HostApp)

La enumeración hostApp que indica la app desde la que se invoca el complemento. Siempre es CHAT para las apps de Chat.

platform

enum (Platform)

Es la enumeración de la plataforma que indica la plataforma en la que se origina el evento (WEB, IOS o ANDROID). Las apps de Chat no son compatibles con esta enumeración.

timeZone

object (TimeZone)

El ID de zona horaria y el desplazamiento del Horario Universal Coordinado (UTC) Solo es compatible con los tipos de eventos CARD_CLICKED y SUBMIT_DIALOG.

formInputs

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

Es un mapa que contiene los valores que un usuario ingresa en un widget desde una tarjeta o un diálogo. Las claves del mapa son los IDs de cadena asignados a cada widget, y los valores representan las entradas del widget.

Para obtener más información, consulta Cómo procesar la información que ingresan los usuarios.

parameters

map (key: string, value: string)

Parámetros personalizados que se pasan a la función invocada. Tanto las claves como los valores deben ser cadenas.

invokedFunction

string

Es el nombre de la función invocada asociada con el widget. Solo se establece para las apps de Chat.

TimeZone

El ID de zona horaria y el desplazamiento del Horario Universal Coordinado (UTC) Solo es compatible con los tipos de eventos CARD_CLICKED y SUBMIT_DIALOG.

Representación JSON
{
  "id": string,
  "offset": integer
}
Campos
id

string

Es el código de la base de datos de zonas horarias de IANA TZ, como “America/Toronto”.

offset

integer

Es el desfase de la zona horaria del usuario, en milisegundos, respecto de la hora universal coordinada (UTC).

Entradas

Son los tipos de datos que los usuarios pueden ingresar en tarjetas o diálogos. El tipo de entrada depende del tipo de valores que acepta el widget.

Representación 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.
}
Campos

Campo de unión inputs.

inputs puede ser una de las siguientes opciones:

stringInputs

object (StringInputs)

Es una lista de cadenas que representan los valores que el usuario ingresa en un widget.

Si el widget solo acepta un valor, como un widget TextInput, la lista contiene un objeto de cadena. Si el widget acepta varios valores, como un widget de casillas de verificación SelectionInput, la lista contiene un objeto de cadena para cada valor que ingresa o selecciona el usuario.

dateTimeInput

object (DateTimeInput)

Valores de entrada de fecha y hora de un widget DateTimePicker que acepta una fecha y una hora.

dateInput

object (DateInput)

Valores de entrada de fecha de un widget DateTimePicker que solo acepta valores de fecha.

timeInput

object (TimeInput)

Valores de entrada de hora de un widget DateTimePicker que solo acepta valores de hora.

StringInputs

Es un parámetro de entrada para widgets normales. En el caso de los widgets de un solo valor, es una lista de un solo valor. En el caso de los widgets de varios valores, como la casilla de verificación, se presentan todos los valores.

Representación JSON
{
  "value": [
    string
  ]
}
Campos
value[]

string

Es una lista de cadenas que ingresó el usuario.

DateTimeInput

Valores de entrada de fecha y hora

Representación JSON
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
Campos
msSinceEpoch

string (int64 format)

Es el tiempo desde la época, en milisegundos.

hasDate

boolean

Indica si la entrada datetime incluye una fecha de calendario.

hasTime

boolean

Indica si la entrada datetime incluye una marca de tiempo.

DateInput

Valores de entrada de fecha.

Representación JSON
{
  "msSinceEpoch": string
}
Campos
msSinceEpoch

string (int64 format)

Es el tiempo desde la época, en milisegundos.

TimeInput

Valores de entrada de hora.

Representación JSON
{
  "hours": integer,
  "minutes": integer
}
Campos
hours

integer

La hora en un reloj de 24 horas

minutes

integer

Es la cantidad de minutos después de la hora. Los valores válidos van de 0 a 59.

AppCommandMetadata

Metadatos asociados con los comandos de la app. Los comandos de la app son una forma para que los usuarios invoquen e interactúen con una app de Chat. Pueden ser comandos de barra escritos en el cuadro de redacción o elementos seleccionados directamente desde el menú de integración.

Representación JSON
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
Campos
appCommandId

integer

El ID de comando para la interacción determinada de la app

appCommandType

enum (AppCommandType)

Es el tipo de comando de la app.