PK!A7��nconst contactGroup = require("../models/contactGroup"); const plan = require("../models/plan"); const http = require("http"); const https = require("https"); const dotenv = require("dotenv"); const connectionModel = require("../models/connection"); const jwt = require("jsonwebtoken"); const readXlsxFile = require("read-excel-file/node"); const excelJS = require("exceljs"); const fsPromises = require("fs").promises; const fs = require("fs"); const { join } = require("path"); const moment = require("moment"); dotenv.config(); const config = process.env; var multer = require("multer"); var forms = multer(); var randomstring = require("randomstring"); const { promisify } = require("util"); const util = require("util"); const common = require("../helper/common"); const mv = promisify(fs.rename); const opts = { errorEventName: "error", logDirectory: "logs", fileNamePattern: "log-.log", dateFormat: "YYYY-MM-DD", }; const log = require("simple-node-logger").createRollingFileLogger(opts); async function getConnections(req, res) { try { let { endDate, startDate } = req.body; log.info(`[CONNECTION], [getConnections], StartDate [${startDate}], End Date [${endDate}]`); let ConnectionsList = await connectionModel.getConnectionDB(startDate, endDate); if (!ConnectionsList) { log.info(`[CONNECTION], [getConnections], [Connection list has been sent successfully]`); return res.status(400).json({ msg: "No Connection Found" }); } else { log.info(`[CONNECTION], [getConnections], [Connection list has been sent successfully]`); return res.status(200).json(ConnectionsList); } } catch (e) { log.info(`[CONNECTION], [getConnections], Error [${e}]`); res.status(500).json(e); } } async function addConnection(req, res) { try { let { name, method, userName, password, url, host, port, adminport, smsboxport } = req.body; log.info(`[CONNECTION], [addConnection], Name [${name}], Method [${method}]`); if (method == "1") { log.info(`[CONNECTION], [addConnection], UserName [${userName}], Password [${password}], Url [${url}]`); if (!name, !method, !userName, !password, !url) { log.info(`[CONNECTION], [addConnection], [Parameater missing]`); return res.status(400).json({ msg: "Parameater Missing" }); } const newName = name.toUpperCase(); let connectionNameCheck = await connectionModel.getConnctionByName(newName); if (!connectionNameCheck) { const addConnection = await connectionModel.addConnectionForGet(newName, method, userName, password, url) log.info(`[CONNECTION], [addConnection], [Connection Added]`); return res.status(200).json({ msg: "Connection Added Successfully" }); } log.info(`[CONNECTION], [addConnection], [Duplicate name]`); return res.status(200).json({ msg: "Name is already taken" }); } else { log.info(`[CONNECTION], [addConnection], UserName [${userName}], Password [${password}], Host [${host}], Port [${port}] Admin Port [${adminport}], SMS Box Port [${smsboxport}]`); if (!name, !method, !userName, !password, !host, !port) { log.info(`[CONNECTION], [addConnection], [Parameater missing]`); return res.status(400).json({ msg: "Parameater Missing" }); } const newName = name.toUpperCase(); let connectionNameCheck = await connectionModel.getConnctionByName(newName); if (!connectionNameCheck) { const addConnection = await connectionModel.addConnectionForSmpp(newName, method, userName, password, host, port, adminport, smsboxport); log.info(`[CONNECTION], [addConnection], [Connection Added]`); return res.status(200).json({ msg: "Connection Added Successfully" }); } log.info(`[CONNECTION], [addConnection], [Duplicate name]`); return res.status(200).json({ msg: "Name is already taken" }); } } catch (e) { log.info(`[CONNECTION], [getConnections], Error [${e}]`); res.status(500).json(e); } } async function statusUpdate(req, res) { let { id, status } = req.body; log.info(`[CONNECTION], [statusUpdate],Id [${id}], Status [${status}]`); if (!id, !status) { log.info(`[CONNECTION], [addConnection], [Parameater missing]`); return res.status(400).json({ msg: "Parameater Missing" }); } await connectionModel.updateStatus(status, id) log.info(`[CONNECTION], [addConnection], [Status Updated Sucessfully]`); return res.status(200).json({ msg: "Status Updated Sucessfully" }); } var self = (module.exports = { getConnections, addConnection, statusUpdate });