На этой странице объясняется, как приложения Google Chat могут получать события в Google Chat и реагировать на них.
Событие Google Chat представляет собой действие или изменение в Chat, например новое сообщение в теме. Ваше приложение чата может использовать события, чтобы понять, что произошло, и принять меры или ответить значимым образом для ваших пользователей.
Вот несколько примеров того, как вы можете использовать события:
- Отслеживайте новые сообщения в пространстве и отвечайте на них, например, проверяя ключевые слова или фразы.
- Отправьте приветственное сообщение пользователям, когда они присоединяются к пространству, чтобы объяснить правила использования пространства или поделиться советами о том, как эффективно использовать приложение Chat.
- Отслеживайте и анализируйте активность в чате. Например, чтобы отправлять ежемесячный отчет о новых участниках или сообщениях, которые получили наибольшее количество реакций или ответов.
- Общайтесь через платформы обмена сообщениями. Например, пользователи могут отправлять и получать сообщения от пользователей с другой платформы обмена сообщениями, не выходя из чата.
Как проходят мероприятия
Всякий раз, когда что-то происходит в Google Chat, ресурс Google Chat API создается, обновляется или удаляется. События предоставляют информацию о том, когда произошло действие, и о том, какой ресурс Chat API был затронут.
Чат классифицирует события по типам. Типы событий помогают фильтровать и запрашивать только тот тип информации, который вам нужен, а также позволяют обрабатывать аналогичные события одинаковым образом.
В следующей таблице показано, как действие в Chat влияет на связанный ресурс Chat API, а также тип события, которое получает ваше приложение Chat:
Активность | Ресурс API чата | Тип события |
---|---|---|
Пользователь публикует сообщение в Chat . | Ресурс Message создан. | Новое сообщение |
Пользователь становится менеджером пространства. | Ресурс Membership обновлен. | Обновленное членство |
Пользователь реагирует на сообщение. | Ресурс Reaction создан. | Новая реакция |
Пользователь покидает пространство. | Ресурс Membership удален. | Удалено членство |
Получать события из Google Chat
Чтобы получать события, ваше приложение Chat может выполнять одно из следующих действий:
- Подпишитесь на события с помощью API событий Google Workspace, чтобы получать события по мере их возникновения.
- Запрос событий путем вызова API чата.
API событий Google Workspace и API чата поддерживают и доставляют одни и те же типы событий. Чтобы понять, следует ли вам подписываться на события или запрашивать их, просмотрите следующую таблицу:
Подписаться на события | Запрос событий | |
---|---|---|
Случаи использования |
|
|
API | API событий Google Workspace | API чата |
Источник событий | Пространства и пользователи | Только пробелы |
Формат мероприятия | Сообщение Google Cloud Pub/Sub, отформатированное в соответствии со спецификацией CloudEvent. Подробности см. в разделе Структура событий Google Workspace . | Ресурс API чата ( spaces.spaceEvent ) |
Данные о событии | Строка в кодировке Base64 с данными ресурса или без них. Пример полезных данных см. в разделе Данные о событиях . | Полезная нагрузка JSON, содержащая данные ресурсов. Некоторые типы событий включают только определенные поля ресурсов. Пример полезных данных см. в справочной документации SpaceEvents . |
Дополнительную информацию о создании подписок с помощью Google Workspace Events API см. в документации Google Workspace Events API . Чтобы запросить события с помощью Chat API, см. следующие руководства:
Ограничения
- Что касается подписок на пользователей, события о новых участниках в личных сообщениях или безымянных групповых чатах (
google.workspace.chat.membership.v1.created
) срабатывают только после публикации первого сообщения. - Изменения в истории чат-группы не приводят к обновлению событий чат-группы (тип события:
google.workspace.chat.spaces.v1.updated
). - Чтобы получать события членства, пользователь должен быть непосредственным участником пространства. Если пользователь был добавлен, обновлен или удален в пространстве косвенно через группу Google, подписка не получает эти события членства. Чтобы понять, как работает членство в группах Google, см. раздел Добавление группы Google в пространство .