diff --git a/ChatService/app/models/fcmtoken.js b/ChatService/app/models/fcmtoken.js index 31bb0d61045eec512f1ee755228e372302aca71c..297901cb3bfd54c567c3ad325457d7f10610c3c9 100644 --- a/ChatService/app/models/fcmtoken.js +++ b/ChatService/app/models/fcmtoken.js @@ -1,7 +1,7 @@ var mongoose = require("mongoose"); var fcmTokenSchema = new mongoose.Schema({ - id : String, + id : Number, token: String }); diff --git a/ChatService/app/routes.js b/ChatService/app/routes.js index 45e19693e17a55dd0b47e0dd9e271a4c7f046a58..252fd50e60c4b6c090fd969cdb17e770687761ce 100644 --- a/ChatService/app/routes.js +++ b/ChatService/app/routes.js @@ -2,7 +2,7 @@ module.exports = function(app) { // Load Models var Driver = require('./models/driver'); - var FcmToken = require('./models/fcmtoken'); + var FcmToken = require('./models/fcmtoken'); var Chat = require('./models/chat'); @@ -10,15 +10,17 @@ module.exports = function(app) { var querystring = require('querystring'); var http = require('http'); var fs = require('fs'); + var https = require('https'); function sendMessages(to, codestring) { // Build the post string from an object var post_data = JSON.stringify({ "notification": { - "title": "ini judul", - "body" : codestring, - "icon" : "firebase-logo.png", - "click-action" : "" + "title": "Message", + "body" : "You got a message" + }, + "data" : { + "message" : codestring }, "to": to }); @@ -36,8 +38,10 @@ module.exports = function(app) { }; // Set up the request - var post_req = http.request(post_options, function(res) { - res.setEncoding('utf8'); + var post_req = https.request(post_options, function(res) { + res.setEncoding('UTF8'); + console.log('Status = ' + res.statusCode); + console.log('Headers = ' + JSON.stringify(res.headers)); res.on('data', function (chunk) { console.log('Response: ' + chunk); }); @@ -165,14 +169,14 @@ module.exports = function(app) { // FOR HANDLING FCM TOKEN USER // add user fcm token app.post('/addfcmtoken', function(req, res){ - FcmToken.findOne({"id" : Number (req.body.id)}, function(err, foundUser){ + FcmToken.findOne({"id" : req.body.id}, function(err, foundUser){ if (err){ var response = {"status" : 503, "message" : "Database error detected"}; res.json(response); } else { if (!foundUser){ - FcmToken.create({"id" : Number (req.body.id), "token" : req.body.token}, function(error, addUser){ + FcmToken.create({"id" : req.body.id, "token" : req.body.token}, function(error, addUser){ if(!error && addUser){ var response = {"status" : 200, "message" : "User token has been added to token list"}; res.json(response); @@ -233,7 +237,7 @@ module.exports = function(app) { // Send message from passangger app.post('/sendmessagefrompassangger', function(req, res){ var senderToken = req.body.token; - var receiverId = Number (req.body.id); + var receiverId = req.body.id; var message = req.body.message; FcmToken.findOne({'id' : receiverId}, function(err1, receiverToken){ if(err1){ @@ -263,8 +267,8 @@ module.exports = function(app) { newChat.history = []; newChat.history.push({'from' : senderId.id, 'to' : receiverId, 'message' : message}); newChat.save(); - console.log(receiverToken); sendMessages(receiverToken.token, message); + console.log(receiverToken.token); res.json({'status' : 200, 'message' : 'chat history created and message sent.'}); } }); @@ -274,6 +278,7 @@ module.exports = function(app) { chat.save(); console.log(receiverToken); sendMessages(receiverToken.token, message); + console.log(receiverToken.token); res.json({'status' : 200, 'message' : 'message sent.'}); } } @@ -287,7 +292,7 @@ module.exports = function(app) { // Send message from driver app.post('/sendmessagefromdriver', function(req, res){ var senderToken = req.body.token; - var receiverId = Number (req.body.id); + var receiverId = req.body.id; var message = req.body.message; FcmToken.findOne({'id' : receiverId}, function(err1, receiverToken){ if(err1){ @@ -301,14 +306,14 @@ module.exports = function(app) { res.json(response); } else { - Chat.findOne({'idUser' : receiverId.id, 'idDriver' : senderId}, function(err3, chat){ + Chat.findOne({'idUser' : receiverId, 'idDriver' : senderId.id}, function(err3, chat){ if (err3){ var response = {"status" : 503, "message" : "Database error detected 3"}; res.json(response); } else { if (!chat){ - Chat.create({'idUser' : receiverId.id, 'idDriver' : senderId}, function(err4, newChat){ + Chat.create({'idUser' : receiverId, 'idDriver' : senderId.id}, function(err4, newChat){ if (err4){ var response = {"status" : 503, "message" : "Database error detected 4"}; res.json(response); @@ -318,6 +323,7 @@ module.exports = function(app) { newChat.history.push({'from' : senderId.id, 'to' : receiverId, 'message' : message}); newChat.save(); sendMessages(receiverToken.token, message); + console.log(receiverToken.token); res.json({'status' : 200, 'message' : 'chat history created and message sent.'}); } }); @@ -326,6 +332,7 @@ module.exports = function(app) { chat.history.push({'from' : senderId.id, 'to' : receiverId, 'message' : message}); chat.save(); sendMessages(receiverToken.token, message); + console.log(receiverToken.token); res.json({'status' : 200, 'message' : 'message sent.'}); } } diff --git a/ChatService/package.json b/ChatService/package.json index 86f4aac9295dbad0e597ead7a3dc17d1d0795db2..72c04070889f120bf6213afbf9724ea6e0c0ec69 100644 --- a/ChatService/package.json +++ b/ChatService/package.json @@ -11,7 +11,11 @@ "dependencies": { "body-parser": "^1.18.2", "express": "^4.16.2", + "fs": "0.0.1-security", + "http": "0.0.0", + "https": "^1.0.0", "method-override": "^2.3.10", - "mongoose": "^4.13.4" + "mongoose": "^4.13.4", + "querystring": "^0.2.0" } }