getMessageIds wurde der sql reperiert
in push wurde sendMultiplePush hinzugefügt, aber noch fehlerhaft
This commit is contained in:
Georg Reisinger 2019-03-18 18:05:11 +01:00
parent 8ec2f559ea
commit f31b24afb9
3 changed files with 45 additions and 8 deletions

View File

@ -1,3 +1,8 @@
var push = require('../push/push.js')
// var axios = require('axios')
const {
query,
nonQuery
@ -6,7 +11,6 @@ const {
const stringSimilarity = require('string-similarity');
//Create User Info
async function updateUser(uid, mid, name, picture, email) {
@ -20,8 +24,8 @@ async function updateUser(uid, mid, name, picture, email) {
async function getmessageids(sl_id) {
try {
let members = query('SELECT * FROM "Shoppinglist_member" WHERE sl_id = $1;', [sl_id]);
let admin = query('SELECT * FROM "Shoppinglist_admin" WHERE sl_id = $1;', [sl_id]);
let members = await query('SELECT row_to_json("User") AS obj FROM "Shoppinglist_member" JOIN "User" USING (username) WHERE sl_id = $1;', [sl_id]);
let admin = await query('SELECT row_to_json("User") AS obj FROM "Shoppinglist_admin" JOIN "User" USING (username) WHERE sl_id = $1;', [sl_id]);
return users_to_array(admin, members);
} catch (error) {
@ -141,6 +145,8 @@ async function editShoppinglist(sl_id, newname, newdescription, newcolor) {
} catch (error) {
console.error(error);
}
}
/*async function generateUser() {
@ -193,6 +199,13 @@ async function addGroup(sl_id, name, color, hidden) {
} catch (error) {
console.error(error);
}
var message_ids = await getmessageids(sl_id);
// for(var i = 0; i< message_ids.length(); i++){
// console.log("msg to send: ", message_ids[i])
// push.sendPush(message_ids[i], title, text);
// }
// push.sendPush(message_ids[0], "test", "test")
push.sendMultiplePush(message_ids, shoppinglist.name + " Gruppe wurde hinzugefügt!", "Zu " + shoppinglist.name + " wurde die Gruppe " + name + " hinzugefügt!");
}
//add item into group
@ -497,10 +510,10 @@ function generateInviteLink() {
function users_to_array(admin, members) {
let users = [];
users.push(admin.username);
users.push(admin[0].message_id);
for (let item of members) {
users.push(item.username);
users.push(item.message_id);
}
return users;

View File

@ -1,6 +1,8 @@
var admin = require('firebase-admin');
function sendPush(msgtoken, title, text){
var message = {
notification: {
title: title,
@ -9,7 +11,7 @@ function sendPush(msgtoken, title, text){
token: msgtoken
};
firebaseAdmin.messaging().send(message)
admin.messaging().send(message)
.then(function(response) {
// See the MessagingDevicesResponse reference documentation for
// the contents of response.
@ -20,6 +22,27 @@ function sendPush(msgtoken, title, text){
});
}
function sendMultiplePush(message_ids, title, text){
console.log(message_ids)
var message = {
data: {
title: title,
body: text
},
tokens: message_ids
};
admin.messaging().sendMulticast(message)
.then(function(response) {
// See the MessagingDevicesResponse reference documentation for
// the contents of response.
console.log('Successfully sent message:', response);
})
.catch(function(error) {
console.log('Error sending message:', error);
});
}
module.exports = {
sendPush
sendPush,sendMultiplePush
}

View File

@ -17,6 +17,7 @@ var firebaseAdmin = admin.initializeApp({
//Push
router.get('/push/:msgtoken/:message/:title', function (req, res, next) {
push.sendPush(req.params.msgtoken, req.params.title, req.params.message);
var sender = "Message Token: " + req.params.msgtoken + " Message: " + req.params.message + " Title: " + req.params.title;
res.status(200).send(sender);