diff --git a/dist/index.html b/dist/index.html index 67d44db..01df16e 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1,6 +1,6 @@ - LED Toggle Demo + Remote Control Lightswitch diff --git a/package.json b/package.json index f658e32..6f2b7ec 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "criticaldemo", + "name": "lightswitch-server", "version": "1.0.0", "description": "", "main": "index.js", @@ -23,6 +23,7 @@ "react": "^15.6.1", "react-dom": "^15.6.1", "react-fastclick": "^3.0.2", + "serialport": "^6.0.4", "socket.io": "^2.0.3" } } diff --git a/server.js b/server.js index 53acd8d..7f0b3bd 100644 --- a/server.js +++ b/server.js @@ -1,5 +1,6 @@ const express = require('express'); const app = express(); +const SerialPort = require('serialport'); const server = app.listen(3000, function () { console.log('Example app listening on port 3000!'); @@ -7,8 +8,25 @@ const server = app.listen(3000, function () { const io = require('socket.io').listen(server); +const port = new SerialPort('/dev/rfcomm0'); +port.on('error', function(err) { + console.log('Error: ', err.message); + port.close(); +}) +port.on('close', function(err) { + setTimeout(function() { + port.open(); + }, 2000); +}); + const update = data => { console.log('recieved ' + data); + port.write(data, function(err) { + if (err) { + return console.log('Error on write: ', err.message); + } + console.log('message written'); + }); } app.use('/', express.static('dist')) @@ -18,3 +36,4 @@ io.on('connection', socket => { update(data); }); }); + diff --git a/src/app.js b/src/app.js index 2bb1d42..befab95 100644 --- a/src/app.js +++ b/src/app.js @@ -15,6 +15,10 @@ export default class App extends React.Component { } + componentWillMount() { + document.body.addEventListener('touchmove', function(e){ e.preventDefault(); }); + } + componentWillUnmount() { this.setState({socket: this.state.socket.removeAllListeners()}); } @@ -43,7 +47,6 @@ export default class App extends React.Component {

Remote Control Lightswitch

-

Press the buttons to control the light.

@@ -54,10 +57,6 @@ export default class App extends React.Component {
-
-

Created by Tanner Collin
- tannercollin.com

-
); }