Explanation of Concept

Users can queue as one of two types:

- Player

- Host



Player:

- Queues for a certain game (eg. League of Legends) and a queue type (eg. 5v5 Draft Pick)

- Gets invited to a discord voice channel once a group is found



Host:

- Does not need to be the Discord server owner

- Queues for a certain game (eg. League of Legends) and a queue type (eg. 5v5 Draft Pick)

- Uses the current voice channel they're in as the host voice channel

- Is de-queued once the host leaves the channel





Here's and example how it works:

1) Player queue is filled with players.

2) Host queue is filled with host voice channels.

3) Players will be invited to host voice channels until the amount of players for the queue type is fulfilled (eg. 5 players in the host voice channel for League of Legends 5v5 Draft Pick).

3a) Players will get an invitation to the host server that will time out after a certain period of time. After the expiration, the player will be removed from the queue (assumed to be AFK).

4) Once the queue size is fulfilled, the bot will stop filling spots (eg. 5 players for League of Legends 5v5 Draft Pick).