Документация Каталог Услуги Контакты

iPush — Push-уведомления для InstantCMS

Держите аудиторию рядом. Компонент добавляет браузерные push-уведомления без мобильных приложений и SMS-рассылок. Пользователь закроет вкладку — и узнает о новом материале или сообщении через всплывающее уведомление.

Браузерные уведомления
Работает по событиям
Протокол VAPID

О компоненте

Держите аудиторию рядом

Представьте: пользователь закрыл вкладку с вашим сайтом, ушёл по делам — и именно в этот момент у вас вышел новый материал или кто-то написал ему личное сообщение. Без push-уведомлений он об этом не узнает. С ними — увидит всплывающее сообщение прямо на экране, кликнет и вернётся.

Компонент Push добавляет именно такую возможность в InstantCMS: браузерные push-уведомления без мобильных приложений и без SMS-рассылок.

3

типа событий для автоотправки

VAPID

стандарт безопасности

3

строки кода для отправки

Подписка пользователей

Нативный диалог браузера

Через несколько секунд после захода на сайт браузер покажет пользователю стандартный системный диалог с предложением подписаться. Никаких сторонних попапов — только нативный интерфейс браузера, которому люди доверяют. Один клик — и подписка оформлена.

Подписаться могут как зарегистрированные пользователи, так и гости — если разрешить это в настройках.

Нативный интерфейс

Используется стандартный системный диалог браузера — никаких кастомных попапов и дополнительных запросов.

Ручная отправка из админки

Контроль над каждым уведомлением

В разделе Компоненты → Push → Отправить администратор может написать уведомление и отправить его:

1

Всем подписчикам сразу

Массовая рассылка уведомлений для охвата всей аудитории.

2

Конкретному пользователю по ID

Персональные уведомления для отдельных пользователей.

Для каждого уведомления задаётся:

Заголовок
Текст
Ссылка для перехода
Иконка

После отправки отображается статистика: сколько доставлено, сколько не дошло.

Автоматическая отправка по событиям

Компонент встроен в жизнь сайта через хуки InstantCMS

Это одна из главных особенностей компонента — уведомления уходят сами в трёх ситуациях:

1

При публикации контента

Как только материал проходит модерацию и появляется на сайте, все подписчики получают уведомление с заголовком публикации и ссылкой. Можно ограничить автоотправку только для определённых типов контента — например, только для новостей или только для статей.

2

При новом комментарии

Автор материала получает уведомление, когда кто-то оставил комментарий под его публикацией. Удобно — можно оперативно ответить, не обновляя страницу вручную.

3

При личном сообщении

Получатель узнаёт о новом сообщении сразу — даже если в этот момент не находится на сайте.

Тонкая настройка автоматики

Автоотправку при публикации можно включить только для нужных типов контента, каждый вид событий включается отдельно.

Управление подписчиками

Фильтрация, удаление, экспорт

В разделе Подписчики администратор видит всех, кто оформил подписку:

1

Привязка к аккаунту

Видно, привязан ли подписчик к конкретному аккаунту пользователя.

2

Дата подписки

Информация о том, когда пользователь подписался.

3

Фильтрация и удаление

Доступны фильтрация, удаление отдельных записей, массовое удаление.

4

Очистка устаревших

Удаление подписок старше 30, 60 или 90 дней.

Список подписчиков можно экспортировать в CSV для дальнейшего анализа.

Логи отправки

История каждого уведомления

Каждая отправка фиксируется:

Заголовок
Текст
Статус
Описание ошибки
Дата

В разделе Логи можно:

1

Фильтрация по статусу

Посмотреть только успешные или ошибочные отправки.

2

Фильтрация по дате

Отобрать уведомления за определённый период.

3

Фильтрация по пользователю

Найти все уведомления конкретному получателю.

Сводка за последние 7 дней — сколько уведомлений ушло, сколько дошло, сколько нет.

Настройки и безопасность

Протокол VAPID и защита от злоупотреблений

