RetroHexChat enforces a single active session per nickname. One chat can be connected with the same nickname at a time — but a conference, a space, a P2P session and a game each have an address of their own, and those tabs are yours to open beside the chat as many as you like.
How It Works
When you open the chat with a nickname that already has a chat somewhere (even your own, in another tab or browser), the previous session is immediately disconnected and redirected to the Connect screen with the message:
Session ended — login started in another window
The new session takes over and becomes the active connection.
Session Expiry
If your connection drops unexpectedly, the client attempts to reconnect automatically with exponential backoff (up to 10 attempts). If all attempts fail, the session is considered expired and you are redirected to the Connect screen with the message:
Session expired
You can then reconnect manually.
Why Single Session?
Enforcing one session per nickname prevents:
- Duplicate presence in channels
- Messages being received in multiple windows simultaneously
- State inconsistencies between sessions
The rule is about the conversation, not about tabs. A conference, a space, a P2P session and a game are not chats: they carry no channel list and no presence of their own, which is why you can hold several at once. Your channels are left when the last of your tabs closes, not when the chat's does.