You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Usually its the server that pings the client, and as long as the client answers with a pong everything is fine.
Now when the server goes away CptHook does not seem to take notice. CptHook needs to regularly check whether ping/pongs are happening to detect connection issues. If the server doesn't send any, send them yourself. If that fails multiple times it's time to reconnect.
The text was updated successfully, but these errors were encountered:
I checked the girc documentation and verified with debug logging: A PING is send every 20 seconds and after 3 unanswered requests the client turns into disconnected state and attempts a reconnect. This can be seen in the following log where I dropped my default route to simulate network outage:
debug:01:05:14 conn.go:457: > PING 1556060714342450219
debug:01:05:34 conn.go:457: > PING 1556060734342429672
debug:01:05:54 conn.go:558: closing pingLoop
debug:01:05:54 conn.go:319: received error, beginning clean up
debug:01:05:54 conn.go:491: closing sendLoop
debug:01:05:54 client.go:316: received signal to close, flushing 0 events and executing
debug:01:05:54 client.go:328: closing execLoop
debug:01:05:54 conn.go:371: closing readLoop
debug:01:05:54 conn.go:335: waiting for all routines to finish
WARN[0080] Connection to irc.hackint.eu:6697 terminated: timed out waiting for a requested PING response
WARN[0080] Reconnecting in 30 seconds...
Usually its the server that pings the client, and as long as the client answers with a pong everything is fine.
Now when the server goes away CptHook does not seem to take notice. CptHook needs to regularly check whether ping/pongs are happening to detect connection issues. If the server doesn't send any, send them yourself. If that fails multiple times it's time to reconnect.
The text was updated successfully, but these errors were encountered: