From 25b3d49d322b0a7c9ee1e071d93042d70f5176b7 Mon Sep 17 00:00:00 2001 From: Shira Maximov Date: Wed, 17 Jul 2019 10:25:05 +0300 Subject: [PATCH] Add support in websocket sub-protocols --- core/rfb.js | 3 ++- docs/API.md | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/core/rfb.js b/core/rfb.js index 85c9a93f..ff5c5ac0 100644 --- a/core/rfb.js +++ b/core/rfb.js @@ -53,6 +53,7 @@ export default class RFB extends EventTargetMixin { this._shared = 'shared' in options ? !!options.shared : true; this._repeaterID = options.repeaterID || ''; this._showDotCursor = options.showDotCursor || false; + this._wsProtocols = options.wsProtocols || ['binary']; // Internal state this._rfb_connection_state = ''; @@ -397,7 +398,7 @@ export default class RFB extends EventTargetMixin { try { // WebSocket.onopen transitions to the RFB init states - this._sock.open(this._url, ['binary']); + this._sock.open(this._url, this._wsProtocols); } catch (e) { if (e.name === 'SyntaxError') { this._fail("Invalid host or port (" + e + ")"); diff --git a/docs/API.md b/docs/API.md index d587429c..803176cb 100644 --- a/docs/API.md +++ b/docs/API.md @@ -187,6 +187,9 @@ connection to a specified VNC server. - A `DOMString` specifying the ID to provide to any VNC repeater encountered. + `wsProtocols` + - Protocols to use in the WebSocket connection, the default is: ['binary'] + #### connect The `connect` event is fired after all the handshaking with the server