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

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

  • Бэкэнд FCM предоставлен Google.
  • Ваш сервер приложений или другая доверенная серверная среда , в которой выполняется логика вашего сервера, например, Cloud Functions для 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. Подробнее о параметрах заголовка и тела см. в разделе Build App Server Send Requests