var http = require('http'); var fs = require('fs'); var express = require('express'); var app = express(); var path = require('path'); var server = http.createServer(app); var port = 8000; const { SerialPort } = require('serialport') const { ReadlineParser } = require('@serialport/parser-readline') const sport = new SerialPort({ path: '/dev/ttyACM0', baudRate: 115200 }) const parser = sport.pipe(new ReadlineParser({ delimiter: '\r\n' })) //parser.on('data', console.log) server.listen(port, () => { console.log("Server is listening at port %d", port); }); app.use(express.static(path.join(__dirname, "public"))); var io = require('socket.io')(server); //here we are listening to the data coming in from the modules, it's called node-data in the html io.on('connection', function(socket){ console.log("A client connected!"); parser.on('data', function(data) { const msg = data.split(' '); console.log(msg[0], msg[1]); io.emit('node-data', data); }); socket.on("blink", () => { console.log("Blink event received!"); io.emit("blink"); // Emit the "blink" event to all connected clients }); // socket.on("message", (message) => { // console.log("Received message:", message); // if (message === "blink") { // console.log("Blink event received!"); // io.emit("blink"); // Trigger the blink event to all connected clients // } // }); socket.on('chat message', (msg) => { console.log('[user]['+ socket.id + '][' + msg + ']'); }); socket.on('userposition', (msg) => { console.log('[user]['+ socket.id + '][position: ' + msg[0] + ',' + msg[1]+ ']'); socket.to('expo').emit(socket.id, msg); }); });