diff --git a/src/public/javascripts/services/messaging.js b/src/public/javascripts/services/messaging.js index 8ecd2e081..09c7556ac 100644 --- a/src/public/javascripts/services/messaging.js +++ b/src/public/javascripts/services/messaging.js @@ -67,12 +67,9 @@ function connectWebSocket() { // use wss for secure messaging const ws = new WebSocket(protocol + "://" + location.host); - ws.onopen = event => console.debug(utils.now(), "Connected to server with WebSocket"); + ws.onopen = () => console.debug(utils.now(), "Connected to server with WebSocket"); ws.onmessage = handleMessage; - ws.onclose = function(){ - // Try to reconnect in 5 seconds - setTimeout(() => connectWebSocket(), 5000); - }; + // we're not handling ws.onclose here because reconnection is done in sendPing() return ws; } @@ -88,13 +85,17 @@ setTimeout(() => { console.log("Lost connection to server"); } - try { + if (ws.readyState === ws.OPEN) { ws.send(JSON.stringify({ type: 'ping', lastSyncId: lastSyncId })); } - catch (e) {} // if the connection is closed then this produces a lot of messages + else if (ws.readyState === ws.CLOSED || ws.readyState === ws.CLOSING) { + console.log("WS closed or closing, trying to reconnect"); + + ws = connectWebSocket(); + } }, 1000); }, 0); diff --git a/src/public/javascripts/services/tab_context.js b/src/public/javascripts/services/tab_context.js index 9eaf6a22c..d2d35e758 100644 --- a/src/public/javascripts/services/tab_context.js +++ b/src/public/javascripts/services/tab_context.js @@ -96,7 +96,7 @@ class TabContext { this.$unprotectButton = this.$tabContent.find(".unprotect-button"); this.$unprotectButton.click(protectedSessionService.unprotectNoteAndSendToServer); - console.log(`Created note tab ${this.tabId}`); + console.debug(`Created note tab ${this.tabId}`); } setNote(note, notePath) { @@ -131,7 +131,7 @@ class TabContext { this.showPaths(); - console.log(`Switched tab ${this.tabId} to ${this.noteId}`); + console.debug(`Switched tab ${this.tabId} to ${this.noteId}`); } show() {