Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict'
- const functions = require('firebase-functions');
- const admin = require('firebase-admin');
- admin.initializeApp(functions.config().firebase);
- exports.sendNotification = functions.database.ref('/Notifications/{user_id}/{notification_id}').onWrite(event => {
- const user_id = event.params.user_id;
- const notification_id = event.params.notification_id;
- console.log('User ID is : ', user_id);
- console.log('Notification ID is : ', notification_id);
- if(!event.data.val()) {
- return console.log('A Notification has been deleted from database. Sender : ', notification_id);
- }
- const fromUser = admin.database().ref(`/Notifications/${user_id}/${notification_id}`).once('value');
- return fromUser.then(fromUserResult => {
- const from_user_id = fromUserResult.val().from;
- console.log("You have a new request from : ", from_user_id);
- const userQuery = admin.database().ref(`/Users/${from_user_id}/name`).once('value');
- return userQuery.then(userResult => {
- const userName = userResult.val();
- const deviceToken = admin.database().ref(`/Users/${user_id}/device_token`).once('value');
- return deviceToken.then(result => {
- const token_id = result.val();
- console.log('Token ID is : ', token_id);
- const payload = {
- notification: {
- title: "New Friend Request",
- body: `${userName} has sent you Friend Request`,
- icon: "default",
- click_action: "com.bertho.chat_TARGET_NOTIFICATION"
- },
- data: {
- from_user_id: from_user_id
- }
- };
- console.log('SENT FROM : ', from_user_id);
- return admin.messaging().sendToDevice(token_id, payload).then(response => {
- console.log('This was the Notification Feature');
- });
- });
- });
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement