Skip to content
Snippets Groups Projects
Commit 7faf5ace authored by Daniel's avatar Daniel
Browse files

Impl. features app. server

parent 41a2a06f
Branches
No related merge requests found
/*
* Tugas Besar 3 WBD - AMEN
*/
'use strict'
const express = require('express')
const cloud = require('../service/cloud')
const relay = require('../service/relay')
let app = express.Router()
// Administration.
app.post('/:id/token', function (req, res) {
let id = req.params.id
let token = req.body.token
cloud.register(id, token)
res.json({ status: 'ok' })
})
app.delete('/:id', function (req, res) {
let id = req.params.id
cloud.unregister(id)
relay.disassociate(id)
res.json({ status: 'ok' })
})
// Messaging.
app.post('/:id/message', async function (req, res) {
let id = req.params.id
let message = req.body.message
try {
await relay.sendAsync(id, message)
res.json({ status: 'ok' })
} catch (e) {
console.log(e)
res.json({
status: 'error',
message: e.message
})
}
})
module.exports = app
......@@ -7,6 +7,7 @@
const express = require('express')
const hub = require('../service/hub')
const relay = require('../service/relay')
let app = express.Router()
......@@ -39,9 +40,17 @@ app.post('/pick', function (req, res) {
let driverId = req.body.driver_id
let userId = req.body.user_id
res.json({
'result': hub.pick(driverId, userId)
})
try {
// Pick driver by user.
hub.pick(driverId, userId)
// Associate user with driver.
relay.associate(userId, driverId)
res.json({ 'status': 'ok' })
} catch (e) {
res.status(500).json({ 'status': 'error' })
}
})
module.exports = app
......@@ -4,8 +4,8 @@
'use strict'
// Load .env file early.
// require('dotenv').config()
// Load config. file early.
require('dotenv').config({ path: 'config/env.conf' })
const express = require('express')
const http = require('http')
......@@ -19,7 +19,7 @@ app.use('/', api)
// Begin serving.
let httpServer = http.createServer(app)
let port = process.env.PORT || 8081
let port = process.env.CHAT_PORT || 8081
httpServer.listen(port, function (err) {
if (err) {
......
......@@ -4,7 +4,13 @@
'use strict'
const messaging = require('firebase-admin').messaging()
const admin = require('firebase-admin')
// Initialize Firebase.
let serviceAccount = require(`../../${process.env.FIREBASE_CERT}`)
admin.initializeApp({ credential: admin.credential.cert(serviceAccount) })
let messaging = admin.messaging()
let db = {}
......
CHAT_PORT=8081
FIREBASE_CERT=config/firebase.json
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment