Commit 54e4ebe0 by lixinming

no message

parent da412eda
import { dataCenterInterfaceConfig } from "../config/serverConfig";
import { getInterfaceByInterfaceName } from "../data/cronJob";
import { Socket } from "../net/socket_server";
import { logError } from "../util/log";
let qs = require('qs');
let viewPool = {};//展示端连接池
// 展示端连接池
let viewPool = {};
// ws对象
let controlWs;
//广播消息
/**
* 广播消息
* @param data 需要广播的数据体 类型:object
*/
export function broadcastMsg(data) {
for (let userId in viewPool) {
viewPool[userId].send(JSON.stringify(data));
console.log(data);
}
}
function analysisUserUrl(req) {
/**
* 解析请求url 获取到ip
* @param req ws中参数req
* @returns ip
*/
function analysisUserUrl(req):string {
let ip = req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress || req.connection.socket.remoteAddress;
return ip;
}
export async function initControlSocketServer(port) {
/**
* 初始化用于操控的Socket服务
* @param port 端口号
*/
export async function initControlSocketServer(port:number) {
Socket.createServer(port, function (wss) {
wss.on('connection', function(ws, req) {
let ip = analysisUserUrl(req);
if (req.url.indexOf('connect') == -1 ) {
//非连接
console.log("连接错误", req.url);
logError("连接错误,连接并没有connect参数", req.url);
return;
}
let paramater = qs.parse(req.url.split('?')[1]);
if (!paramater.role || (paramater.role != "view" && paramater.role != "control") ) {
console.log("连接参数错误");
logError("连接错误,连接并没有role参数", req.url);
return;
} else if (paramater.role == "view" && !paramater.pageName) {
console.log("展示端无页面参数");
......@@ -101,6 +114,7 @@ export async function controlGetCarList(req, res) {
let vehicleList = info.vehicleList
vehicleList.forEach(list => {
let {vin, enterprise, online} = list;
let isOnline = "";
switch (online) {
case 0:
......
......@@ -7,8 +7,8 @@ const os = require('os');
export let systemConfig = {
port:9999,
socketPort:'',
controlSocketPort:''
socketPort:9998,
controlSocketPort:9997
};
export let appConfig = {
......@@ -81,9 +81,9 @@ export async function initConfig() {
checkConfig(integralConfig, configInfo.config);
let {port, socketPort, dataCenterInterface, leftView, mapView, imagePath, mapCenter, zoom, surveillanceVideo, wsPath, controlSocketPort} = configInfo.config;
systemConfig.port = port[0];
systemConfig.socketPort = socketPort[0];
systemConfig.controlSocketPort = controlSocketPort[0];
systemConfig.port = parseInt(port[0]);
systemConfig.socketPort = parseInt(socketPort[0]);
systemConfig.controlSocketPort = parseInt(controlSocketPort[0]);
//左屏
appConfig.cloudResource = leftView[0].cloudResource[0];
......
Markdown is supported
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