Article précédent Je pense avoir créé un modèle pour les notifications push, donc cette fois j'enverrai les notifications de mon serveur au lieu de la console Firebase. Un article sur le fait d'essayer de le publier.
Le serveur utilise CentOS7 configuré sur AWS. Je pense que le langage que vous utilisez n'a pas d'importance, mais j'ai choisi Python 3.7 pour le moment. On suppose que Python et pip sont déjà installés.
En plus des notifications, j'aimerais que le client fasse diverses choses en utilisant les informations qui y sont envoyées comme déclencheur, mais je vais d'abord omettre cette zone et viser simplement à envoyer des notifications.
Je pense qu'il est bon de comprendre que le SDK Firebase Admin est un outil qui sert d'interaction entre le serveur et Firebase. Étant donné que Python est sélectionné comme langue à utiliser cette fois, le SDK Firebase Admin Python sera installé. Exécutez ceci selon la procédure de ici. Si pip est inclus, exécutez simplement la commande suivante. Cette fois, la version 4.2.0 a été installée.
pip install firebase-admin
La référence est ici, mais en commentaire, il est indiqué que "l'approbation de la demande d'envoi est requise". Tout d'abord, vérifiez la procédure de ici.
Certains modèles sont décrits, mais cette fois, la demande est émise à partir du serveur configuré dans AWS, elle correspond donc au "Téléchargement du fichier JSON du compte de service à partir du projet Firebase". La procédure correspond à Fournir les informations d'identification manuellement sur la page ci-dessus.
Je ne pense pas qu'il y ait de colmatage particulier, téléchargez simplement le fichier et définissez les variables d'environnement. Étant donné que le SDK Admin est utilisé cette fois, il n'est pas nécessaire d'effectuer les étapes après «Créer un jeton d'accès à l'aide des informations d'authentification».
Revenez à ici. La transmission d'essai a été réalisée en détournant l'échantillon pour la transmission. Le code est comme suit.
import firebase_admin
from firebase_admin import messaging
default_app = firebase_admin.initialize_app()
# This registration token comes from the client FCM SDKs.
registration_token = 'Jeton d'appareil'
myNotification = messaging.Notification(title='Test', body='Hello, FCM from My Phthon Server!')
# See documentation on defining a message payload.
message = messaging.Message(
data={
'score': '850',
'time': '2:45',
},
token=registration_token,
notification=myNotification
)
# Send a message to the device corresponding to the provided
# registration token.
response = messaging.send(message)
# Response is a message ID string.
print('Successfully sent message:', response)
L'exemple de script est fondamentalement le même, mais les éléments suivants sont principalement modifiés.
Les spécifications de firebase_admin.messaging
sont résumées dans ici, veuillez donc les consulter comme il convient.
Lorsque j'ai exécuté ce script python, après un certain temps, la notification push illustrée à la figure 1 est arrivée en toute sécurité sur l'appareil Android.
Figure 1: Notifications push émises par le serveur
Pour le moment, le processus de transfert du côté serveur self-made peut être mis en œuvre.