diff options
Diffstat (limited to 'app/client/socket.js')
| -rw-r--r-- | app/client/socket.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/app/client/socket.js b/app/client/socket.js new file mode 100644 index 0000000..289fc4e --- /dev/null +++ b/app/client/socket.js @@ -0,0 +1,60 @@ +let socket = io.connect('/client') +let got_frame = false + +socket.on('res', (data) => { + switch (data.cmd) { + case 'get_last_frame': + console.log('get last frame!') + if (data.res !== 'working') { + socket.emit('cmd', { + cmd: 'get_last_frame', + }) + } + break + default: + break + } + console.log(data) +}) + +socket.on('frame', (data) => { + got_frame = true + const blob = new Blob([data.frame], { type: 'image/jpg' }) + const url = URL.createObjectURL(blob) + const img = new Image () + img.onload = function() { + URL.revokeObjectURL(url) + const player = document.querySelector('.player') + player.innerHTML = '' + player.appendChild(img) + } + img.src = url +}) + +socket.emit('cmd', { + cmd: 'get_params', +}) + +setTimeout(() => { + if (!got_frame) { + // socket.emit('cmd', { + // cmd: 'get_last_frame', + // }) + } +}, 500) + +export function get_params(key, value) { + socket.emit('cmd', { + cmd: 'get_params', + }) +} +export function send_param(key, value) { + socket.emit('cmd', { + cmd: 'send_param', + payload: { + 'key': key, + 'value': value, + } + }) +} +export { socket } |
