-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
70 lines (55 loc) · 1.51 KB
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
const express = require('express')
const app = express()
app.use(express.static('public'));
//intialize / initialisere port
const SerialPort = require("serialport");
const Readline = require("@serialport/parser-readline");
// const serialPortName = "/dev/tty-usbserial1"
const serialPortName = "/dev/cu.usbmodem14101";
const port = new SerialPort(serialPortName, function(err) {
if (err) {
return console.log("Error: ", err.message);
}
});
// app.get('/', function (req, res) {
// res.send('Hello Wodrld')
// })
// Shift command 7
function sendCommand(command) {
port.write(command, function(err) {
if (err) {
return console.log("Error on write: ", err.message);
}
console.log(`command: '${command}' was sent to ${serialPortName}`);
});
}
const server = app.listen(2917)
const socket = require('socket.io');
const io = socket(server);
io.on('connection', newConnection)
function newConnection(socket){
console.log(`New connection ${socket.id}`)
socket.on('positionEvent', (data) => {
// console.log(data);
socket.broadcast.emit('positionEvent',data);
const colorData = {
x: data.x,
r: data.r,
g: data.g,
b: data.b,
a: data.a,
f: data.f,
s: data.s
};
const jsonStr = JSON.stringify(colorData);
sendCommand(jsonStr);
console.log(jsonStr);
});
// function mouseMsg(data){
// socket.broadcast.emit('positionEvent',data);
// console.log(data),
// }
}
// io.on('positionEvent', (data) => {
// console.log(data);
// })