Настройка аналитики доставляемости и кликов
Показатели доставляемости и кликов помогают детально анализировать успешность мобильных push-кампаний. Для отображения этих данных в eSputnik нужно настроить возврат статуса сообщений в нашу систему.
Важно
Прежде чем приступить к настройкам возврата статусов сообщений, интегрируйте мобильное приложение с eSputnik и загрузите контактную базу токенов.
Мы предлагаем 2 способа передачи статусов: Public API и интеграция с Firebase Message Cloud и BigQuery.
Обратите внимание
Описанные ниже методы аналитики доставок и кликов предназначены только для проектов, которые не установили наш SDK
Public API
Используйте API-метод Update interaction status, чтобы вернуть статус DELIVERED (если уведомление было доставлено на устройство).
Вместе со значением статуса в interfaceId в теле запроса нужно передать FCM-токен и время изменения статуса на устройстве.
Пример:
{ "token": "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", "status": "DELIVERED", "time": "2020-07-09T15:11:17" }
JSON
Экспорт данных о доставке сообщений отличается в зависимости от операционной системы устройства получателя.
iOS
Используйте Notification Service Extension и API-вызов внутри сервисного расширения, чтобы получить отчет о статусах push-уведомлений.
- Установите Notification Service Extension в своем мобильном приложении.
- В didReceiveNotificationRequest добавьте код для вызова веб-сервиса, чтобы уведомить ваш сервер о полученном сообщении.
- Переопределите метод didReceive (_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) → Void)
- didReceiveNotificationRequest должен состоять из HTTP запроса Update interaction status (PUT) со статусом доставки.
Активируйте фоновую загрузку в разделе Capabilities → Background Modes вашего приложения.
Важно
Параметры "content-available" и "mutable-content" активированы (имеют значение == 1) при передаче токенов в APN. Если передача данных настроена через FCM, активирован только параметр mutable-content (значение == 1).
Подробнее об изменении контента в доставленных уведомлениях см. в руководстве Apple.
Android
Используйте сервис, который позволяет FirebaseMessagingService получать сообщения. Сервис должен переопределять вызовы onMessageReceived и onDeletedMessages.
Отслеживание кликов
Вы можете добавить в тело сообщения ссылку непосредственно в редакторе сообщений без возможности отслеживать клики по ней.
При добавлении ссылки в тело сообщения добавятся 2 дополнительных поля:
- es_link_raw – http://example.com/somelink – содержит исходную ссылку, которая может быть открыта в браузере устройства или может быть внутренней ссылкой, ведущей в другие разделы приложения;
- es_link – https://hh.esclick.me/37NdHw333DjRcukc0l – создается на основе добавленной ссылки и содержит обернутую ссылку, используемую для отслеживания кликов.
Важно
Используйте для вашего мобильного приложения данные из поля es_link_raw, чтобы перенаправлять пользователя в нужный раздел приложения или на веб-ресурс. Запрос GET по ссылке в es_link используется для отслеживания кликов.
Интеграция с Firebase Message Cloud и BigQuery
BigQuery позволяет обрабатывать большие объемы данных, подробно анализировать их с помощью BigQuery SQL, экспортировать информацию в другие сервисы и/или использовать данные для кастомных моделей машинного обучения. Для того, чтобы передавать статусы отправленных мобильных уведомлений в eSputnik через эту платформу, выполните следующие действия:
1. Свяжите свой проект с BigQuery.
2. Настройте экспорт данных из приложения в BigQuery: