Импорт профилей клиентов при подписке на Web push уведомления
Когда пользователь подпишется на Web push уведомления, в Базы данных и в Ресурс, в котором был сгенерирован Toolkit, размещенный на сайте, будет добавлен новый профиль.
Если один из профилей базы данных ранее уже открывал вашу email-рассылку с браузера, на котором сейчас подписывается на push, то подписка будет добавлена ему. Новый профиль в этом случае не создаётся.
Когда подписчик кликает на push-уведомление (переход по ссылке), платформа Altcraft собирает данные о профиле:
- страна, регион, часовой пояс, город, почтовый индекс и IP адрес, с которого произошла подписка на push;
- браузер и операционная система подписчика.
Мобильные браузеры также поддерживают Service worker и Web push уведомления.
Передача данных клиента при импорте профиля через Push канал
В момент регистра ции подписки на push-уведомления в профиль нового пользователя можно записать любые данные, известные на момент подписки. Например, имя или фамилия клиента, дата рождения, информация о просмотренных страницах и другая бизнес-информация.
При этом можно проверить, нет ли среди существующих подписчиков клиента с такими же данными.
В функцию вызова окна подписки добавьте аргументы:
- match — поиск профиля подписчика. Имеет форму
{название_поля_профиля: "значение"}
- update — данные для добавления в новый или существующий профиль клиента. Имеет форму
{поле1: "значение1", поле2: 13}
Пример с поиском по email в ресурсе и добавлением имени и фамилии пользователя:
akPush.initSubscription(
{
email: 'example@email.com'
}, // Поиск профиля по email. Также будет записано в профиль, если совпадений не найдётся.
{
_fname: 'Anatoly',
_lname: 'Wasserman'
} // запись в профиль подписчика имени и фамилии
)
Если к ресурсу привязано несколько баз данных, вы можете задать идентификатор той базы, в которую необходимо импортировать профиль. Пример с поиском по email в базе данных с id=1
:
akPush.initSubscription(
{
db: 1
email: 'example@email.com'
}, // Поиск профиля по email. Также будет записано в профиль, если совпадений не найдётся.
{
_fname: 'Anatoly',
_lname: 'Wasserman'
} // запись в профиль подписчика имени и фамилии
)
Пример с поиском по email в базах данных с id=15
и id=20
:
akPush.initSubscription(
{
db: [15,20]
email: 'example@email.com'
}, // Поиск профиля по email. Также будет записано в профиль, если совпадений не найдётся.
{
_fname: 'Anatoly',
_lname: 'Wasserman'
} // запись в профиль подписчика имени и фамилии
)
Список полей профиля приведён в этой статье.