OneSignal
OneSignal — ведущая платформа для взаимодействия с пользователями, предлагающая push-уведомления, email, SMS и встроенные сообщения. Интеграция Adapty с OneSignal позволяет отслеживать все события подписок в одном месте и настраивать автоматические коммуникации на их основе.
С помощью Adapty вы можете отслеживать события подписок в нескольких сторах, анализировать поведение пользователей и использовать эти данные для более точечных коммуникаций. Интеграция позволяет следить за событиями подписок в дашборде OneSignal и привязывать их к рекламным кампаниям.
Adapty обновляет теги OneSignal на основе событий подписок, что позволяет отправлять персонализированные push-уведомления с минимальными настройками.
Характеристики интеграции
| Характеристика интеграции | Описание |
|---|---|
| Расписание | Обновления в реальном времени |
| Направление данных | Одностороннее: от Adapty к серверу OneSignal |
| Точка интеграции Adapty |
|
Настройка интеграции с OneSignal
Чтобы настроить интеграцию:
-
Откройте раздел Integrations → OneSignal в дашборде Adapty.
-
Включите переключатель интеграции.
-
Введите ваш OneSignal App ID.
Чтобы настроить интеграцию с OneSignal, перейдите в Integrations -> OneSignal в дашборде Adapty, включите переключатель и настройте учётные данные интеграции.
Получение OneSignal App ID
Найдите OneSignal App ID в вашем дашборде OneSignal:
-
Перейдите в Settings → Keys & IDs.
-
Скопируйте OneSignal App ID и вставьте его в поле App ID в дашборде Adapty.
Дополнительную информацию о OneSignal ID можно найти в соответствующей документации.
Настройка событий
Adapty позволяет отправлять в OneSignal три группы событий. Включите нужные в дашборде Adapty. Полный список доступных событий с подробным описанием можно посмотреть здесь.
Adapty отправляет события подписок в OneSignal через серверную интеграцию, что позволяет отслеживать всю активность, связанную с подписками, в OneSignal.
Начиная с 17 апреля 2023 года, бесплатный план OneSignal больше не поддерживает эту интеграцию. Она доступна только на планах Growth, Professional и выше. Подробнее см. в разделе Цены OneSignal.
Пользовательские теги
Эта интеграция обновляет и присваивает различные свойства пользователям Adapty в виде тегов, которые затем отправляются в OneSignal. Ознакомьтесь со списком тегов ниже и выберите подходящие для ваших задач.
В OneSignal есть ограничение на количество тегов. Оно распространяется как на теги, создаваемые Adapty, так и на уже существующие теги в OneSignal. Превышение лимита может привести к ошибкам при отправке событий.
| Тег | Тип | Описание |
|---|---|---|
adapty_customer_user_id | String | Уникальный идентификатор пользователя в вашем приложении. Должен быть одинаковым в вашей системе, Adapty и OneSignal. |
adapty_profile_id | String | ID профиля пользователя в Adapty, доступный в дашборде Adapty. |
environment | String | Sandbox или Production — указывает текущее окружение пользователя. |
store | String | Стор, в котором был совершён покупка. Возможные значения: app_store, play_store, stripe или название вашего кастомного стора. |
vendor_product_id | String | ID продукта в сторе приложений (например, org.locals.12345). |
subscription_expires_at | String | Дата истечения последней подписки (YYYY-MM-DDTHH:MM:SS+0000, например, 2023-02-10T17:22:03.000000+0000). |
last_event_type | String | Последний тип события из списка событий Adapty. Обратите внимание: - Для события Subscription expired Adapty отправляет свойство last_event_type как subscription_cancelled.- Для Trial renew canceled — как auto_renew_off- Для Subscription renew canceled — как auto_renew_off_subscription |
purchase_date | String | Дата последней транзакции (YYYY-MM-DDTHH:MM:SS+0000, например, 2023-02-10T17:22:03.000000+0000). |
active_subscription | String | true, если у пользователя есть активная подписка, и false, если подписка истекла. |
period_type | String | Указывает последний тип периода для покупки или продления. Возможные значения: trial для пробного периода или normal во всех остальных случаях. |
Все значения с плавающей точкой округляются до целых чисел. Строки остаются без изменений.
Помимо стандартных тегов, вы можете отправлять пользовательские атрибуты в виде тегов, что даёт большую гибкость в выборе передаваемых данных. Это удобно для отслеживания специфических деталей, связанных с вашим продуктом или сервисом.
Пользовательские атрибуты автоматически отправляются в OneSignal, если на странице интеграции установлен флажок Send user attributes. Если флажок снят, Adapty отправляет ровно 10 тегов. Если установлен — можно отправить более 10 тегов, что позволяет захватывать больше данных.
Настройка SDK
Есть два способа интеграции OneSignal с Adapty:
- Устаревший (до v5): использует
playerId(устарел в OneSignal SDK v5). - Актуальный (v5+): использует
subscriptionId.
Убедитесь, что вы передаёте playerId (для OneSignal SDK до v5) или subscriptionId (для OneSignal SDK v5+) в Adapty. Без этого теги OneSignal не будут обновляться, и интеграция не будет работать корректно.
Подробнее в документации OneSignal:
Работа с несколькими устройствами
Если у пользователя несколько устройств, отслеживать события покупок и подписок может быть непросто. OneSignal решает эту задачу с помощью внешних идентификаторов пользователей.
Чтобы данные пользователя оставались согласованными на всех устройствах:
- Сопоставьте разные устройства на стороне сервера и передайте эти данные в OneSignal.
- Используйте customer_user_id из Adapty в качестве externalUserId в OneSignal. Если в вашем приложении нет системы регистрации, используйте другой уникальный идентификатор, который остаётся постоянным на всех устройствах пользователя.
Важно поддерживать согласованность идентификатора пользователя на всех устройствах и обновлять OneSignal при каждом изменении ID пользователя. Это упрощает отслеживание активности и подписок, обеспечивает единообразие сообщений и позволяет получать более точную аналитику для лучшего пользовательского опыта. Подробнее см. в документации OneSignal по внешним идентификаторам пользователей.