Spaces:
Running
Running
var express = require('express'); | |
var router = express.Router(); | |
var FCM = require('fcm-node'); | |
var serverKey = 'AAAAKXRRooI:APA91bH9pMJziYPRNRI2XyMaSIG_e5a-eJzxMSkaozaCrmCencitDrTul4XyrVAV87K6d-56zGJC49y7Cz6mTRpcxca16QzmF1TF8EW7OmxHPvcQdseHWoD3TIAe62u2gfY0pVXlhJ8Y' | |
var fcm = new FCM(serverKey); | |
var User = require('../Database/models/user'); | |
const { successResponse, failedResponse } = require('../utils/responseModel'); | |
// const admin = require('firebase-admin'); | |
const admin = require("../utils/firebase") | |
// Initialize the Firebase Admin SDK (replace with your credentials) | |
// admin.initializeApp({ | |
// credential: admin.credential.cert(require('../push-notification-key.json')) | |
// }); | |
router.post('/pushToken', async function (req, res) { | |
var unique_idValue = req.body.unique_id; | |
var pushTokenValue = req.body.pushToken; | |
try { | |
const data = await User.findOne({ unique_id: unique_idValue }); | |
if (data) { | |
User.updateOne({ | |
unique_id | |
: data.unique_id | |
}, { | |
$set: { | |
pushToken: pushTokenValue | |
} | |
}).exec() | |
.then(result => { | |
res.status(200).send(successResponse("Push token updated.")); | |
}) | |
.catch(err => { | |
console.log(err); | |
res.status(500).json({ | |
error: err | |
}); | |
}); | |
} else { | |
res.status(201).send(failedResponse("User not found!")); | |
} | |
} catch (e) { | |
res.status(500).send(failedResponse(e)); | |
} | |
}); | |
router.post('/push', async (req, res) => { | |
try { | |
const deviceToken = req.body.deviceToken; | |
const title = req.body.title; | |
const bodyText = req.body.bodyText; | |
const message = { | |
token: deviceToken, | |
notification: { | |
title: title, | |
body: bodyText, | |
}, | |
android: { | |
priority: "high", | |
}, | |
}; | |
// Send message via Firebase Admin SDK | |
const response = await admin.messaging().send(message); | |
res.status(200).send(response); | |
} catch (err) { | |
res.status(400).send("Something has gone wrong! => " + err.message); | |
console.error("Error sending message:", err); | |
} | |
}); | |
module.exports = router; |