diff --git a/node/ip-poll.js b/node/ip-poll.js index 4ab589f..a5113b5 100644 --- a/node/ip-poll.js +++ b/node/ip-poll.js @@ -1,4 +1,4 @@ -var redis = require("redis"); +//var redis = require("redis"); var util = require('util'); var EventEmitter = require('events').EventEmitter; var exec = require('child_process').exec; @@ -10,10 +10,11 @@ var redisprefix = "ippoll:"; var IpPoll = function(switchaddr, hostsaddr) { var self = this; - var redisClient = redis.createClient(); +// var redisClient = redis.createClient(); var regexp = /\(([0-9]+) hosts* up\)/; var nmap = "nmap -n -sP "; +/* redisClient.on("connect", function () { console.log("IP-Poll: connected to redis"); self.emit('ready'); @@ -36,7 +37,7 @@ var IpPoll = function(switchaddr, hostsaddr) { } } }); - }; + };*/ this.pollState = function() { exec(nmap + switchaddr, function (error, stdout, stderr) { @@ -51,6 +52,7 @@ var IpPoll = function(switchaddr, hostsaddr) { }); }; + /* this.getHistory = function(start, end, callback) { redisClient.zrangebyscore(redisprefix + 'onlinecount', "-inf", "+inf", function(err, replies) { @@ -63,7 +65,7 @@ var IpPoll = function(switchaddr, hostsaddr) { callback(data); }); - }; + };*/ }; util.inherits(IpPoll, EventEmitter); diff --git a/node/routes/index.js b/node/routes/index.js index e98fa9e..d073ecf 100755 --- a/node/routes/index.js +++ b/node/routes/index.js @@ -2,6 +2,7 @@ exports.index = function (req, res) { res.render('index', { title: 'Home' }) }; +/* exports.db = function (req, res) { res.render('database', { title: 'Manage MAC' }) }; @@ -45,3 +46,4 @@ exports.form = function (req, res) { res.redirect("/db"); } }; +*/ \ No newline at end of file diff --git a/node/statusbot.js b/node/statusbot.js index d344d68..b170080 100755 --- a/node/statusbot.js +++ b/node/statusbot.js @@ -6,7 +6,7 @@ var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var cookieSession = require('cookie-session'); var flash = require('connect-flash'); -var SnmpMac = require("./snmp-mac"); +//var SnmpMac = require("./snmp-mac"); var IpPoll = require("./ip-poll"); var Flukso = require("./flukso"); var routes = require("./routes"); @@ -68,8 +68,9 @@ var usercountanswer = {at: 0, current_value: 0, datapoints: [ {at: 0, value: 0} ]}; -var snmpMac = new SnmpMac("juni.ctdo.de", "ctdo23"); -var ippoll = new IpPoll("flipdot.raum.ctdo.de", "195.160.169.30-120"); +//var snmpMac = new SnmpMac("juni.ctdo.de", "ctdo23"); +//var ippoll = new IpPoll("flipdot.raum.ctdo.de", "195.160.169.30-120"); +var ippoll = new IpPoll("flipdot.raum.ctdo.de"); var flukso = new Flukso("flukso.raum.ctdo.de", "/sensor/cf00e0b22230f4a8870af58f2b8719dd"); var mqtt = mqttClient.connect('mqtt://raum.ctdo.de'); var connected = false; @@ -77,6 +78,7 @@ var connected = false; var port = '9911'; var address = 'localhost'; +/* snmpMac.on('done', function (res) { simpleanswer.names = res; simpleanswer.lastchange = new Date().getTime(); @@ -87,6 +89,7 @@ ippoll.on('doneCount', function (num) { simpleanswer.lastchange = new Date().getTime(); ippoll.pollState(); }); +*/ ippoll.on('doneState', function (state) { spaceanswer.state.open = state; @@ -96,6 +99,7 @@ ippoll.on('doneState', function (state) { io.sockets.emit('sdata', {data: simpleanswer}); }); + flukso.on('done', function (num) { simpleanswer.power = num; spaceanswer.sensors.power_consumption[0].value = num; @@ -122,8 +126,9 @@ function sendSimple () { } function work() { - snmpMac.poll(); - ippoll.pollCount(); +/* snmpMac.poll(); + ippoll.pollCount();*/ + ippoll.pollState(); sendSimple(); } @@ -133,7 +138,7 @@ work(); setInterval(flukso.pollPower, 5000); flukso.pollPower(); -app.set('snmpMac', snmpMac); //TODO: wie kann man das schoener machen? (Modul in die Routes reintun) +//app.set('snmpMac', snmpMac); app.use(express.static('public')); app.use(cookieParser()); @@ -158,13 +163,13 @@ app.get('/api/simple/v2', function (req, res) { res.send(simpleanswer); }); app.get('/api/usercount', function (req, res) { - ippoll.getHistory("-inf", "+inf", function (data) { + /*ippoll.getHistory("-inf", "+inf", function (data) { usercountanswer.datapoints.length = 0; usercountanswer.at = simpleanswer.lastchange; usercountanswer.current_value = simpleanswer.count; - usercountanswer.datapoints = data; + usercountanswer.datapoints = data; */ res.send(usercountanswer); - }); + //}); }); function getstatusImage(req, res) { @@ -185,8 +190,8 @@ app.get('/api/simple/image.png', function (req, res) { getstatusImage(req, res); }); -app.get('/db', routes.db); -app.post('/form', routes.form); +//app.get('/db', routes.db); +//app.post('/form', routes.form); app.get('/', routes.index); //server.listen(3000, 'localhost'); diff --git a/node/views/index.jade b/node/views/index.jade index f8e62c2..e5ac36d 100644 --- a/node/views/index.jade +++ b/node/views/index.jade @@ -4,8 +4,14 @@ block content .intro p - | Hier siehst du den aktuellen Status von uns. Die Daten werden vom Router und unserem Flukso - | eingesammelt. Die Anzahl der Geräte und der Status selber werden Minütlich abgefragt. Unseren + //- + | Hier siehst du den aktuellen Status von uns. Die Daten werden vom Router und unserem Flukso + | eingesammelt. Die Anzahl der Geräte und der Status selber werden Minütlich abgefragt. Unseren + | Energieverbrauch bekommst du alle fünf Sekunden neu. Den Status "geöffnet" oder "geschlossen" + | bestimmt das Programm mit einem ping auf den Switch im Raum. Mit dem Knopf unter dem Stromverbrauch + | kannst du einschalten, dass du eine Benachrichtigung bei einer Änderung bekommst. Der Tab muss dafür offen bleiben. + | Hier siehst du den aktuellen Status von uns. Die Daten werden von unserem Flukso + | eingesammelt. Der Status selber wird Minütlich abgefragt. Unseren | Energieverbrauch bekommst du alle fünf Sekunden neu. Den Status "geöffnet" oder "geschlossen" | bestimmt das Programm mit einem ping auf den Switch im Raum. Mit dem Knopf unter dem Stromverbrauch | kannst du einschalten, dass du eine Benachrichtigung bei einer Änderung bekommst. Der Tab muss dafür offen bleiben. @@ -29,20 +35,21 @@ block content - .large-50.medium-80.small-100 - h2 Anzahl Geräte im LAN: + //- + .large-50.medium-80.small-100 + h2 Anzahl Geräte im LAN: - #graph + #graph - h2 Personen anwesend: + h2 Personen anwesend: - span(ng-repeat="name in simple.names") - | {{name}} + span(ng-repeat="name in simple.names") + | {{name}} - span(ng-show=" ! $last ") - | , + span(ng-show=" ! $last ") + | , .large-30.medium-100.small-100 h2 Energieverbrauch diff --git a/node/views/layout.jade b/node/views/layout.jade index d579b94..0f51c26 100644 --- a/node/views/layout.jade +++ b/node/views/layout.jade @@ -27,7 +27,9 @@ html(ng-app="roomstateapp") nav.ink-navigation ul.menu.horizontal li: a(href="/") Raumstatus - li: a(href='/db') Name verwalten + //- + li: a(href='/db') Name verwalten + li: a(href="//www.chaostreff-dortmund.de/") CTDO Webseite li: a(href="//wiki.ctdo.de/") CTDO Wiki li: a(href="https://repos.ctdo.de/ctdo/raumstatus/tree/master") Source