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