From 04ce1800ada4f966beba59c389ab12e82061d023 Mon Sep 17 00:00:00 2001 From: 沈斌 <bluelazysb@hotmail.com> Date: Sun, 25 Dec 2016 21:27:27 +0800 Subject: [PATCH] 添加监听代码以便实时修改通讯配置 --- method.js | 65 +++++++++++++++++++++++++------- 1 files changed, 51 insertions(+), 14 deletions(-) diff --git a/method.js b/method.js index 0148b5d..7ba59d9 100644 --- a/method.js +++ b/method.js @@ -167,14 +167,27 @@ var ddv = this.toDec(fields[62]) * 256 + this.toDec(fields[63]); var mcu = this.toDec(fields[64]) + this.toDec(fields[65]) / 100; + var _config = global.configs[mac]; + if(_config == null) { + _config = { + address: "���������������������������������", + location: {��� + lat:31.430616, + lng:120.988327��� + }, + notice: { + tel: "15950198162",��� + email: "it01@moral.org.cn",��� + open_id: "o-RTuwvMHWotyirPHLmdSB_dKoQU" + } + } + } + var current = moment(); queue.pushToMQ('ex_data_screen', { mac: mac, - location: { - lat: 31.430616, - lng: 120.988327 - }, + location: _config.location, data: { x0: ferval, x1: x1, //PM2.5 - (������:ppm) @@ -196,11 +209,8 @@ } queue.pushToMQ('ex_data_alarm', { mac: mac, - address: "���������������������������������", - location: { - lat:31.430616, - lng:120.988327 - }, + address: _config.address, + location: _config.location, data:{ x0: ferval, x1: x1, //PM2.5 @@ -211,11 +221,7 @@ x6: x14 //������������ }, level: level, - notice: { - tel: "15950198162", - email: "it01@moral.org.cn", - open_id: "o-RTuwvMHWotyirPHLmdSB_dKoQU" - }, + notice: _config.notice, time: moment.valueOf() }); } @@ -343,6 +349,37 @@ } }; +module.exports.initConfigs = function(db) { + db.collection("devices").find().toArray(function(err, docs) { + docs.forEach(function(doc) { + var mac = doc.mac; + var address = doc.address; + var location = doc.location; + var notice = doc.notice; + if(notice == null) { + var userID = doc.userID; + db.collection("users").find({"_id": userID}).limit(1).next(function(err, user){ + global.configs[mac] = { + address: address, + location: location, + notice: { + tel: user.username, + email: user.email, + open_id: user.open_id + } + } + }); + } else { + global.configs[mac] = { + address: address, + location: location, + notice: notice + } + } + }); + }); +}; + ///////////////////////////////////////////////// module.exports.insertDocument2 = function(db, data, rank, callback) { var fields = data.match(/.{2}/g); -- Gitblit v1.8.0