When is the 'invalid client id' event raised, how should the application respond?

I can’t find any information about how to properly handle this event.

Hello.
Please use TROSynapseSuperHTTPChannel.OnInvalidClientID event.
Close connection manually so it could be opened again immediately.

procedure TClientForm.ROChannelInvalidClientID(Sender: TObject;
   var aReconnect: Boolean);
begin
   ROChannel.Active := false;
   aReconnect := true;
end;

Will the client get a new client ID then?

What triggers this event?
I would say this event is raised when the client ID is no longer valid on the server, thus when the session has timed out? However I experimented with a MemorySessionManager.TimeOut=24 * 60 * 60 (aka 24 hours) but still this event was raised after the client was disconnected (cable unplugged) for about 30 mins.

What I’m trying to achieve is that the the client ID never times out, even if the client reconnects after a few hours of inactivity (like when someone reopens their laptop)

fwiw, i consider this a bug in the SC. it should handle the Invalid Client ID internally and reconnect, w/o bothering you.

Hello,
Logged as #55568