Открыть сервис

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

Push-уведомление (от англ. push — «толкать», «проталкивать») — это короткое всплывающее сообщение, которое сервер отправляет на устройство пользователя (смартфон, планшет, компьютер) без явного запроса со стороны получателя. Относится к категории технологий «сервер-клиент», где инициатором передачи данных выступает сервер. Ключевые характеристики: минимальный объём текста, отображение поверх другого интерфейса (экрана блокировки, рабочего стола, окна браузера) и принудительное привлечение внимания пользователя.

История развития

Технология push-уведомлений берёт начало в конце 1990-х годов. Первой коммерчески успешной реализацией стала система BlackBerry Push (канадская компания Research In Motion, 2003). Она позволяла корпоративным пользователям мгновенно получать электронную почту на мобильные устройства без ручной проверки почтового ящика. В отличие от модели polling (регулярная отправка запроса клиентом), push-архитектура снижала нагрузку на сеть и аккумулятор.

Массовое распространение технология получила в 2009 году с запуском Apple Push Notification Service (APNs) в составе операционной системы iOS 3.0. Это решение позволяло сторонним разработчикам отправлять уведомления на iPhone и iPad через единый сервер Apple, сохраняя при этом стабильную работу фоновых процессов. В 2010 году компания Google представила аналог — Cloud to Device Messaging (C2DM), который затем в 2012 году был заменён на Firebase Cloud Messaging (FCM). Для десктопных браузеров push-уведомления стали доступны с выходом стандарта W3C Push API (рекомендация World Wide Web Consortium, 2015 год).

Принцип работы

Push-уведомления функционируют на основе постоянного TCP-соединения между устройством и сервером платформы (Apple, Google, Microsoft). Процесс включает несколько этапов:

  1. Регистрация устройства. При первом запуске приложения, поддерживающего уведомления, устройство связывается с push-сервером операционной системы. Сервер генерирует уникальный токен (строку символов), который идентифицирует конкретное приложение на конкретном устройстве. Токен передаётся разработчику приложения (на его сервер).
  2. Отправка уведомления. Сервер разработчика (или доверенный сервер) отправляет запрос с токеном, заголовком и полезной нагрузкой (payload) на push-сервер операционной системы. Полезная нагрузка упаковывается в формат JSON (JavaScript Object Notation).
  3. Доставка. Push-сервер находит устройство по токену и передаёт уведомление. Если устройство находится в автономном режиме, сервер сохраняет сообщение и доставляет его при появлении сети. Для iOS и Android срок хранения ограничен (обычно не более 28 дней).
  4. Отображение. Операционная система получает данные, парсит их и отображает в виде всплывающего окна, значка (badge) и/или звукового сигнала (alert). Разработчик может задать поведение при нажатии — переход на конкретный экран приложения, открытие URL.

Архитектура push-сервисов

ПлатформаСервисОсобенности
Apple iOS, iPadOS, macOSApple Push Notification Service (APNs)Использует бинарный протокол, размер сообщения до 4 КБ. Поддерживает звук, вибрацию, бейджи
Google Android, ChromeFirebase Cloud Messaging (FCM)Размер полезной нагрузки до 4 КБ (до 2 КБ в режиме «data»). Интегрирован с Play Console
Microsoft WindowsWindows Push Notification Services (WNS)Используется для приложений Universal Windows Platform (UWP). Требует учётной записи Microsoft
БраузерыPush API (W3C-стандарт)Работает через Service Workers (служебные скрипты). Необходимо разрешение пользователя

Классификация

По содержанию и цели

  • Информационные. Содержат новости, сводки погоды, обновления статуса покупки (например, «Заказ передан в доставку»). Цель — информирование без немедленного действия.
  • Транзакционные. Подтверждают финансовые операции, регистрацию, оплату. Как правило, содержат код подтверждения (one-time password или OTP) или сумму списания.
  • Рекламные / маркетинговые. Продвигают товары, услуги, акции, скидки. Например: «Наушники со скидкой 30% только сегодня». Часто имеют ограниченный срок действия.
  • Социальные. Сообщения от мессенджеров (Telegram, WhatsApp, Viber), социальных сетей (VK, Одноклассники) — новые сообщения, упоминания, запросы в друзья.

По технической реализации

  • Обычные (локальные). Формируются операционной системой или приложением без участия сервера. Например, напоминания из календаря или будильник.
  • Серверные (классические push). Инициируются удалённым сервером. Описаны выше.
  • Геотаргетированные (location-based). Активируются при входе пользователя в определённый географически очерчённый регион (геофенс). Используется в приложениях доставки, туризма, ритейла.

Доставка в браузерах

