web-dev-qa-db-fra.com

Comment créer un sujet dans les notifications FCM

J'essaie l'API Firebase-Notification. Le service fonctionne parfaitement lorsque j'envoie un message en aval de la console à l'application, mais comment envoyer un message aux utilisateurs enregistrés de la rubrique?

je l'ai fait dans Android côté

FirebaseMessaging.getInstance().subscribeToTopic("TopicName");

mais quand j'essaie d'envoyer un message en aval de la console au sujet, il est dit

This project does not have any topics

EDIT: j’ai compris qu’après le mappage du sujet, il faut jusqu’à 1 jour pour apparaître dans la console Firebase

66
Moh'd Awad

Premièrement, étant donné que IID_TOKEN est votre jeton d’enregistrement et que TOPIC_NAME est le sujet que vous souhaitez créer, vous devez créer un sujet en créant un POST demande à

https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME

Et pour vérifier vos sujets créés, faites une demande OBTENEZ sur cette URL

 https://iid.googleapis.com/iid/info/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA?details=true

et insérez votre API_KEY dans votre requête HEADERS

Authorization: key=YOUR_API_KEY

Votre sujet prendra jusqu'à 1 jour pour s'afficher dans la console Firebase. Vous pourrez ainsi tester ou utiliser un logiciel tel que Advanced REST client

52
Moh'd Awad

C'est un chemin alternatif.

Si vous abonnez une application client à un sujet inexistant, le sujet sera également créé sans avoir à appeler aucune demande d'URL Firebase.

Il faudra également quelques heures pour apparaître sur la console Firebase.

En utilisant google exemple partagé: https://github.com/firebase/quickstart-Android/tree/master/messaging vous pouvez confirmer la même chose.

        FirebaseMessaging.getInstance().subscribeToTopic("news");
        Log.d(TAG, "Subscribed to news topic");
58
Juan Pablo

Firebase prend du temps pour créer un nouveau sujet dans la console. Dans mon cas, un nouveau sujet a été créé après 4 heures.

22
Abhishek

Vous pouvez créer un sujet avec http api:

https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME

1. IID_TOKEN = Jeton d'enregistrement de périphérique, vous pouvez le trouver avec la commande suivante sur votre périphérique Android:

String IID_TOKEN = FirebaseInstanceId.getInstance().getToken();

2.TOPIC_NAME = nouveau nom de sujet

3.Autorisation: clé = YOUR_API_KEY . Définissez ce paramètre dans l'en-tête. Regardez la capture d'écran: Création d'un nouveau sujet via le client de repos avancé

YOUR_API_KEY: console.firebase.google.com

et envoyez la demande et vous recevrez le statut http "OK".

Ensuite, vous pouvez obtenir des informations sur tous vos sujets dans votre projet actuel avec l’API suivante:

https://iid.googleapis.com/iid/info/IID_TOKEN?details=true

il faut ici ajouter une clé d’autorisation à l’en-tête de la demande et vous recevrez votre liste de sujets: sujets d’information sur la réponse

Je recommande de lire cet article sur l'ID d'instance/Serveur de Google

18
mr.boyfox