Push-уведомления в Yandex Cloud Notification Service
Push-уведомления в браузере — это сообщения, всплывающие в браузере.
Push-уведомления могут сообщать о новом контенте, специальных предложениях и других значимых событиях. Браузерные уведомления будут работать на разных платформах: на настольных компьютерах, смартфонах и планшетах с любой операционной системой. Чтобы получать уведомления, пользователю не требуется ставить определенное ПО, достаточно стандартного браузера на его устройстве.
Push-уведомления также поддерживаются в прогрессивных веб-приложениях — PWA
Чтобы уведомление отправлялось в браузер по защищенному каналу, пользователь должен подписаться на уведомления через сервер уведомлений, который используется его браузером. Затем в канале уведомления CNS надо создать эндпоинт для этого пользователя.
Примечание
В сервисе действуют ограничения. Подробнее см. в разделе Квоты и лимиты Yandex Cloud Notification Service.
Порядок настройки Push-уведомлений:
-
В сервисе CNS создайте канал Push-уведомления в браузере.
-
Из браузера пользователя с помощью Service Worker
вызовите метод JavaScript subscribe .При вызове метода браузер отправляет запрос на свой сервер отправки уведомлений. Например, Google Chrome отправляет запрос на Firebase Cloud Messaging (FCM), Safari — на Apple Push Notification Service (APNs). В ответ вернется объект PushSubscription
. -
Преобразуйте полученный объект в JSON, вызвав метод toJSON
. -
Используйте полученный JSON при создании эндпоинта. Через этот эндпоинт пользователю будут отправляться уведомления.
-
Чтобы отправить уведомление, создайте сообщение в CNS и укажите в качестве получателя идентификатор (ARN) эндпоинта.
Чтобы отправлять уведомления разным пользователям, создайте базу эндпоинтов для всех пользователей.
Порядок отправки push-уведомлений:
- Ваше веб-приложение инициирует отправку уведомления через канал push-уведомлений в браузере.
- Команда на отправку поступает в CNS.
- CNS отправляет уведомления на серверы, заданные в эндпоинтах.
- Серверы уведомлений (FCM, APNs) отправляют уведомления в браузеры пользователей.
Работа с push-уведомлениями в браузере аналогична работе с мобильными push-уведомлениями.