'use strict'; /** * Created by Martin on 09/02/2016. */ /*Var mqttConnect = require("../lib/mqtt/mqttConnect"); mqttConnect.doConnection();*/ var mqttConnect; function doLightsOn(id) { mqttConnect.doConnection().lightingOn(id); } function doLightsOff(id) { mqttConnect.doConnection().lightingOff(id); } function doLightsCommand(id) { console.log('doLightsCommand', id); mqttConnect.doConnection().lightingCommand(id); } function setUseRef(ref) { mqttConnect = ref; } module.exports = { mqttConnect: null, socket: null, use: function(ref) { setUseRef(ref); }, turnoff: function(req, res) { if (!req.body.light) { res.status(400).send({ status: 'error', error: 'missing required parameter' }); return; } console.log(req.body.light); if (req.body.hasOwnProperty('light')) { var light = req.body.light; doLightsOff(light); } res.json({}); }, turnon: function(req, res) { console.log(req.body); if (!req.body.light) { res.status(400).send({ status: 'error', error: 'missing required parameter' }); return; } console.log(req.body.light); if (req.body.hasOwnProperty('light')) { console.log('Controling ', req.body.light); var light = req.body.light; doLightsOn(light); } res.json({}); }, command: function(req, res) { if (!req.body.id) { res.status(400).send({ status: 'error', error: 'missing required parameter' }); return; } console.log(req.body.id); if (req.body.hasOwnProperty('id')) { var id = req.body.id; doLightsCommand(id); } res.json({}); }, setsocket: function(socket) { this.socket = socket; return this; }, subscribe: function(socket) { this.socket.subscribe('Lighting', 'LightingDataReceived'); }, doLightsOn: function(id) { doLightsOn(id); }, doLightsOff: function(id) { doLightsOff(id); } };