Commit 54e4ebe0 by lixinming

no message

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