Added webRTC connection
This commit is contained in:
parent
5f88de514f
commit
c0ba6d31d5
57
vnc.html
57
vnc.html
|
|
@ -323,6 +323,8 @@
|
|||
<video id="localVideo" playsinline autoplay></video>
|
||||
</div>
|
||||
|
||||
<!--<script src="https://webrtc.github.io/adapter/adapter-latest.js"></script>-->
|
||||
<script src="utils/stream/rtcstream.js"></script>
|
||||
<script>
|
||||
const localVideo = document.querySelector('#localVideo');
|
||||
var stream_set = false;
|
||||
|
|
@ -332,7 +334,7 @@
|
|||
setInterval(function(){
|
||||
if(canvas === null){
|
||||
canvas = document.querySelector('#noVNC_container canvas');
|
||||
console.log('CANVAS: ', canvas);
|
||||
//console.log('CANVAS: ', canvas);
|
||||
}else{
|
||||
if(!stream_set){
|
||||
let stream = canvas.captureStream();
|
||||
|
|
@ -342,6 +344,59 @@
|
|||
}
|
||||
}
|
||||
},500);
|
||||
|
||||
|
||||
/////// Control de streamws
|
||||
// Creo WS de stream
|
||||
const streamws = new WebSocket(
|
||||
'ws://' +
|
||||
'127.0.0.1:8000' +
|
||||
'/ws/stream/' +
|
||||
'd' +
|
||||
'/'
|
||||
);
|
||||
console.log('[NOVNC] WebSocket streamws creado');
|
||||
|
||||
window.addEventListener('message', function(e){
|
||||
console.log('[NOVNC] mensaje: ', e.data);
|
||||
if(e.data === 'start'){
|
||||
console.log('Empezar el stream');
|
||||
// Comprobar usuarios
|
||||
checkUsers();
|
||||
}
|
||||
});
|
||||
|
||||
///// Esto va en ws_stream.js
|
||||
streamws.onmessage = function(e){
|
||||
let message_data = JSON.parse(event.data);
|
||||
console.log('[NOVNC] streamws: ', message_data);
|
||||
if(message_data['type'] == 'checkusers'){
|
||||
if(message_data['users']){
|
||||
console.log('[NOVNC] usuarios correctos');
|
||||
startLocalStream();
|
||||
}else{
|
||||
console.log('[NOVNC] usuarios incorrectos');
|
||||
}
|
||||
}else if(message_data['type'] == 'candidate'){
|
||||
console.log('[NOVNC] Candidate received');
|
||||
addIceCandidate(message_data['candidate']);
|
||||
}else if(message_data['type'] == 'offer'){
|
||||
console.log('[NOVNC] Offer received');
|
||||
startRemoteStream(message_data['offer']);
|
||||
}else if(message_data['type'] == 'answer'){
|
||||
console.log('[NOVNC] Answer received');
|
||||
setAnswerDescription(message_data['answer']);
|
||||
}else if(message_data['type'] == 'denied'){
|
||||
console.log('[NOVNC] Denied connection');
|
||||
window.location.pathname = '/';
|
||||
}
|
||||
}
|
||||
|
||||
////////
|
||||
|
||||
// window.onload = function(){
|
||||
// parent.postMessage(canvas, '*');
|
||||
// }
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
Loading…
Reference in New Issue