Skip to content

Переход с другого сервиса web push ​

Если на сайте уже собраны подписчики в другом сервисе web push, их можно сохранить: клиенты, разрешившие уведомления, перейдут в платформу в фоне при следующем визите на сайт, без повторного запроса разрешения.

Почему нельзя держать два сервиса одновременно ​

На сайте в один момент времени должен работать только один скрипт web push. Каждый сервис подписывает токены своими ключами шифрования. Если работают два скрипта, второй перезаписывает подписку первого, и токены первого сервиса перестают работать.

Порядок перехода ​

  1. Отключите на сайте скрипт текущего сервиса web push.

  2. Замените содержимое текущего файла service worker на:

    js
    'use strict';
    
    importScripts('https://app.rees46.ru/assets/webpush/sw.js');

    Не переименовывайте и не перемещайте файл: смена имени или адреса файла аннулирует подписки. Если файл остается на прежнем месте, браузер просто выдаст новый токен, а разрешение на уведомления сохранится.

  3. Откройте Коммуникации → Настройки → Web push и укажите в поле Путь до service worker путь к этому файлу, например /sw.js или /firebase-messaging-sw.js.

  4. Установите на сайт JS SDK, если он еще не установлен.

С этого момента клиенты, подписанные в старом сервисе, при заходе на сайт в фоне передают новые токены в платформу.

Перенос базы токенов ​

Перенос токенов обычно не имеет смысла

Токен web push работает только с теми же ключами шифрования, с которыми он был создан, и только с совместимым service worker. Многие сервисы к тому же не удаляют недействительные токены, поэтому после переноса статистика рассылок может сильно отличаться от прежней.

Если текущий сервис может выгрузить токены вместе с ключами шифрования, их можно импортировать в платформу: обратитесь в поддержку. Учтите:

  • Импортированные токены анонимны: по ним можно отправлять только массовые рассылки.
  • Чтобы отправлять по ним триггерные цепочки, при импорте у каждого токена должен быть хотя бы один идентификатор клиента: email, телефон, номер карты лояльности или ID клиента в вашей системе.

Как связать старых подписчиков с профилями ​

Если контактов в старой базе нет, проще всего привести клиента на сайт по ссылке из уведомления. После смены сервиса какое-то время продолжайте массовые рассылки через старый сервис: старые токены работают, пока клиент не зайдет на сайт. Когда клиент перейдет по ссылке, SDK передаст новый токен в платформу вместе с идентификатором устройства, и клиенту можно будет отправлять триггерные сообщения.