From 7c880a288c08245e42b2844068e233e8e5d3a4d6 Mon Sep 17 00:00:00 2001 From: Julian Waller Date: Sat, 23 Jan 2021 15:27:57 +0000 Subject: [PATCH] fix: allow a few unacked pings before restarting connection --- src/client.ts | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/client.ts b/src/client.ts index 1012354..a930ba7 100644 --- a/src/client.ts +++ b/src/client.ts @@ -3,6 +3,9 @@ import { Socket } from 'net' import { Protocol, ProtocolHeader } from './protocol' const SERVER_PORT = 37133 +const PING_UNACKED_LIMIT = 5 // Arbitrary number +const PING_INTERVAL = 100 +const RECONNECT_DELAY = 1000 export interface CompanionSatelliteClientOptions { debug?: boolean @@ -27,7 +30,7 @@ export class CompanionSatelliteClient extends EventEmitter this.sendPing(), 100) + this._pingInterval = setInterval(() => this.sendPing(), PING_INTERVAL) } if (!this.socket) { @@ -107,7 +110,7 @@ export class CompanionSatelliteClient extends EventEmitter PING_UNACKED_LIMIT) { // Ping was never acked, so it looks like a timeout try { this.socket.destroy() @@ -117,7 +120,7 @@ export class CompanionSatelliteClient extends EventEmitter