Event

Событие взаимодействия с приложением Google Chat, которое представляет и содержит данные о взаимодействии пользователя с приложением Chat. Чтобы настроить приложение Chat для получения событий взаимодействия, см. раздел Получение и ответ на взаимодействия пользователей .

Помимо получения событий от взаимодействия с пользователем, приложения чата могут получать события об изменениях в пространствах, например, когда в пространство добавляется новый участник. Дополнительную информацию о космических мероприятиях см. в разделе Работа с мероприятиями из Google Chat .

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)
  }
}
Поля
type

enum ( EventType )

Тип взаимодействия пользователя с приложением чата, например MESSAGE или ADDED_TO_SPACE .

event Time

string ( Timestamp format)

Временная метка, указывающая, когда произошло событие взаимодействия.

token

string

Секретное значение, которое устаревшие приложения Chat могут использовать для проверки того, поступил ли запрос от Google. Google генерирует токен случайным образом, и его значение остается неизменным. Вы можете получить, отозвать или восстановить токен на странице конфигурации Chat API в Google Cloud Console.

Современные приложения чата не используют это поле. Он отсутствует в ответах API и на странице конфигурации Chat API .

thread Key

string

Ключ, определенный приложением Chat для цепочки, связанной с событием взаимодействия. Дополнительную информацию см. в spaces.messages.thread.threadKey .

message

object ( Message )

Для событий взаимодействия ADDED_TO_SPACE , CARD_CLICKED и MESSAGE — сообщение, которое инициировало событие взаимодействия, если применимо.

user

object ( User )

Пользователь, который взаимодействовал с приложением Chat.

space

object ( Space )

Пространство, в котором пользователь взаимодействовал с приложением Chat.

action

object ( FormAction )

Для событий взаимодействия CARD_CLICKED — данные действия формы, связанные с тем, что пользователь щелкает карточку или диалоговое окно. Дополнительные сведения см. в разделе Чтение данных формы, вводимых пользователями на картах .

config Complete Redirect Url

string

Для событий взаимодействия MESSAGE — URL-адрес, на который пользователи должны быть перенаправлены после завершения процесса авторизации или настройки за пределами Google Chat. Дополнительные сведения см. в разделе Подключение приложения Chat к другим службам и инструментам .

is Dialog Event

boolean

Для событий взаимодействия CARD_CLICKED и MESSAGE — взаимодействует ли пользователь с диалоговым окном или собирается взаимодействовать с ним.

dialog Event Type

enum ( DialogEventType )

Тип полученного события диалогового взаимодействия.

common

object ( CommonEventObject )

Представляет информацию о клиенте пользователя, например локаль, ведущее приложение и платформу. Для приложений чата CommonEventObject включает информацию, отправленную пользователями, взаимодействующими с диалоговыми окнами , например данные, введенные на карточке.

app Command Metadata

object ( AppCommandMetadata )

Заполняется для команд приложения, включая команды с косой чертой и быстрые команды.

CommonEventObject

Представляет информацию о клиенте пользователя, например локаль, ведущее приложение и платформу. Для приложений чата CommonEventObject включает данные, отправленные пользователями, взаимодействующими с карточками, например данные, введенные в диалоговых окнах .

JSON-представление
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
Поля
user Locale

string

Полное имя locale.displayName в формате [код языка ISO 639]-[код страны/региона ISO 3166], например «en-US».

host App

enum ( HostApp )

Перечисление hostApp, указывающее приложение, из которого вызывается надстройка. Всегда CHAT для приложений чата.

platform

enum ( Platform )

Перечисление платформы, указывающее платформу, на которой происходит событие ( WEB , IOS или ANDROID ). Не поддерживается приложениями чата.

time Zone

object ( TimeZone )

Идентификатор часового пояса и смещение от всемирного координированного времени (UTC). Поддерживается только для типов событий CARD_CLICKED и SUBMIT_DIALOG .

form Inputs

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

Карта, содержащая значения, которые пользователь вводит в виджет из карточки или диалогового окна. Ключи карты — это строковые идентификаторы, назначенные каждому виджету, а значения представляют собой входные данные для виджета.

Подробности см. в разделе Информация о процессе, введенная пользователями .

parameters

map (key: string, value: string)

Пользовательские параметры, передаваемые в вызванную функцию. И ключи, и значения должны быть строками.

invoked Function

string

Имя вызванной функции, связанной с виджетом. Устанавливается только для приложений чата.

Часовой пояс

Идентификатор часового пояса и смещение от всемирного координированного времени (UTC). Поддерживается только для типов событий CARD_CLICKED и SUBMIT_DIALOG .

JSON-представление
{
  "id": string,
  "offset": integer
}
Поля
id

string

Код базы данных часовых поясов IANA TZ , например «America/Toronto».

offset

integer

Смещение часового пояса пользователя в миллисекундах от всемирного координированного времени (UTC).

Входы

Типы данных, которые пользователи могут вводить на карточках или в диалогах . Тип ввода зависит от типа значений, которые принимает виджет.

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.
}
Поля

inputs поля объединения.

inputs могут быть только одним из следующих:

string Inputs

object ( StringInputs )

Список строк, представляющих значения, которые пользователь вводит в виджет.

Если виджет принимает только одно значение, например виджет TextInput , список содержит один строковый объект. Если виджет принимает несколько значений, например виджет SelectionInput с флажками, список содержит строковый объект для каждого значения, которое вводит или выбирает пользователь.

date Time Input

object ( DateTimeInput )

Входные значения даты и времени из виджета DateTimePicker , который принимает как дату, так и время.

date Input

object ( DateInput )

Значения ввода даты из виджета DateTimePicker , который принимает только значения даты.

time Input

object ( TimeInput )

Входные значения времени из виджета DateTimePicker , который принимает только значения времени.

Строковые входы

Входной параметр для обычных виджетов. Для виджетов с одним значением это список с одним значением. Для виджетов с несколькими значениями, таких как флажок, представлены все значения.

JSON-представление
{
  "value": [
    string
  ]
}
Поля
value[]

string

Список строк, введенных пользователем.

ДатаВремяИнпут

Входные значения даты и времени.

JSON-представление
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
Поля
ms Since Epoch

string ( int64 format)

Время, прошедшее с начала эпохи, в миллисекундах.

has Date

boolean

Включает ли ввод datetime календарную дату.

has Time

boolean

Включает ли ввод datetime времени метку времени.

ДатаВвод

Значения ввода даты.

JSON-представление
{
  "msSinceEpoch": string
}
Поля
ms Since Epoch

string ( int64 format)

Время, прошедшее с начала эпохи, в миллисекундах.

ТаймИнпут

Входные значения времени.

JSON-представление
{
  "hours": integer,
  "minutes": integer
}
Поля
hours

integer

Час в 24-часовом формате.

minutes

integer

Количество минут после часа. Допустимые значения: от 0 до 59.

AppCommandМетаданные

Метаданные, связанные с командами приложения. Команды приложения — это способ, с помощью которого пользователи могут вызывать приложение чата и взаимодействовать с ним. Это могут быть команды с косой чертой, введенные в поле создания сообщения, или элементы, выбранные непосредственно из меню интеграции.

JSON-представление
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
Поля
app Command Id

integer

Идентификатор команды для данного взаимодействия с приложением.

app Command Type

enum ( AppCommandType )

Тип команды приложения.