diff --git a/controllers/ListenController.js b/controllers/ListenController.js index 6dda439..4abe7e1 100644 --- a/controllers/ListenController.js +++ b/controllers/ListenController.js @@ -11,7 +11,7 @@ const VhcModels = require("../models/VhcModels") const ZoneModels = require("../models/ZoneModels") const LibHelper = require("../library/LibHelper") const db = require("../config/dbConnCron") - +const axios = require("axios") Validator.useLang("en") const devices = [] @@ -330,12 +330,40 @@ async function commitMessage(now, logDevice) { // log tracking await GpsTracksModels.bundleCreate2(logDevice, logDevice) } + + // check speed limit, if speed > vhc.speed_limit, send sms + if (vhc.length > 0 && vhc[0].speed_limit > 0 && logDevice.speed > vhc[0].speed_limit) { + // get user + const queryUsers = `select phone from t_users where status_sms = 1` + const users = await db.query(queryUsers, []) + if (users && users.length > 0) { + const nopol = (vhc[0].nopol1 || "") + (vhc[0].nopol2 || "") + (vhc[0].nopol3 || "") + const msg = encodeURIComponent(`${nopol} | OVERSPEED | ${logDevice.crt_d_format}| ${logDevice.speed} km/h `) + for (let user of users) { + if (user.phone) { + try { + await axios.get(`http://192.168.40.2:8181/mobicents/sendSms?to=670${user.phone}&msg=${msg}&sender=Movana`) + + // insert logs + await db.query(`insert into sms_notif + set + to_no = ?,`, + `message = ?`, + [user.phone, msg]) + } catch (err) { + console.error("Error sending SMS : ", err.message) + } + } + } + } + } } catch (e) { console.error(e) console.log("Error commitMessage : ", logDevice.device_id) } } + class ListenController { async gps(req, res) { let apiRes = {} @@ -655,6 +683,8 @@ class ListenController { }) } + + // IO: {"Ignition":0,"Movement":1,"GSM Signal":5,"Sleep Mode":0,"GNSS Status":1,"Accelerator Pedal Position":0,"External Voltage":13087,"Battery Voltage":4100,"Fuel Level":144,"Engine RPM":0,"Engine Temperature":950,"Trip Odometer":48250,"Total Odometer":288320,"Total Mileage":125662000,"Fuel Consumed (counted)":229} apiRes = JSON.parse(JSON.stringify(response[200]))