From a70331ea3c42aef3730b91d2bf0f53efac3a878c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Herv=C3=A1s=20Rodao?= Date: Mon, 28 Jun 2021 15:01:06 +0200 Subject: [PATCH] WebRTC noVNC stream code refactored --- utils/stream/rtcstream.js | 1 + utils/stream/ws_chat.js | 80 --------------------------------------- vnc.html | 65 +++++++++---------------------- 3 files changed, 18 insertions(+), 128 deletions(-) delete mode 100644 utils/stream/ws_chat.js diff --git a/utils/stream/rtcstream.js b/utils/stream/rtcstream.js index 2f2b6171..dd6bcdb5 100644 --- a/utils/stream/rtcstream.js +++ b/utils/stream/rtcstream.js @@ -136,6 +136,7 @@ function addIceCandidate(candidate) { localPeer.addIceCandidate(candidate); } console.log('[NOVNC] Candidate Added'); + // Crear set } async function setAnswerDescription(answer){ diff --git a/utils/stream/ws_chat.js b/utils/stream/ws_chat.js deleted file mode 100644 index e58c1353..00000000 --- a/utils/stream/ws_chat.js +++ /dev/null @@ -1,80 +0,0 @@ -'use strict'; - -// Create websocket for communication -const websocket = new WebSocket( - 'ws://' + - window.location.host + - '/ws/chat/' + - room_name + - '/' -); -console.log('Websocket created for room: ', room_name); - -let token = new Date().getTime() + Math.random(); -console.log('token: ',token); - -websocket.onmessage = function(event){ - let message_data = JSON.parse(event.data); - console.log('WebSocket received: ', message_data); - - // If the content type from the websocket is chat_message, - // the text field is appended to the chat box - if(message_data['type'] == 'chat_message'){ - if(Number(token) !== Number(message_data['token'])){ - console.log('Escribir mensaje'); - add_message('receive', message_data['message']); - } - }else if(message_data['type'] == 'candidate'){ - console.log('Candidate received'); - addIceCandidate(message_data['candidate']); - }else if(message_data['type'] == 'offer'){ - console.log('Offer received'); - startRemoteStream(message_data['offer']); - }else if(message_data['type'] == 'answer'){ - console.log('Answer received'); - setAnswerDescription(message_data['answer']); - }else if(message_data['type'] == 'denied'){ - console.log('Denied connection'); - window.location.pathname = '/'; - }else if(message_data['type'] == 'checkusers'){ - if(message_data['users']){ - startLocalStream() - }else{ - console.log('No peer connected') - } - } -}; - -function add_message(direction, message){ - let chat_log = document.querySelector('#chat-log'); - - if(direction === 'send'){ - chat_log.innerHTML += ('

[You] ' + message + '

'); - }else if(direction === 'receive'){ - chat_log.innerHTML += ('

[Sender] ' + message + '

'); - } -} - -// Focus al input text -document.querySelector('#chat-message-input').focus(); - -// On Enter pressed, the WebSocket is sent -document.querySelector('#chat-message-input').onkeyup = function(e) { - if (e.keyCode === 13) { // enter, return - document.querySelector('#chat-message-submit').click(); - } -}; - -// Al hacer click en el botón de enviar el websocket se envía -document.querySelector('#chat-message-submit').onclick = function(e) { - const messageInputDom = document.querySelector('#chat-message-input'); - const message = messageInputDom.value; - websocket.send(JSON.stringify({ - 'type':'chat_message', - 'token':token, - 'message': message, - })); - console.log('WebSocket sent!'); - add_message('send', message); - messageInputDom.value = ''; -}; \ No newline at end of file diff --git a/vnc.html b/vnc.html index abcbaa7f..c281eaa4 100644 --- a/vnc.html +++ b/vnc.html @@ -325,75 +325,48 @@ +