Компонент использует протокол VAPID — стандарт, принятый во всех современных браузерах:

VAPID-ключи

Генерируются в один клик прямо в настройках, хранятся в базе данных сайта и нигде не передаются третьим сторонам.

Встроенный rate limiting защищает от злоупотреблений:

1

ограничение подписок

2

ограничение отправок

Настройки интегрированы с системой уведомлений на сайте.

Почему это удобно

Преимущества компонента

1

Не нужен сторонний сервис

Никаких ежемесячных платежей, никакой зависимости от внешних платформ — данные подписчиков хранятся только у вас.

2

Работает в любом современном браузере

Chrome, Firefox, Edge, Opera, Safari на macOS 13+ — компонент покрывает подавляющее большинство аудитории.

3

Простая установка

Загрузить компонент, сгенерировать VAPID-ключи — и всё готово к работе.

4

Гибкость для разработчиков

Компонент предоставляет PHP API: из любого места кода можно отправить уведомление буквально в три строки.

Возможности

Полный набор функций для работы с push-уведомлениями

Подписка/отписка пользователей и гостей
Массовая и одиночная рассылка уведомлений
VAPID-аутентификация
Расписание рассылок (CRON)
Очередь отправки для больших объёмов
Шаблоны уведомлений
Статистика и логирование
Привязка подписок гостей к авторизованным пользователям
Автоматическая очистка старых логов
Rate limiting для защиты от спама
Кроссплатформенность

Поддерживаемые браузеры

Компонент работает во всех современных браузерах

Браузер Windows Linux macOS Android iOS
Chrome
Firefox
Edge
Opera
Yandex
Safari
Samsung Internet ⚠️
iOS Safari

Apple не реализовала Web Push API. Для iOS требуется интеграция с APNs (Apple Push Notification service).

Особенности реализации

Технические детали компонента

1

Service Worker

Кроссплатформенная обработка push-событий через Service Worker.

2

Определение браузеров

Корректное определение: Chrome, Firefox, Edge, Opera, Yandex, Safari.

3

Автоматическая реподписка

Обработка pushsubscriptionchange для автоматической реподписки.

4

Actions (кнопки) в уведомлениях

Поддержка кнопок действий для Chrome/Edge/Opera/Firefox.

5

Умная навигация

Фокус существующей вкладки или открытие новой при клике на уведомление.

Автоматические события

12 событий профиля пользователя

Компонент поддерживает 12 событий профиля пользователя:

# Событие Системный хук Статус
1 Новые комментарии comment_after_add
2 Ответы на комментарии comment_after_add
3 Приглашения в группы groups_after_accept_request
4 Новые сообщения messages_after_send
5 Запросы дружбы users_add_friendship
6 Одобренные запросы дружбы users_add_friendship
7 Прекращение дружбы users_after_delete_friendship
8 Записи на стене wall_after_add
9 Новые записи в подписках notify_subscribers
10 Оценки записей rating_vote
11 Скоро окончание публикации notify_expired_content_items
12 Публикация контента content_after_add_approve

PHP API

Отправка уведомлений из кода

Компонент предоставляет простой PHP API для отправки уведомлений из любого места кода:

Отправка пользователю PHP
$push = cmsCore::getModel('push');
$push->sendToUser($user_id, [
    'title' => 'Новый ответ в теме',
    'body'  => 'Кто-то ответил на ваш комментарий',
    'url'   => '/forum/topic/42',
]);
Отправка всем подписчикам PHP
$push = cmsCore::getModel('push');
$push->sendToAll([
    'title' => 'Новое уведомление',
    'body'  => 'Проверьте новые материалы на сайте',
    'url'   => '/',
]);
3

строки кода для отправки

2

метода: пользователю и всем

Купить компонент

Мгновенная загрузка после оплаты

1000
Пожизненная лицензия
Бесплатные обновления
Техническая поддержка
Мгновенная доставка
Введите корректный email
Банковская карта
Т-Банк Pay
После оплаты ссылка на скачивание будет отправлена на указанный email