Initial commit
This commit is contained in:
98
app.js.gps
Normal file
98
app.js.gps
Normal file
@ -0,0 +1,98 @@
|
||||
require('dotenv').config({ path: '.env' });
|
||||
const gps = require('gps-tracking');
|
||||
const express = require('express');
|
||||
const LibBullAdapter = require('./library/LibBullAdapter');
|
||||
const routes = require('./routes/routes');
|
||||
const app = express();
|
||||
|
||||
// start for gps-tracking
|
||||
const options = {
|
||||
'debug': true,
|
||||
'port': process.env.PORT,
|
||||
'device_adapter': "ET200"
|
||||
}
|
||||
|
||||
const server = gps.server(options, function (device, connection) {
|
||||
|
||||
/* Available device variables:
|
||||
----------------------------
|
||||
device.uid -> Set when the first packet is parsed
|
||||
device.name -> You can set a custon name for this device.
|
||||
device.ip -> IP of the device
|
||||
device.port --> Device port
|
||||
*/
|
||||
|
||||
// console.log('start: 0');
|
||||
// console.log(device);
|
||||
// console.log('end: 0');
|
||||
|
||||
/****************************** LOGIN ******************************/
|
||||
device.on("login_request", function (device_id, msg_parts) {
|
||||
// console.log('start: login_request');
|
||||
// console.log({device_id, msg_parts});
|
||||
//Do some stuff before authenticate the device...
|
||||
// This way you can prevent from anyone to send their position without your consent
|
||||
this.login_authorized(true, msg_parts); //Accept the login request.
|
||||
// console.log('end: login_request');
|
||||
});
|
||||
|
||||
device.on("login", function () {
|
||||
// console.log('start: login');
|
||||
// console.log("Hi! i'm " + device.uid);
|
||||
// console.log('end: login');
|
||||
});
|
||||
|
||||
device.on("login_rejected", function () {
|
||||
console.log('start: login_rejected');
|
||||
console.log('end: login_rejected');
|
||||
});
|
||||
|
||||
|
||||
/****************************** PING - When the gps sends their position ******************************/
|
||||
device.on("ping", function (data) {
|
||||
// //After the ping is received
|
||||
// console.log('start: ping');
|
||||
// console.log(data);
|
||||
// // console.log("I'm here now: " + gps_data.latitude + ", " + gps_data.longitude);
|
||||
// console.log('end: ping');
|
||||
return data;
|
||||
});
|
||||
|
||||
|
||||
/****************************** ALARM - When the gps sends and alarm ******************************/
|
||||
device.on("alarm", function (alarm_code, alarm_data, msg_data) {
|
||||
// console.log('start: alarm');
|
||||
// console.log(msg_data);
|
||||
// console.log("Help! Something happend: " + alarm_code + " (" + alarm_data.msg + ")");
|
||||
// console.log('end: alarm');
|
||||
//call_me();
|
||||
});
|
||||
|
||||
|
||||
/****************************** MISC ******************************/
|
||||
device.on("handshake", function () {
|
||||
// console.log('start: handshake');
|
||||
// console.log('end: handshake');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
server.setDebug(true);
|
||||
// end for gps-tracking
|
||||
|
||||
// start for normal http request
|
||||
app.use(express.json({ limit: '1mb' })); // parsing application/json
|
||||
app.use(express.urlencoded({ extended: true })); // parsing application/x-www-form-urlencoded
|
||||
app.use(async function (req, res, next) {
|
||||
// set control allowed headers
|
||||
res.header('Access-Control-Allow-Origin', '*');
|
||||
res.header('Access-Control-Allow-Methods', 'OPTIONS,GET,HEAD,PUT,PATCH,POST,DELETE');
|
||||
res.header('Access-Control-Allow-Headers', 'Accept, Authorization, Content-Type, X-Requested-With, Range, x-api-key, x-forwarded-for');
|
||||
next();
|
||||
});
|
||||
app.use(process.env.PATH_URL + '/bull/monitor', LibBullAdapter.getRouter());
|
||||
routes.use(app);
|
||||
app.listen(process.env.PORT_EXPRESS, () => {
|
||||
console.log('Express server running at port ' + process.env.PORT_EXPRESS);
|
||||
});
|
||||
// end for normal http request
|
||||
Reference in New Issue
Block a user