Я пытаюсь разрешить пользователям получать уведомления pu sh, если произошло какое-либо действие (например, комментарий и т. Д. c). В журнале иногда появляется сообщение sucesscount: 1, однако устройство не получает уведомление. Но в большинстве случаев это неверный счет: 1 во второй раз. В любом случае, я не получаю уведомление pu sh. Когда я развернул свои функции, ошибок не было.
Когда я отправляю себе тестовое сообщение из облачной системы обмена сообщениями Firebase, оно, однако, работает правильно и отправляет уведомление pu sh всем устройствам успешно.
Вот observing likes
например
exports.observeLikes = functions.database.ref('/user-likes/{uid}/{postId}').onCreate((snapshot, event) => {
var uid = event.params.uid;
var postId = event.params.postId;
return admin.database().ref('/users/' + uid).once('value', snapshot => {
var userThatLikedPost = snapshot.val();
return admin.database().ref('/posts/' + postId).once('value', snapshot => {
var post = snapshot.val();
if(uid === post.ownerUid) {
return Promise.resolve();
}
return admin.database().ref('/users/' + post.ownerUid).once('value', snapshot => {
var postOwner = snapshot.val();
var payload = {
notification: {
body: userThatLikedPost.username + ' liked your post ',
sound: 'default'
}
};
admin.messaging().sendToDevice(postOwner.fcmToken, payload)
.then((response) => {
// Response is a message ID string.
console.log('Successfully sent message:', response);
return response;
})
.catch((error) => {
console.log('Error sending message:', error);
throw new Error('Error sending message:', error);
});
})
})
})
})
Log