Интеграция для потоковой передачи событий
Обзор интеграции
Anchor link toТип интеграции
Anchor link toИсточник: Данные отправляются из Pushwoosh в вашу систему через HTTP или gRPC на основе настроенных триггеров событий.
Как работает интеграция?
Anchor link toPushwoosh передает данные о событиях коммуникации (например, активность по push-уведомлениям/email) на эндпоинт, определённый клиентом. Данные отправляются пакетными потоками через заданные интервалы или по достижении минимального размера пакета.
Данные отправляются только в том случае, если они соответствуют выбранным событиям, платформам и дополнительным фильтрам (коды кампаний/сообщений, live activity). Эндпоинт клиента должен быть готов к приёму данных и, при необходимости, к отправке ответного статуса.
Глоссарий
Anchor link toURL эндпоинта (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Чтобы настроить интеграцию:
- В вашем аккаунте Pushwoosh перейдите в Settings > 3rd party Integrations, найдите Event streaming integration и нажмите Configure.
- В открывшемся окне заполните необходимые поля.
Введите 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
Anchor link toПри использовании транспорта HTTP Pushwoosh отправляет данные пакетами при выполнении одного из следующих условий:
- К отправке готово не менее 100 событий, или
- Прошёл один час с момента последней передачи.
После отправки данных соединение закрывается после получения успешного ответа.
Если сервер отвечает ошибкой 5xx, Pushwoosh повторит запрос в соответствии с определённой политикой повторных попыток.
Механизм повторных попыток
Попытка | Задержка |
---|---|
1-я | 1 секунда |
2-я | 3 секунды после 1-й попытки |
3-я | 8 секунд после 2-й попытки |
Если все повторные попытки завершатся неудачей, запрос будет отменён.
Тайм-аут
Тайм-аут по умолчанию для запроса составляет 30 секунд. Это значение можно изменить по запросу через службу поддержки.
gRPC
Anchor link toТранспорт типа gRPC использует двунаправленную потоковую передачу данных. Узнайте больше в документации gRPC.
Поток открывается при выполнении одного из следующих условий:
- К доставке готово не менее 1000 событий
- Прошёл один час с момента открытия последнего потока
Поток закрывается после отправки событий. Это гарантирует, что для каждого отдельного события за короткий промежуток времени не будет открываться новый поток.
Механизм повторных попыток Каждое событие содержит уникальный uuid
. Если событие не удалось обработать:
- Ответ должен содержать
status
, не равный"Success"
- В ответе должен быть указан оригинальный
uuid
из запроса
Pushwoosh повторит доставку на основе этого ответа.
Настройки соединения
Расширенные опции, такие как TLS, keep-alive или политики повторных попыток, настраиваются вручную через службу поддержки и могут потребовать участия разработчиков.
Выберите платформы
Anchor link toВ разделе Platforms выберите хотя бы одну платформу, чтобы активировать потоковую передачу событий.
Поддерживаемые платформы:
- 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: Фильтрация по коду сообщения. Будут доставляться только события, связанные с этими сообщениями.
После заполнения всех обязательных полей нажмите кнопку 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 на настроенный вами эндпоинт.