Quiero enviar al usuario una notificación automática con funciones en la nube en Firebase si alguien comentó un tema en su dispositivo iOS. Este código a continuación funciona bien si coloco el contenido de la notificación manualmente.
const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(); exports.Push = functions.database.ref('/placeID/{pushId}/') .onCreate((snapshot, context) => { var topic = 'weather'; const payload = { notification: { title: 'User Max', body: 'Hi how are you?', badge: '1', sound: 'default' } }; admin.messaging().sendToTopic(topic,payload); })En el siguiente paso quiero obtener el contenido del comentario que la persona ha enviado. Un poco obtener el valor de la instantánea. Lo intenté así y no obtuve ningún error en Logs Explorer de Google. Pero ya no hay notificaciones push.
const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(); exports.Push = functions.database.ref('/placeID/{autogeneratedplaceID}/') .onCreate((snapshot, context) => { var username = snapshot.child("userName").val() var usercomment = snapshot.child("userComment").val() var topic = 'weather'; const payload = { notification: { title: username, body: usercomment, badge: '1', sound: 'default' } }; admin.messaging().sendToTopic(topic,payload); })¿Que esta mal aquí? También encontré un video en Youtube con la solución exacta. Pero esto es para Android y realmente no me ayudó. YouTube
Así es como se ve la estructura de mi base de datos en tiempo real de firebase. 