59 lines
1.6 KiB
JavaScript
59 lines
1.6 KiB
JavaScript
const osc = require("osc");
|
|
const udp = new osc.UDPPort({
|
|
localAddress: '0.0.0.0', //<-- NOTE: '127.0.0.1' doesn't work!! for comm. between different machines
|
|
localPort: 57001, remoteAddress: '0.0.0.0', remotePort: 57000, metadata: true
|
|
});
|
|
|
|
//firstly establish/prepare osc conn.
|
|
Promise.all([
|
|
new Promise((resolve, reject) => udp.on("ready", () => resolve('resolve: udp ready.'))),
|
|
]).then(results => {
|
|
console.log(results[0]);
|
|
|
|
const io = require('socket.io-client');
|
|
const socket = io('https://walkingtowardstheflow.xyz');
|
|
|
|
socket.on('connect', () => {
|
|
console.log("[osc-receiver] i'm connected.");
|
|
socket.emit("room", 1, (res) => console.log(res));
|
|
});
|
|
socket.on('disconnect', () => console.log("[osc-receiver] i'm disconnected."));
|
|
|
|
// (puredata)
|
|
// socket.on('key', k => {
|
|
// if (k.value == 1)
|
|
// udp.send({
|
|
// address: "/voice",
|
|
// args: [{type: "f", value: k.seat}, {type: "f", value: k.id + 1}]
|
|
// });
|
|
// });
|
|
|
|
//
|
|
socket.on('post', p => {
|
|
console.log('post', p);
|
|
});
|
|
|
|
//
|
|
socket.on('flow', f => {
|
|
console.log('flow', f);
|
|
});
|
|
|
|
//
|
|
udp.on("message", function (m) {
|
|
console.log("osc(pd)", m);
|
|
if (m.address == '/flow') {
|
|
console.log(m.args[0].value);
|
|
socket.emit('flow', m.args[0].value)
|
|
}
|
|
});
|
|
|
|
});
|
|
|
|
//osc.js - start service
|
|
udp.open();
|
|
udp.on("ready", () => console.log(
|
|
"[udp] ready (udp) : \n" +
|
|
"\tlistening on --> " + udp.options.localAddress + ":" + udp.options.localPort + "\n" +
|
|
"\tspeaking to -> " + udp.options.remoteAddress + ":" + udp.options.remotePort + "\n"
|
|
));
|