| | |
| | | |
| | | var _config = global.configs[mac]; |
| | | if(_config == null) { |
| | | _config = { |
| | | mac: mac, |
| | | address: "江苏省昆山市摩瑞尔电器", |
| | | location: { |
| | | lat:31.430616, |
| | | lng:120.988327 |
| | | }, |
| | | notice: { |
| | | tel: "15950198162", |
| | | email: "it01@moral.org.cn", |
| | | open_id: "o-RTuwvMHWotyirPHLmdSB_dKoQU" |
| | | }, |
| | | options: { |
| | | 1: [1000, 2000, 3000], |
| | | 2: [1000, 2000, 3000], |
| | | 3: [1000, 2000, 3000], |
| | | 4: [1000, 2000, 3000], |
| | | 5: [1000, 2000, 3000] |
| | | } |
| | | }; |
| | | configs[mac] = _config; |
| | | _config = config.ALARM_DEFAULTS; |
| | | _config.mac = mac; |
| | | global.configs[mac] = _config; |
| | | } |
| | | |
| | | var current = moment(); |
| | |
| | | var level3 = _this.getLevel(x11, _config['options'][3]); |
| | | var level4 = _this.getLevel(x10, _config['options'][4]); |
| | | var level5 = _this.getLevel(x14, _config['options'][5]); |
| | | sensor_data._id = doc.insertedId; |
| | | sensor_data.level = Math.max(level1, level2, level3, level4, level5); |
| | | sensor_data.notice = _config.notice; |
| | | sensor_data.address = _config.address; |
| | | sensor_data.data = { 1: [x1, level1], 2: [x9, level2], 3: [x11, level3], 4: [x10, level4], 5: [x14, level5] }; |
| | | queue.pushToMQ('ex_data_alarm', sensor_data); |
| | | var level = Math.max(level1, level2, level3, level4, level5); |
| | | if(level > 0) { |
| | | sensor_data._id = doc.insertedId; |
| | | sensor_data.level = level; |
| | | sensor_data.notice = _config.notice; |
| | | sensor_data.address = _config.address; |
| | | sensor_data.data.levels = [level1, level2, level3, level4, level5]; |
| | | queue.pushToMQ('ex_data_alarm', sensor_data); |
| | | } |
| | | |
| | | callback(doc, rank); |
| | | }); |
| | |
| | | }; |
| | | |
| | | module.exports.initConfigs = function(db) { |
| | | var _address = config.ALARM_DEFAULTS.address; |
| | | var _location = config.ALARM_DEFAULTS.location; |
| | | var _options = config.ALARM_DEFAULTS.options; |
| | | 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 address = doc.address || _address; |
| | | var location = doc.location || _location; |
| | | var options = doc.options || _options; |
| | | var notice = doc.notice; |
| | | var options = doc.options; |
| | | var config = { |
| | | mac: mac, |
| | | address: address, |
| | |
| | | var userID = doc.userID; |
| | | db.collection("users").find({"_id": userID}).limit(1).next(function(err, user){ |
| | | if(user) { |
| | | config[notice] = { |
| | | config["notice"] = { |
| | | tel: user.username, |
| | | email: user.email, |
| | | open_id: user.open_id |