From cef7dfcdbba360eec7484b87ce6f549e46716f71 Mon Sep 17 00:00:00 2001 From: BrennanConroy Date: Tue, 7 Aug 2018 14:14:32 -0700 Subject: [PATCH] Check connection state in ping Typescript client (#2753) --- clients/ts/signalr/src/HubConnection.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/clients/ts/signalr/src/HubConnection.ts b/clients/ts/signalr/src/HubConnection.ts index 749bc6c4f6..ea3d71cd4d 100644 --- a/clients/ts/signalr/src/HubConnection.ts +++ b/clients/ts/signalr/src/HubConnection.ts @@ -406,7 +406,11 @@ export class HubConnection { private resetKeepAliveInterval() { this.cleanupPingTimer(); - this.pingServerHandle = setTimeout(() => this.sendMessage(this.cachedPingMessage), this.keepAliveIntervalInMilliseconds); + this.pingServerHandle = setTimeout(async () => { + if (this.connectionState === HubConnectionState.Connected) { + await this.sendMessage(this.cachedPingMessage); + } + }, this.keepAliveIntervalInMilliseconds); } private resetTimeoutPeriod() {