tray
tray copied to clipboard
Server Side Keep-Alive
Potential fix for #1275
The server can send pings just like the client to keep a WS alive. No pong logic seems to be required. This ping from the server should be immune to chrome's throttling, and I left the client side ping in to inform the client if the connection fails. The failure should report shortly after waking up the tab, or more likely, right away if the closure of the WS was graceful.
Note: I was never able to reproduce the original issue. I think this fix may also fail on firefox if the tab goes into full suspension due to low system resources, but testing is needed.