![enter image description here](https://i.stack.imgur.com/g8dFK.png)
У меня есть эта структура в базе данных Firebase выше
Случай: Когда пользователь отправляет сообщение другому пользователю,Поле newMessage обновлено -true- в customer / id / chats / chatid
Затем я пытаюсь извлечь последнее сообщение из сообщений / chatid через chatid, полученное от клиентов / id / chats / chatid
Проблема: Я получаю обновление и данные о клиентах и отправляю уведомления, но мне нужно это последнее сообщение, Не знаю, как это сделать Нет опыта JavaScript вообще, Пример идентификатора чата, который я получаю от клиентов _path: '/ Customers / m6QNo7w8X8PjnBzUv3EgQiTQUD12', _data: {chats: {'- LCPNG9rLzAR5OSfrclG ': [Object]} 10 * 10: [22]} 10, 1022*
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.sendNotif = functions.database.ref('/customers/{id}/chats/{id}/').onUpdate((event) => {
const user = event.data.val();
console.log('Event data: ', event.data);
//HERE I WANT TO USE THAT CHAT ID TO FETCH MESSAGE in MESSAGES.
// Get last message and send notification.
// This works when newMessage field is updated.
// However I neeed the message content from another table.
var myoptions = {
priority: "high",
timeToLive: 60 * 60 * 24
};
// Notification data which supposed to be filled via last message.
const notifData = {
"notification":
{
"body" : "Great Match!",
"title" : "Portugal vs. Denmark",
"sound": "default"
}
}
admin.messaging().sendToDevice(user.fcm.token, notifData, myoptions)
.then(function(response) {
console.log('Successfully sent message:', response);
})
.catch(function(error) {
console.log('Error sending message:', error);
});
return ""
});