Перейти к содержанию

Интеграция для потоковой передачи событий

Обзор интеграции

Anchor link to

Тип интеграции

Anchor link to

Источник: Данные отправляются из Pushwoosh в вашу систему через HTTP или gRPC на основе настроенных триггеров событий.

Как работает интеграция?

Anchor link to

Pushwoosh передает данные о событиях коммуникации (например, активность по push-уведомлениям/email) на эндпоинт, определённый клиентом. Данные отправляются пакетными потоками через заданные интервалы или по достижении минимального размера пакета.

Данные отправляются только в том случае, если они соответствуют выбранным событиям, платформам и дополнительным фильтрам (коды кампаний/сообщений, live activity). Эндпоинт клиента должен быть готов к приёму данных и, при необходимости, к отправке ответного статуса.

Глоссарий

Anchor link to

URL эндпоинта (Endpoint URL): Серверный эндпоинт, который позволяет получать запросы. Клиент при необходимости может указать порт.

Примеры:

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook_endpoint

Список синхронизируемых сущностей

Anchor link to
  • События статистики коммуникаций (например, Push Sent, Email Delivered)

Варианты использования

Anchor link to
  • Отслеживание вовлечённости в реальном времени

Отслеживайте взаимодействия пользователей, такие как отправка push-уведомлений, открытие email или доставка сообщений, в момент их совершения. Это позволит вам незамедлительно оценивать эффективность кампаний.

  • Интеграция с внешней аналитикой

Передавайте события на сторонние аналитические платформы для централизованной отчётности и анализа.

  • Автоматизированные рабочие процессы для пользователей

Запускайте действия во внешних системах (таких как CRM или инструменты автоматизации маркетинга) на основе поведения пользователей. Например, отправляйте последующее сообщение, когда пользователь открывает email.

Настройка интеграции

Anchor link to

Чтобы настроить интеграцию:

  1. В вашем аккаунте Pushwoosh перейдите в Settings > 3rd party Integrations, найдите Event streaming integration и нажмите Configure.

Configure Event streaming integration

  1. В открывшемся окне заполните необходимые поля.

Fill out the necessary fields

Введите URL эндпоинта

Anchor link to

В поле Endpoint URL введите полный URL-адрес, на который будут отправляться события, включая протокол и порт, если это необходимо.

Пример

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook_endpoint

Выберите события

Anchor link to

В выпадающем списке Events выберите хотя бы одно событие. Если ни одно событие не выбрано, проверка не будет пройдена. Список событий управляется бэкендом и может со временем изменяться.

Предоставьте учётные данные для авторизации

Anchor link to

Если это требуется вашим сервером, введите полное значение для заголовка Authorization в поле Authorization.

Примеры:

  • Bearer your_token_here
  • Basic base64encoded_credentials

Выберите тип транспорта

Anchor link to

В выпадающем списке Transport type выберите протокол для передачи событий: HTTP или gRPC. Каждый из них имеет свои особенности поведения и настройки.

При использовании транспорта HTTP Pushwoosh отправляет данные пакетами при выполнении одного из следующих условий:

  • К отправке готово не менее 100 событий, или
  • Прошёл один час с момента последней передачи.

После отправки данных соединение закрывается после получения успешного ответа.

Если сервер отвечает ошибкой 5xx, Pushwoosh повторит запрос в соответствии с определённой политикой повторных попыток.

Механизм повторных попыток

ПопыткаЗадержка
1-я1 секунда
2-я3 секунды после 1-й попытки
3-я8 секунд после 2-й попытки

Если все повторные попытки завершатся неудачей, запрос будет отменён.

Тайм-аут

Тайм-аут по умолчанию для запроса составляет 30 секунд. Это значение можно изменить по запросу через службу поддержки.

Транспорт типа gRPC использует двунаправленную потоковую передачу данных. Узнайте больше в документации gRPC.

Поток открывается при выполнении одного из следующих условий:

  • К доставке готово не менее 1000 событий
  • Прошёл один час с момента открытия последнего потока

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

Механизм повторных попыток Каждое событие содержит уникальный uuid. Если событие не удалось обработать:

  1. Ответ должен содержать status, не равный "Success"
  2. В ответе должен быть указан оригинальный uuid из запроса

Pushwoosh повторит доставку на основе этого ответа.

Настройки соединения

Расширенные опции, такие как TLS, keep-alive или политики повторных попыток, настраиваются вручную через службу поддержки и могут потребовать участия разработчиков.

Выберите платформы

Anchor link to

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

Select at least one platform

Поддерживаемые платформы:

  • iOS, Android, macOS, Windows, Amazon, Safari
  • Chrome, Firefox, Internet Explorer, Baidu, Huawei
  • Email, SMS, Line, Xiaomi, WhatsApp

Настройте расширенные фильтры

Anchor link to

В разделе Advanced filters уточните критерии доставки событий с помощью фильтров:

  • Live activity events: Включите, чтобы получать события Live Activity. Эти события содержат только метаданные, включая live_activity_id.
  • Campaign filters: Фильтрация по коду кампании. Будут доставляться только события, связанные с этими кампаниями.
  • Message filters: Фильтрация по коду сообщения. Будут доставляться только события, связанные с этими сообщениями.

Set advanced filters

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

Детали запроса и пример

Anchor link to
Эндпоинтhttps://exampleclientendpoint.com/webhook_endpoint
HTTP-запросPOST
АутентификацияНет
Тип запросаИсточник (Source)
Назначение запросаОтправка запросов на эндпоинт вебхука
ЗаголовкиContent-Type: application/json

Пример тела запроса

{
"event_name": "Email Opened",
"message_code": "E682-E6D92B9A-53E24868",
"campaign_id": 961048,
"platform": "Email",
"payload": "Welcome to Headway! 👋",
"application_code": "32E5A-9B411",
"hwid": "irun4716@gmail.com",
"user_id": "1894410",
"timestamp": 1723799271,
"journey_title": "",
"journey_point_title": "5_Welcome_ID_new"
}

Ответ На данный момент код ответа и его тело игнорируются.

Как понять, что интеграция работает?

Anchor link to

Вы начнёте получать запросы от Pushwoosh на настроенный вами эндпоинт.