|
@@ -141,6 +141,10 @@ nextId : string //下一行id
|
|
|
}
|
|
|
*/
|
|
|
|
|
|
+process.on('uncaughtException', (e) => {
|
|
|
+ console.error('process error is:', e.message);
|
|
|
+});
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 创建服务
|
|
@@ -158,7 +162,7 @@ us.server = us.http.createServer(function (requset, response) {
|
|
|
|
|
|
//设置参数,并执行回调
|
|
|
us.unifyDispose(requset, response, function (param) {
|
|
|
- console.log(param)
|
|
|
+ //console.log(param)
|
|
|
if (param && param[0]) {
|
|
|
//参数解码 us.parm为全局变量 记录所有参数
|
|
|
var _userinfo,
|
|
@@ -376,12 +380,12 @@ us.unifyDispose = function (req, res, cb) {
|
|
|
});
|
|
|
//接收完毕
|
|
|
req.on("end", function () {
|
|
|
- console.log(_param)
|
|
|
+ //console.log(_param)
|
|
|
//前端传入的字符串转化成对象
|
|
|
if (_param) {
|
|
|
_param = us.qs.parse(_param);
|
|
|
}
|
|
|
- console.log(_param)
|
|
|
+ //console.log(_param)
|
|
|
//拆分参数
|
|
|
try {
|
|
|
_param = _param.mode.split(",")
|
|
@@ -402,23 +406,39 @@ us.unifyDispose = function (req, res, cb) {
|
|
|
|
|
|
//请求超时处理
|
|
|
res.on('timeout', function (e) {
|
|
|
- console.log('请求超时'); //错误消息的输出
|
|
|
- if (req.res) {
|
|
|
- req.res("abort");
|
|
|
+ try {
|
|
|
+ console.log('请求超时'); //错误消息的输出
|
|
|
+ if (req.res) {
|
|
|
+ req.res("abort");
|
|
|
+ }
|
|
|
+ res.end("false"); //返回值
|
|
|
}
|
|
|
- res.end("false"); //返回值
|
|
|
+ catch (e) {
|
|
|
+ console.error('process error is:', e.message);
|
|
|
+ }
|
|
|
+
|
|
|
});
|
|
|
|
|
|
//设置30秒后超时
|
|
|
res.setTimeout(30000, function () {
|
|
|
- console.log("响应超时.");
|
|
|
- res.end("false"); //返回值
|
|
|
+ try {
|
|
|
+ console.log("响应超时.");
|
|
|
+ res.end("false"); //返回值
|
|
|
+ }
|
|
|
+ catch (e) {
|
|
|
+ console.error('process error is:', e.message);
|
|
|
+ }
|
|
|
});
|
|
|
|
|
|
//错误处理
|
|
|
req.on("error", function (e) {
|
|
|
- console.log('程序报错');
|
|
|
- res.end("false");
|
|
|
+ try {
|
|
|
+ console.log('程序报错');
|
|
|
+ res.end("false");
|
|
|
+ }
|
|
|
+ catch (e) {
|
|
|
+ console.error('process error is:', e.message);
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -432,7 +452,7 @@ us.unifyDispose = function (req, res, cb) {
|
|
|
* @param {type} username 用户登录类型
|
|
|
**/
|
|
|
us.login = function (response, userid, pageid, username, type) {
|
|
|
- console.log(userid);
|
|
|
+ //console.log(userid);
|
|
|
|
|
|
//用户登录信息表,以后移入redis
|
|
|
//如果用户信息不存在则新建一个用户信息存入
|
|
@@ -440,7 +460,7 @@ us.login = function (response, userid, pageid, username, type) {
|
|
|
var _userinfo = us.userInfo(userid, username); //初始化用户信息
|
|
|
us.user[userid] = _userinfo;
|
|
|
}
|
|
|
- console.log(us.user);
|
|
|
+ //console.log(us.user);
|
|
|
//添加用户轮询列表
|
|
|
us.polling(response, userid, pageid, type);
|
|
|
}
|
|
@@ -500,7 +520,7 @@ us.polling = function (response, userid, pageid, type) {
|
|
|
//获取当前连接的用户,如果获取成功那么直接修改用户的连接
|
|
|
if (_userarray[pageid]) {
|
|
|
_userarray[pageid].response = response;
|
|
|
- console.log(pageid);
|
|
|
+ // console.log(pageid);
|
|
|
if (_messagearray && _messagearray.message.length > 0) {
|
|
|
response.end(JSON.stringify(_messagearray.message));
|
|
|
_messagearray.message = [];
|
|
@@ -518,7 +538,7 @@ us.polling = function (response, userid, pageid, type) {
|
|
|
us.connect[userid][pageid] = _userconect;
|
|
|
us.offLineMessage[pageid] = us.userOffLineMessage(type); //初始化用户离线消息记录
|
|
|
}
|
|
|
- console.log(us.connect);
|
|
|
+ //console.log(us.connect);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -536,7 +556,7 @@ us.send = function (response, messageinfo) {
|
|
|
|
|
|
//循环用户的信息处理
|
|
|
for (i in _messageobj) {
|
|
|
- console.log(i);
|
|
|
+ //console.log(i);
|
|
|
switch (i) {
|
|
|
//word信息交互
|
|
|
case "us.mindNetwork":
|
|
@@ -559,14 +579,14 @@ us.send = function (response, messageinfo) {
|
|
|
break;
|
|
|
//word信息交互
|
|
|
case "us.realTimeClass":
|
|
|
- console.log("us.realTimeClass");
|
|
|
+ //console.log("us.realTimeClass");
|
|
|
_messagearr = _messageobj[i]; //获取word消息
|
|
|
//得到word所有的用户
|
|
|
for (j = 0; j < _messagearr.length; j++) {
|
|
|
//生成发送的消息结构体
|
|
|
_message = us.message(_messagearr[j].sendId, "us.realTimeClass", _messagearr[j].messageInfo);
|
|
|
- console.log(_message)
|
|
|
- console.log(_messagelist[_messagearr[j].receiveId])
|
|
|
+ //console.log(_message)
|
|
|
+ // console.log(_messagelist[_messagearr[j].receiveId])
|
|
|
//添加消息列表
|
|
|
if (_messagelist[_messagearr[j].receiveId]) {
|
|
|
_messagelist[_messagearr[j].receiveId].push(_message);
|
|
@@ -657,12 +677,12 @@ us.send = function (response, messageinfo) {
|
|
|
us.updatemindNetwork = function (messageInfo) {
|
|
|
if (us.mindNetwork[messageInfo.docId]) {
|
|
|
var $ = us.mindNetwork[messageInfo.docId].content;
|
|
|
- console.log("---------------------------------------start")
|
|
|
- console.log($);
|
|
|
- console.log("---------------------------------------end")
|
|
|
- console.log("---------------------------------------infostart")
|
|
|
- console.log(messageInfo);
|
|
|
- console.log("---------------------------------------infoend")
|
|
|
+ // console.log("---------------------------------------start")
|
|
|
+ // console.log($);
|
|
|
+ // console.log("---------------------------------------end")
|
|
|
+ // console.log("---------------------------------------infostart")
|
|
|
+ // console.log(messageInfo);
|
|
|
+ // console.log("---------------------------------------infoend")
|
|
|
if ($) {
|
|
|
us.mindNetwork[messageInfo.docId].content[messageInfo.id] = messageInfo.content;
|
|
|
}
|
|
@@ -676,12 +696,12 @@ us.updatemindNetwork = function (messageInfo) {
|
|
|
us.updaterealTimeClass = function (messageInfo) {
|
|
|
if (us.realTimeClass[messageInfo.docId]) {
|
|
|
var $ = us.realTimeClass[messageInfo.docId].content;
|
|
|
- console.log("---------------------------------------start")
|
|
|
- console.log($);
|
|
|
- console.log("---------------------------------------end")
|
|
|
- console.log("---------------------------------------infostart")
|
|
|
- console.log(messageInfo);
|
|
|
- console.log("---------------------------------------infoend")
|
|
|
+ // console.log("---------------------------------------start")
|
|
|
+ // console.log($);
|
|
|
+ // console.log("---------------------------------------end")
|
|
|
+ // console.log("---------------------------------------infostart")
|
|
|
+ // console.log(messageInfo);
|
|
|
+ // console.log("---------------------------------------infoend")
|
|
|
if ($) {
|
|
|
us.realTimeClass[messageInfo.docId].content[messageInfo.id] = messageInfo.content;
|
|
|
}
|
|
@@ -1306,25 +1326,31 @@ us.broadcast = function (messageinfo, pageid, type) {
|
|
|
_recievedpageid, //接收用户的页面唯一识别ID
|
|
|
_issend, // 是否发送
|
|
|
_userconnect = us.connect; //用户连接池
|
|
|
- console.log("1")
|
|
|
- console.log(messageinfo)
|
|
|
+ // console.log("1")
|
|
|
+ // console.log(messageinfo)
|
|
|
for (i in messageinfo) {
|
|
|
_messageinfo = messageinfo[i]; //记录消息消息
|
|
|
_users = us[type][i] ? us[type][i].user : {}; //记录用户集合
|
|
|
- console.log(_users)
|
|
|
+ //console.log(_users)
|
|
|
for (j in _users) { //循环处理每个用户处理 给每个用户集合下的用户发送消息
|
|
|
_pageids = _users[j]; //记录当前用户在每个端登录的页面唯一识别ID
|
|
|
for (o = 0; o < _pageids.length; o++) { //循环发送给当前用户在每个端登录的用户
|
|
|
_recievedpageid = _pageids[o]; //记录接受者页面唯一识别ID 用于区分是否是发送用户
|
|
|
if (_recievedpageid != pageid) { //如果接受用户不等于发送用户则发送消息
|
|
|
- console.log("2")
|
|
|
- console.log(_users[j])
|
|
|
+ // console.log("2")
|
|
|
+ // console.log(_users[j])
|
|
|
//console.log(_messageinfo);
|
|
|
- _issend = _userconnect[j][_recievedpageid].response.end(JSON.stringify(_messageinfo)); //发送消息
|
|
|
- if (!_issend) { //如果用户下线了,那么发送消息就会失败
|
|
|
- console.log("3")
|
|
|
- us.offLineMessage[_recievedpageid].message.push(_messageinfo); //将消息加入用户离线消息中
|
|
|
+ try {
|
|
|
+ _issend = _userconnect[j][_recievedpageid].response.end(JSON.stringify(_messageinfo)); //发送消息
|
|
|
+ if (!_issend) { //如果用户下线了,那么发送消息就会失败
|
|
|
+ //console.log("3")
|
|
|
+ us.offLineMessage[_recievedpageid].message.push(_messageinfo); //将消息加入用户离线消息中
|
|
|
+ }
|
|
|
}
|
|
|
+ catch (e) {
|
|
|
+ console.error(e.message)
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1874,7 +1900,7 @@ us.getMindNetwork = function (response, docid, pageid, userid) {
|
|
|
catch (e) {
|
|
|
|
|
|
}
|
|
|
- console.log(us.mindNetwork[docid]);
|
|
|
+ //console.log(us.mindNetwork[docid]);
|
|
|
//如果不存在则去数据库查找
|
|
|
us.mysql.usselect(['172.16.12.5', 'pbl', 'select_room', docid],
|
|
|
function (ret) {
|
|
@@ -1930,7 +1956,7 @@ us.getRealTimeClass = function (response, docid, pageid, userid) {
|
|
|
catch (e) {
|
|
|
|
|
|
}
|
|
|
- console.log(us.realTimeClass[docid]);
|
|
|
+ //console.log(us.realTimeClass[docid]);
|
|
|
//如果不存在则去数据库查找
|
|
|
us.mysql.usselect(['172.16.12.5', 'pbl', 'selectPptPage', docid],
|
|
|
function (ret) {
|
|
@@ -2015,8 +2041,8 @@ us.getWord = function (response, docid, pageid, userid) {
|
|
|
} else {
|
|
|
us.word[docid].user[userid].push(pageid);
|
|
|
}
|
|
|
- console.log(us.offLineMessage[pageid]);
|
|
|
- console.log(pageid);
|
|
|
+ // console.log(us.offLineMessage[pageid]);
|
|
|
+ // console.log(pageid);
|
|
|
try {
|
|
|
us.offLineMessage[pageid].word.indexOf(docid) == -1 && us.offLineMessage[pageid].word.push(docid); //添加到用户离线消息的连接wrod记录中
|
|
|
}
|