Ich verwende Google Cloud-Funktionen, um Push-Benachrichtigungen über Firebase zu registrieren. In meiner App habe ich eine Benachrichtigungsreferenz, die sich für einen aktuellen Benutzer ändert, wenn sie einen neuen Follower oder Ähnliches bekommen. Jetzt kann ich die Benachrichtigung an das Telefon senden, wenn sich das gesamte Referenz-Kind ändertAbrufen der ID des aktuellen Benutzers aus den Cloud-Funktionen und Firebase
Zum Beispiel, wenn ein einzelner Beitrag gemocht wird, wird es eine Benachrichtigung senden. Was ich tun muss, ist zu beobachten, dass der aktuelle Benutzer nur die Benachrichtigung dieser einzelnen Person sendet.
Hier ist mein JavaScript
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.sendPushNotification = functions.database.ref('/notification/{id}').onWrite(event => {
const payload = {
notification: {
title: 'New message arrived',
body: 'come check it',
badge: '1',
sound: 'default',
}
};
return admin.database().ref('fcmToken').once('value').then(allToken => {
if (allToken.val()) {
const token = Object.keys(allToken.val());
return admin.messaging().sendToDevice(token, payload).then(response => {
});
}
});
});
Datei würde Ich mag diese Zeile ersetzen:
functions.database.ref('/notification/{id}').onWrite(event => {
mit diesem:
functions.database.ref('/notification/{id}').(The current user ID).onWrite(event => {
Wie kann ich den aktuellen Benutzer-ID erhalten?
Sie sind ein Biest! Ich schätze Sie! – user8426652
Gern geschehen. Wenn meine Antwort nützlich war, klicken Sie auf den Upvote-Button links davon. Wenn es Ihre Frage beantwortet hat, klicken Sie auf das Häkchen, um es zu akzeptieren. Auf diese Weise wissen andere, dass Ihnen (ausreichend) geholfen wurde. –
@FrankvanPuffelen, in Ihrer ursprünglichen Antwort erwähnten Sie "Sie können herausfinden, welcher Benutzer die Funktion ausgelöst hat", können Sie einen Hinweis geben, wie das geht? – Tomas