function start () { /* connections */ devices.forEach(function (dev) { /* connect devices */ relayr.connect(token, dev.id); /* show devices infos */ relayr.deviceModel(token, dev.id, function (err, model) { console.log(err || "Connecting " + model.name + ".."); }); }); // relayr.user(token, function(err, user) { // console.log(err || user); // }); // relayr.devices(user_id, token, function(err, devices) { // console.log(err || devices); // }); /* recover sensors data */ relayr.on('data', function (topic, data) { // console.log(data); if (_io) { handleReadings(data.readings); } }); };
relayr.on('data', function (topic, msg) { var i, l; for (i = 0 ; i < msg.readings.length ; ++i) { var m = msg.readings[i]; if (m.meaning == "proximity") { setPull(setBounce(bouncePale, m.value < 1000), "pullPale", "countPale", "lastPale"); } else if (m.meaning == "acceleration") { console.log("r=" + Math.atan2(m.value.y, m.value.x)); setPull(setBounce(bounceIPA, Math.atan2(m.value.y, m.value.x) < -0.1), "pullIPA", "countIPA", "lastIPA"); } else if (m.meaning == "temperature") { state.tempIPA = m.value; } } l = 0; if (state.pullPale) l += 1; if (state.pullIPA) l += 2; if (l != leds) { var options; leds = l; options = { host: 'agent.electricimp.com', port: 443, path: '/kL90EDF3atru?i=' + l, method: 'GET', }; var req = https.request(options, function(res) { res.on('data', function(d) { }); }); req.end(); req.on('error', function(e) { console.error(e); }); } });
/* * run with bunyan to et sensible logging: * node examples/simpleOutput.js | bunyan -o short */ var Relayr = require("relayr"); var app_id = "ecb97e95-8408-4c31-951e-106d25d7c945"; var token = "NrjB1z3f5Wh7anDP48-iFXFyBdAhWPqZ"; var lcp = "c1074df8-80dc-4e8f-beb2-a9cf80c49c0c"; relayr = new Relayr(app_id); relayr.deviceModel(token, lcp, function (err, description) { console.log("-------------- Light, Color & Proximity ------------------"); console.log(err||description); console.log("----------------------------------------------------------"); }); relayr.connect(token, lcp); relayr.on('connect', function () { }); relayr.on('data', function (topic, msg) { console.log("TOPIC:"+topic); console.log(msg); });