diff --git a/web-service/public/js/bundle.js b/web-service/public/js/bundle.js index b1735eac3ed719834107f17b11318d20db71f07a..52798e549db0a768cba2a4049f135b19f92bb792 100644 --- a/web-service/public/js/bundle.js +++ b/web-service/public/js/bundle.js @@ -59,6 +59,7 @@ createVideoPlayer = () => { containerDiv.innerHTML = `<h1>Stream ${current_data.uri} is live right here!</h1><br> <button onclick="renderThumbnails(); closeStream()">Go back</button> <button onclick="connectToStream()">Start Stream</button><br> + <button onclick="webSocketTest()">WebSocket Test</button><br> <video id="ftlab-stream-video" width="640" height="360"></video>`; containerDiv.innerHTML += '<br>' containerDiv.innerHTML += '' @@ -147,6 +148,11 @@ createPeer = () => { peer = new Peer(ws) } +webSocketTest = () => { + console.log(current_data.uri) + peer.send("update_cfg", "ftl://utu.fi#reconstruction_default/0/renderer/cool_effect", "true") +} + connectToStream = () => { const element = document.getElementById('ftlab-stream-video'); @@ -155,7 +161,7 @@ connectToStream = () => { peer.bind(current_data.uri, (latency, streampckg, pckg) => { if(pckg[0] === 2){ - function decode(value) { + function decode(value){ converter.appendRawData(value); } decode(pckg[5]); diff --git a/web-service/public/js/index.js b/web-service/public/js/index.js index 9c3905baad6e95fd32a8aac4b95097d2c86571cd..9d2ee015d615b680fdf5f6e71b7fc510b72d1f8f 100644 --- a/web-service/public/js/index.js +++ b/web-service/public/js/index.js @@ -58,6 +58,7 @@ createVideoPlayer = () => { containerDiv.innerHTML = `<h1>Stream ${current_data.uri} is live right here!</h1><br> <button onclick="renderThumbnails(); closeStream()">Go back</button> <button onclick="connectToStream()">Start Stream</button><br> + <button onclick="webSocketTest()">WebSocket Test</button><br> <video id="ftlab-stream-video" width="640" height="360"></video>`; containerDiv.innerHTML += '<br>' containerDiv.innerHTML += '' @@ -146,6 +147,11 @@ createPeer = () => { peer = new Peer(ws) } +webSocketTest = () => { + console.log(current_data.uri) + peer.send("update_cfg", "ftl://utu.fi#reconstruction_default/0/renderer/cool_effect", "true") +} + connectToStream = () => { const element = document.getElementById('ftlab-stream-video'); diff --git a/web-service/server/package.json b/web-service/server/package.json index 14e0f41a281dbdf91477fb215113475bc0e6675a..2091d98a947fff82c6c559b640f07596fb5b225f 100644 --- a/web-service/server/package.json +++ b/web-service/server/package.json @@ -23,6 +23,7 @@ "msgpack5": "^4.2.1", "passport": "^0.4.0", "passport-google-oauth20": "^2.0.0", + "url-parse": "^1.4.7", "uuid": "^3.3.3", "watchify": "^3.11.1" } diff --git a/web-service/server/src/index.js b/web-service/server/src/index.js index 935f5e9ba010c6d1ed53f39ef7b856fadd51ce9a..ae879d249af0d6b561dc9943231407981250d255 100644 --- a/web-service/server/src/index.js +++ b/web-service/server/src/index.js @@ -11,6 +11,7 @@ const config = require('./utils/config') const User = require('./models/users') const Configs = require('./models/generic') const bodyParser = require('body-parser') +const Url = require('url-parse') // ---- INDEXES ---------------------------------------------------------------- app.use(passport.initialize()); @@ -461,6 +462,7 @@ app.ws('/', (ws, req) => { * Get JSON values for stream configuration */ p.bind("get_cfg", (cb, uri) => { + console.log(stringSplitter(uri)) if(uri_data[uri]){ let peer = uri_data[uri].peer if(peer){ @@ -476,10 +478,15 @@ app.ws('/', (ws, req) => { * Update certain URIs values */ p.bind("update_cfg", (uri, json) => { - let peer = uri_data[uri].peer - if(peer){ + if(uri_data[uri]){ + let peer = uri_data[uri].peer + if(peer){ peer.send("update_cfg", uri, json) - } + } + }else{ + console.log("Config not found", uri) + return "{}"; + } }) // Register a new stream @@ -494,6 +501,11 @@ app.ws('/', (ws, req) => { }); }); +function stringSplitter(uri) { + const url = new Url(uri) + return url; +} + console.log("Listening or port 8080"); app.listen(8080);