TannDev/silence-among-us

Lobbies should expire

Closed this issue · 2 comments

Feature

If a lobby is unchanged after a certain amount of time, it should automatically stop.

Reasons for Implementing

Since lobbies only close themselves when all players are gone, and non-spectators aren't removed when leaving the channel, they can end up staying open indefinitely. This consumes resources and can be confusing for people if they join the channel.

Ideas & Details

If the lobby is untouched for a certain amount of time (20-30 minutes?), it should automatically stop.

I imagine that "untouched" could mean that no commands have been issued manually OR by the capture app. Either would indicate at least some interest in the lobby.

The easiest solution would likely be to add a timeout to the lobby. If it expires, the lobby closes automatically. Then, in both of the Lobby.findXXX functions, the timeout gets reset.

Alternatives

  • Close the lobby if everyone leaves the voice channel, even while playing. (Could be frustrating.)
  • Track disconnected players in the capture, and prune them. (Doesn't work in manual mode.)
  • Stop the lobby if the capture stops AND everyone left the voice channel. (Viable?)

This issue is resolved in version 2.2.0-beta.5

This issue is resolved in version 2.2.0