freifunk-bot

Modular parser for the hackerspace door status with handlers for multiple services
git clone git://archive.git.mtrnord.blog/MTRNord/freifunk-bot.git
Log | Files | Refs | README | LICENSE

commit 4bb74ca65b97150fd9395f33c2d10bdbffa3b6d3
parent 94e1e4162a9c0cbed5174c26ce3ddc6fe010a6f8
Author: Marcel Radzio <marcel@radzio-sh.de>
Date:   Thu, 10 Dec 2015 19:53:12 +0100

Update script

Diffstat:
MfeedGen.js | 45++++++++++++++++++++++++++++++++-------------
1 file changed, 32 insertions(+), 13 deletions(-)

diff --git a/feedGen.js b/feedGen.js @@ -1,5 +1,16 @@ var request = require('request'); var curl = require('curlrequest'); + +function sleep(milliseconds) { + var start = new Date().getTime(); + for (var i = 0; i < 1e7; i++) { + if ((new Date().getTime() - start) > milliseconds){ + break; + } + } +} +var door_status2 = "1"; +function MakePush(){ request.get('http://www.nordlab-ev.de/doorstate/status.txt', function (error, response, body) { if (!error && response.statusCode == 200) { var door_status = body; @@ -8,18 +19,26 @@ request.get('http://www.nordlab-ev.de/doorstate/status.txt', function (error, re var door_status = error; //console.log(error); } - console.log(door_status); - if (door_status == "geschlossen"){ - door_status = "closed"; - }else{ - door_status = "open"; - } - - curl.request({ url: 'https://api.pushbullet.com/v2/pushes', method: 'POST', headers: { "Access-Token": 'v1TpGyUfIoydWW1KZa4KWfjmMcfnDYyTdGuju3ZH58Y7E', "Content-Type": 'application/json' }, data: '{"channel_tag": "space-door", "body":"'+ door_status + '","title":"Door Status","type":"note"}'}, function (err, stdout, meta) { - console.log(err); - console.log('\n STDOUT: \n'); - console.log(stdout); - }); - + console.log("Current Real State:" + door_status + "\n"); + console.log("Current Last State:" + door_status2 + "\n"); + console.log("Next Check!"); + if (door_status2 !== door_status){ + door_status2 = door_status; + if (door_status == "geschlossen"){ + door_status = "closed"; + }else{ + door_status = "open"; + } + curl.request({ url: 'https://api.pushbullet.com/v2/pushes', method: 'POST', headers: { "Access-Token": 'v1TpGyUfIoydWW1KZa4KWfjmMcfnDYyTdGuju3ZH58Y7E', "Content-Type": 'application/json' }, data: '{"channel_tag": "space-door", "body":"'+ door_status + '","title":"Door Status","type":"note"}'}, function (err, stdout, meta) { + console.log(err); + console.log('\n STDOUT: \n'); + console.log(stdout); + }); + } + console.log("WAIT!"); + sleep(9*1000); + MakePush(); }); +} +MakePush();