overspeed address
This commit is contained in:
@ -12,6 +12,9 @@ const ZoneModels = require("../models/ZoneModels")
|
|||||||
const LibHelper = require("../library/LibHelper")
|
const LibHelper = require("../library/LibHelper")
|
||||||
const db = require("../config/dbConnCron")
|
const db = require("../config/dbConnCron")
|
||||||
const axios = require("axios")
|
const axios = require("axios")
|
||||||
|
const request = require("../config/request")
|
||||||
|
const url = require("url")
|
||||||
|
const TIMEFIX = 25200
|
||||||
Validator.useLang("en")
|
Validator.useLang("en")
|
||||||
|
|
||||||
const devices = []
|
const devices = []
|
||||||
@ -338,7 +341,39 @@ async function commitMessage(now, logDevice) {
|
|||||||
const users = await db.query(queryUsers, [])
|
const users = await db.query(queryUsers, [])
|
||||||
if (users && users.length > 0) {
|
if (users && users.length > 0) {
|
||||||
const nopol = (vhc[0].nopol1 || "") + (vhc[0].nopol2 || "") + (vhc[0].nopol3 || "")
|
const nopol = (vhc[0].nopol1 || "") + (vhc[0].nopol2 || "") + (vhc[0].nopol3 || "")
|
||||||
const rawMsg = `${nopol} | OVERSPEED | ${logDevice.crt_d_format} | ${logDevice.speed} km/h`
|
let address = ""
|
||||||
|
if (logDevice.latitude && logDevice.longitude) {
|
||||||
|
try {
|
||||||
|
const sameAddr = await GpsTracksModels.select2Address(logDevice.latitude, logDevice.longitude)
|
||||||
|
if (sameAddr.length > 0) {
|
||||||
|
address = decodeURIComponent(sameAddr[0].fulladdress)
|
||||||
|
} else {
|
||||||
|
const axInstance = axios.create({
|
||||||
|
proxy: process.env.PROXY_URL ? {
|
||||||
|
host: process.env.PROXY_URL,
|
||||||
|
port: Number(process.env.PROXY_PORT),
|
||||||
|
} : false,
|
||||||
|
timeout: 15_000,
|
||||||
|
})
|
||||||
|
const urlBase = request.osm_reverse_geo.urlFull
|
||||||
|
const params = new url.URLSearchParams({
|
||||||
|
lat: logDevice.latitude,
|
||||||
|
lon: logDevice.longitude,
|
||||||
|
format: "geojson",
|
||||||
|
})
|
||||||
|
const resp = await axInstance.get(`${urlBase}?${params.toString()}`, {
|
||||||
|
headers: { "User-Agent": `movana-fleet-management-overspeed` },
|
||||||
|
})
|
||||||
|
if (resp.status === 200 && resp.data && resp.data.features && resp.data.features.length > 0) {
|
||||||
|
address = resp.data.features[0].properties.display_name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (addrErr) {
|
||||||
|
console.error("Error fetching address for overspeed alert:", addrErr.message)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const time = moment.unix(logDevice.crt_d + TIMEFIX).format('DD MMM YYYY HH:mm:ss')
|
||||||
|
const rawMsg = `${nopol} | OVERSPEED | ${time} | ${logDevice.speed} km/h | ${address}`
|
||||||
for (let user of users) {
|
for (let user of users) {
|
||||||
if (user.phone) {
|
if (user.phone) {
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user