From 33e53cda3df944521aa7118eeddc4c1d6f33161b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Gr=C3=B6ber?= Date: Wed, 1 Aug 2018 13:49:07 +0200 Subject: [PATCH] Implement exponential backoff for websocket --- common/body_tag.html | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/common/body_tag.html b/common/body_tag.html index bebd48b..dce75a4 100644 --- a/common/body_tag.html +++ b/common/body_tag.html @@ -27,10 +27,22 @@ var its = (function() { url.protocol = url.protocol == 'https:' ? 'wss' : 'ws'; url += 'its-open-ws/'; + + var reconnect_delay = 1000; + var reconnect_giveup = 1000000; + function connect() { - console.log('isitopen: reconnecting'); - var ws = new WebSocket(url); - register(ws); + if(reconnect_delay > reconnect_giveup) + return; + + setTimeout(function() { + console.log('isitopen: reconnecting'); + var ws = new WebSocket(url); + register(ws); + + }, reconnect_delay); + + reconnect_delay *= 2; } function refresh() {