Для веб-сервисов push-уведомления реализуются через Web Push Protocol — открытый стандарт, выпущенный IETF в 2016 году (RFC 8292). Ключевой элемент — Service Worker, фоновый JavaScript-скрипт, который обрабатывает входящие уведомления, даже если страница браузера закрыта. Пользователь должен явно дать разрешение (через диалог браузера). В РФ все браузеры обязаны соблюдать требования Федерального закона № 152-ФЗ «О персональных данных»: согласие не должно быть предустановленным по умолчанию.

Значение и применение

Push-уведомления используются практически во всех категориях мобильных и веб-приложений:

  • Электронная коммерция (Wildberries, Ozon, Яндекс.Маркет) — уведомления о скидках, статусе заказа.
  • Банки (СберБанк, Т-Банк, ВТБ) — подтверждение операций, напоминания о платежах.
  • Медицина — запись к врачу, напоминания о приёме лекарств.
  • Образование — домашние задания, расписание.
  • Доставка (Яндекс.Еда, СберМаркет) — статус курьера.
  • Службы экстренного оповещения (МЧС России) — предупреждения о природных и техногенных угрозах.

Критика и ограничения

Проблемы конфиденциальности. Push-токены — это уникальные идентификаторы устройства. При их передаче третьим лицам (например, рекламным сетям) возможна деанонимизация пользователя. В 2020 году компания Apple запретила приложениям собирать push-токены для целей таргетинга без явного согласия, а в соответствии с законами РФ (№ 152-ФЗ) сбор токенов требует согласия субъекта персональных данных.

Чрезмерная назойливость. Массовое использование push-уведомлений привело к явлению «push-fatigue» (утомление от уведомлений). По данным исследований, более 60% пользователей отключают все уведомления от приложений в течение семи дней после установки. В 2023 году компания Google ввела автоматическое скрытие уведомлений от редко используемых приложений.

Риски фишинга и мошенничества. Злоумышленники могут имитировать push-уведомления от банков или госорганов, используя поддельные мобильные приложения. В России известны случаи распространения вредоносных программ, которые перехватывают тексты push-уведомлений для кражи одноразовых паролей (OTP). Банки и Минцифры РФ регулярно предупреждают граждан о недопустимости перехода по ссылкам в push-уведомлениях от неизвестных источников.

Зависимость от интерфейса. Push-уведомления не работают в офлайн-режиме (кроме локальных). Их доставка возможна только при наличии активного интернет-соединения или после его восстановления.

Технические ограничения

  • Размер сообщения: для FCM и APNs — до 4 КБ (без учёта заголовков). Превышение приводит к обрыву соединения.
  • Частота отправки: Apple ограничивает скорость APNs до 1000 уведомлений в секунду для одного приложения; Google не устанавливает жёстких лимитов, но при превышении определённого порога может снижать приоритет доставки.
  • Приоритет: существует два уровня — «normal» (доставка при нормальной нагрузке на устройство) и «high» (немедленная доставка, требует потребления энергии). Для аварийных оповещений (например, землетрясение) используется приоритет «critical alert» (iOS), который обходит настройки беззвучного режима.

Интересные факты

  • Российские мессенджеры (Telegram, Viber) используют собственные протоколы push-уведомлений, не всегда совместимые со стандартными push-сервисами операционных систем. Для Telegram на iOS применяется доработка APNs, а на Android — FCM.
  • В 2021 году компания «Лаборатория Касперского» обнаружила троян Acecard, который в режиме реального времени подменял push-уведомления банковских приложений в России, направляя пользователей на фишинговые сайты.
  • С 2021 года в России действует закон «О приложениях» (Федеральный закон № 479-ФЗ), согласно которому все приложения, распространяемые через официальные магазины приложений (App Store, Google Play, RuStore), обязаны запрашивать согласие на push-уведомления отдельно от основного разрешения на уведомления.

Источники

  • Apple, «Local and Remote Notification Programming Guide». Apple Developer Documentation, 2023.
  • Google, «Firebase Cloud Messaging — FCM Protocol». Firebase Documentation, 2024.
  • W3C, «Push API Editor’s Draft». World Wide Web Consortium, 2016.
  • Федеральный закон от 27 июля 2006 г. № 152-ФЗ «О персональных данных» (с изменениями на 2024 год).
  • Федеральный закон от 29 июля 2021 г. № 479-ФЗ «О внесении изменений в Закон РФ «О защите прав потребителей» в части регулирования распространения приложений».
  • «Push-уведомления как угроза безопасности: исследование троянов Acecard и Svpeng». Отчёт «Лаборатории Касперского», 2021.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →