Reimplement client-side pulse checking to avoid disconnects that have been occurring again