Ваша серверная среда и FCM

Серверная часть Firebase Cloud Messaging состоит из двух компонентов:

  • Бэкэнд FCM предоставлен Google.
  • Ваш сервер приложений или другая доверенная серверная среда , в которой выполняется логика вашего сервера, например Cloud Functions for Firebase или другие облачные среды, управляемые Google.

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

Требования к доверенной серверной среде

Ваша среда сервера приложений должна соответствовать следующим критериям:

  • Возможность отправки правильно отформатированных сообщений-запросов в бэкэнд FCM .
  • Возможность обработки запросов и повторной их отправки с использованием экспоненциальной задержки.
  • Возможность безопасного хранения учетных данных авторизации сервера и токенов регистрации клиентов.

Выбор варианта сервера

Вам необходимо выбрать способ взаимодействия с серверами FCM : использовать Firebase Admin SDK или протокол RAW. Рекомендуемым способом является Firebase Admin SDK , поскольку он поддерживает популярные языки программирования и обеспечивает удобные методы аутентификации и авторизации.

Возможны следующие варианты взаимодействия с серверами FCM :

Firebase Admin SDK для FCM

API Admin FCM обеспечивает аутентификацию в бэкенде и упрощает отправку сообщений и управление подписками на темы. С помощью Firebase Admin SDK вы можете:

  • Отправка сообщений на отдельные устройства
  • Отправляйте сообщения по темам и условиям, которые соответствуют одной или нескольким темам.
  • Подписывайтесь на темы и отписывайтесь от них на устройствах
  • Создавайте полезную нагрузку сообщений, адаптированную для различных целевых платформ.

Admin Node.js SDK предоставляет методы для отправки сообщений группам устройств.

Чтобы настроить Firebase Admin SDK , см. раздел «Добавление Firebase Admin SDK на сервер» . Если у вас уже есть проект Firebase, начните с добавления SDK . Также убедитесь, что Cloud Messaging API включен на странице настроек Cloud Messaging для вашего проекта. После установки Firebase Admin SDK вы можете начать писать логику для создания запросов на отправку .

Протокол сервера FCM

FCM предоставляет API FCM HTTP v1 для разработчиков, предпочитающих необработанный серверный протокол.

Для отправки сообщения сервер приложений отправляет POST-запрос с HTTP-заголовком и HTTP-телом, состоящим из пар «ключ-значение» в формате JSON. Подробнее о параметрах заголовка и тела см. в разделе «Сборка запросов на отправку сервером приложений».