Votre environnement de serveur et FCM
Le côté serveur de Firebase Cloud Messaging se compose de deux composants:
- Le backend FCM fourni par Google.
- Votre serveur d'application ou un autre environnement serveur approuvé où s'exécute votre logique de serveur, comme Cloud Functions pour Firebase ou d'autres environnements cloud gérés par Google.
Votre serveur d'application ou votre environnement de serveur approuvé envoie des requêtes de messages au backend FCM, qui achemine ensuite les messages vers les applications clientes exécutées sur les appareils des utilisateurs.
Exigences concernant l'environnement de serveur approuvé
Votre environnement de serveur d'application doit répondre aux critères suivants:
- Peut envoyer des requêtes de message correctement mises en forme au backend FCM.
- Il peut gérer les requêtes et les renvoyer à l'aide d'un intervalle exponentiel entre les tentatives.
- Il doit pouvoir stocker de manière sécurisée les identifiants d'autorisation du serveur et les jetons d'enregistrement du client.
Choisir une option de serveur
Vous devez choisir un moyen d'interagir avec les serveurs FCM: à l'aide de Firebase Admin SDK ou du protocole brut. En raison de sa compatibilité avec les langages de programmation populaires et de ses méthodes pratiques pour gérer l'authentification et l'autorisation, la méthode Firebase Admin SDK est recommandée.
Vous avez le choix entre plusieurs options pour interagir avec les serveurs FCM:
- Firebase Admin SDK, qui est compatible avec Node, Java, Python, C# et Go.
- L' API HTTP v1 FCM, une API REST avec une autorisation sécurisée et des fonctionnalités de messagerie multiplate-forme flexibles (Firebase Admin SDK est basée sur ce protocole et offre tous ses avantages inhérents).
Firebase Admin SDK pour FCM
L'API FCM d'administration gère l'authentification auprès du backend, et facilite l'envoi de messages et la gestion des abonnements aux sujets. Avec Firebase Admin SDK, vous pouvez:
- Envoyer des messages à des appareils individuels
- Envoyez des messages à des sujets et à des instructions conditionnelles correspondant à un ou plusieurs sujets.
- Abonner et désabonner des appareils à des sujets
- Créer des charges utiles de message adaptées à différentes plates-formes cibles
Le SDK Node.js Admin fournit des méthodes permettant d'envoyer des messages à des groupes d'appareils.
Pour configurer le Firebase Admin SDK, consultez Ajouter le Firebase Admin SDK à votre serveur. Si vous avez déjà un projet Firebase, commencez par Ajouter le SDK. Assurez-vous également d'activer l'API Cloud Messaging sur la page des paramètres Cloud Messaging de votre projet. Une fois le Firebase Admin SDK installé, vous pouvez commencer à écrire une logique pour créer des requêtes d'envoi.
Protocole serveur FCM
FCM fournit l' API HTTP v1 FCM aux développeurs qui préfèrent un protocole de serveur brut.
Pour envoyer un message, le serveur d'application émet une requête POST avec un en-tête HTTP et un corps HTTP composé de paires clé-valeur JSON. Pour en savoir plus sur les options d'en-tête et de corps, consultez la section Créer des requêtes d'envoi de l'appli serveur.