From bb65bd6150d5c0a8daaafb2e53d550bb017f26e3 Mon Sep 17 00:00:00 2001 From: louisa Date: Thu, 15 Jun 2023 17:30:36 +0200 Subject: [PATCH] trying to undo osc --- app.js | 79 +++++++++++++++++++++++++++------------------------------- osc.js | 32 ++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 42 deletions(-) create mode 100644 osc.js diff --git a/app.js b/app.js index 0311899..bb1f8bc 100644 --- a/app.js +++ b/app.js @@ -1,53 +1,48 @@ -const osc = require('osc-min'); -const dgram = require('dgram'); - -const oscHost = '127.0.0.1'; // IP address of the OSC destination -const oscPort = 8080; // Port number of the OSC destination - -// Function to send the OSC message -function sendOSCMessage() { - // Create the OSC message - const oscMessage = osc.toBuffer({ - address: '/blink', - args: [1] - }); +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 osc = require('osc'); - // Create a UDP socket - const udpSocket = dgram.createSocket('udp4'); +const { SerialPort } = require('serialport') +const { ReadlineParser } = require('@serialport/parser-readline') +const sport = new SerialPort({ path: '/dev/ttyACM0', baudRate: 115200 }) - // Send the OSC message - udpSocket.send(oscMessage, 0, oscMessage.length, oscPort, oscHost, (err) => { - if (err) { - console.error('Error sending OSC message:', err); - } else { - console.log('OSC message sent successfully'); - } - // Close the UDP socket - udpSocket.close(); - }); -} +const parser = sport.pipe(new ReadlineParser({ delimiter: '\r\n' })) + +server.listen(port, () => { + console.log("Server is listening at port %d", port); +}); + +app.use(express.static(path.join(__dirname, "public"))); -const express = require('express'); -const app = express(); -const server = require('http').createServer(app); -const io = require('socket.io')(server); +var io = require('socket.io')(server); -// Handle socket.io events -io.on('connection', (socket) => { - console.log('A client connected!'); +io.on('connection', function(socket) { + console.log("A client connected!"); - socket.on('blink', () => { - console.log('Blink event received!'); - sendOSCMessage(); // Send the OSC message when the 'blink' event is received - io.emit('blink'); // Emit the 'blink' event to all connected clients + parser.on('data', function(data) { + const msg = data.split(' '); + console.log(msg[0], msg[1]); + io.emit('node-data', data); }); - // Add other event handlers here... + socket.on("blink", () => { + console.log("Blink event received!"); + io.emit("blink"); // Emit 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); + }); -const port = 3000; // Specify your desired port number -server.listen(port, () => { - console.log(`Server is running on port ${port}`); }); diff --git a/osc.js b/osc.js new file mode 100644 index 0000000..c62cb24 --- /dev/null +++ b/osc.js @@ -0,0 +1,32 @@ +// const osc = require('osc-min'); +// const dgram = require('dgram'); + +// const oscHost = '192.168.2.1'; // IP address of the OSC destination +// const oscPort = 8080; // Port number of the OSC destination + +// // Function to send the OSC message +// function sendOSCMessage() { +// // Create the OSC message +// const oscMessage = osc.toBuffer({ +// address: '/blink', +// args: [1] +// }); + +// // Create a UDP socket +// const udpSocket = dgram.createSocket('udp4'); + +// // Send the OSC message +// udpSocket.send(oscMessage, 0, oscMessage.length, oscPort, oscHost, (err) => { +// if (err) { +// console.error('Error sending OSC message:', err); +// } else { +// console.log('OSC message sent successfully'); +// } + +// // Close the UDP socket +// udpSocket.close(); +// }); +// } + +// // Call the function to send the OSC message +// sendOSCMessage();