Поделиться через


Что такое Центры уведомлений Azure?

Центры уведомлений Azure предоставляют простой и масштабируемый обработчик push-уведомлений, позволяющий отправлять уведомления на любую платформу (iOS, Android, Windows и т. д.) из любой серверной части (облачной или локальной). Центры уведомлений отлично подходят как для корпоративных, так и для потребительских сценариев. Вот несколько примеров сценариев:

  • Отправлять уведомления о критических новостях миллионам с низкой задержкой.
  • Отправьте купоны на основе расположения заинтересованным сегментам пользователей.
  • Отправка уведомлений, связанных с событиями, пользователям или группам для медиа/спорта, финансов и игровых приложений.
  • Отправляйте рекламный контент в приложения для вовлечения и маркетинга клиентам.
  • Уведомляйте пользователей о корпоративных событиях, таких как новые сообщения и рабочие элементы.
  • Отправка кодов для многофакторной проверки подлинности.

Примечание.

For information about Firebase Cloud Messaging deprecation and migration steps, see Google Firebase Cloud Messaging migration.

Что такое push-уведомления?

Push-уведомления — это форма взаимодействия между приложениями, в которых пользователи мобильных приложений уведомляются о определенных нужных сведениях, как правило, во всплывающем окне или диалоговом окне на мобильном устройстве. Пользователи обычно выбирают либо просмотреть, либо закрыть сообщение; выбрав просмотр, открывается мобильное приложение, которое отправило уведомление. Some notifications are silent - delivered behind the scenes for the app to process and decide what to do.

Push notifications are vital for consumer apps in increasing app engagement and usage, and for enterprise apps in communicating up-to-date business information. Это лучший обмен данными между приложениями, так как он является энергоэффективным для мобильных устройств, гибким для отправителей уведомлений и доступным, если соответствующие приложения не активны.

Примечание.

Центры уведомлений Azure официально не поддерживают push-уведомления по протоколу VOIP; Однако в этой статье описывается, как использовать уведомления APNS VOIP через Центры уведомлений Azure.

Дополнительные сведения о push-уведомлениях для нескольких популярных платформ см. в следующих разделах:

Как работают push-уведомления?

Push-уведомления предоставляются через инфраструктуру для конкретных платформ, называемых системами уведомлений платформы (PNSes). Они предлагают основные функции push-уведомлений для доставки сообщения на устройство с предоставленным идентификатором и не имеют общего интерфейса. Чтобы отправить уведомление всем клиентам в android, iOS и Windows версии приложения, разработчик должен работать отдельно со службой push-уведомлений Apple (APNS), Firebase Cloud Messaging (FCM) и службой уведомлений Windows (WNS).

At a high level, here is how push works:

  1. An application wants to receive a notification, so it contacts the PNS for the target platform on which the app is running and requests a unique and temporary push handle. The handle type depends on the system (for example, WNS uses URIs while APNS uses tokens).
  2. Клиентское приложение сохраняет этот идентификатор в серверной части приложения или у его поставщика.
  3. Чтобы отправить push-уведомление, серверная часть приложения обращается к PNS с помощью идентификатора для целевого клиентского приложения.
  4. The PNS forwards the notification to the device specified by the handle.

Рабочий процесс push-уведомлений

Проблемы push-уведомлений

PNSes are powerful. Тем не менее, они оставляют много работы разработчику приложений для реализации даже распространенных сценариев push-уведомлений, таких как трансляция push-уведомлений для сегментированных пользователей.

Отправка push-уведомлений требует сложной инфраструктуры, которая не связана с основной бизнес-логикой приложения. Ниже перечислены некоторые проблемы инфраструктуры.

  • Зависимость платформы
    • Серверная часть требует сложной и трудноподдерживаемой логики, зависимой от платформы, для отправки уведомлений на устройства на различных платформах, так как службы уведомлений (PNS) не унифицированы.
  • Масштабировать
    • В соответствии с рекомендациями по PNS маркеры устройства должны обновляться при каждом запуске приложения. Бэкенд работает с большим объемом трафика и доступом к базе данных исключительно для сохранения токенов up-to-date. Когда число устройств растет до сотен, тысяч или миллионов, стоимость создания и обслуживания этой инфраструктуры массовая.
    • Most PNSes do not support broadcast to multiple devices. A simple broadcast to a million devices results in a million calls to the PNSes. Масштабирование этого объема трафика с минимальной задержкой является нетривиальным.
  • Маршрутизация
    • Хотя PNSes предоставляют способ отправки сообщений на устройства, большинство уведомлений приложений предназначены для пользователей или групп интересов. Серверная часть должна поддерживать реестр для связывания устройств с группами интересов, пользователями, свойствами и т. д. Эта нагрузка добавляет время на рынок и расходы на обслуживание приложения.

Зачем использовать Центры уведомлений Azure?

Центры уведомлений устраняют все сложности, связанные с отправкой push-уведомлений самостоятельно из серверной части приложения. Its multi-platform, scaled-out push notification infrastructure reduces push-related coding and simplifies your backend. С помощью Центров уведомлений устройства просто отвечают за регистрацию своих PNS-дескрипторов в концентраторе, а серверная часть отправляет сообщения пользователям или группам интересов, как показано на следующем рисунке:

Схема концентратора уведомлений

Центры уведомлений — это готовый обработчик push-уведомлений со следующими преимуществами:

  • Кроссплатформы
    • Поддержка всех основных платформ push-уведомлений.
    • Общий интерфейс для отправки на все платформы, используя как специфичные, так и независимые от платформы форматы, без необходимости выполнять дополнительные работы для каждой платформы.
    • Device handle management in one place.
  • Cross backends
    • Облако или локальная среда.
    • .NET, Node.js, Java, Python и т. д.
  • Широкий набор шаблонов доставки
    • Трансляция на одну или несколько платформ: вы можете мгновенно транслировать миллионы устройств на разных платформах с помощью одного вызова API.
    • Отправка на устройство. Вы можете нацеливать уведомления на отдельные устройства.
    • Push to user: Tags and templates help you reach all cross-platform devices for a user.
    • Push to segment with dynamic tags: The tags feature helps you segment devices and push to them according to your needs, whether you are sending to one segment or an expression of segments (For example, active AND lives in Seattle NOT new user). Вместо того чтобы быть ограниченным моделью публикации-подписки, вы можете обновлять теги устройств в любом месте и в любое время.
    • Локализованная отправка: функция шаблонов помогает достичь локализации, не затрагивая внутренний код.
    • Silent push: You can enable the push-to-pull pattern by sending silent notifications to devices and triggering them to complete certain pulls or actions.
    • Запланированная отправка. Вы можете запланировать отправку уведомлений в любое время.
    • Direct push: You can skip registering devices with the Notification Hubs service and directly batch push to a list of device handles.
    • Personalized push: Device push variables help you send device-specific personalized push notifications with customized key-value pairs.
  • Масштабируемость
    • Отправляйте быстрые сообщения миллионам устройств без повторного проектирования или сегментирования устройств.
  • Безопасность
    • Секрет общего доступа (SAS) или федеративная проверка подлинности.

Дальнейшие действия

Приступая к созданию и использованию концентратора уведомлений, выполните инструкции по отправке push-уведомлений в мобильные приложения.