diff --git a/app/src/main/java/de/kuschku/quasseldroid/service/AndroidHeartBeatRunner.kt b/app/src/main/java/de/kuschku/quasseldroid/service/AndroidHeartBeatRunner.kt index 21ba09a302b1052d8c938a99b3a6bdb3c5f022e8..bb44fb01c39d2191ef19153b7830bda34fbed1a2 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/service/AndroidHeartBeatRunner.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/service/AndroidHeartBeatRunner.kt @@ -15,16 +15,18 @@ class AndroidHeartBeatRunner( ) : HeartBeatRunner { private var running = true private var lastHeartBeatReply: Instant = Instant.now() + private var lastHeartBeatSend: Instant = Instant.now() override fun start() { if (running) { - val now = Instant.now() - val duration = Duration.between(lastHeartBeatReply, now).toMillis() + val duration = Duration.between(lastHeartBeatReply, lastHeartBeatSend).toMillis() if (duration > TIMEOUT) { log(INFO, "Heartbeat", "Ping Timeout: Last Response ${duration}ms ago") session.close() } else { log(INFO, "Heartbeat", "Sending Heartbeat") + val now = Instant.now() + lastHeartBeatSend = now session.dispatch(SignalProxyMessage.HeartBeat(now)) } handler.postDelayed(::start, DELAY) @@ -40,7 +42,7 @@ class AndroidHeartBeatRunner( } companion object { - const val TIMEOUT = 120_000L + const val TIMEOUT = 90_000L const val DELAY = 30_000L } }