Thank you very much for your reply @endel !
"That's an interesting use-case. I think the major challenge is listening and triggering CS:GO events."
To be honest that is actually one of the things I don't worry about too much (for now).
I think it is possible to achieve that using this open source project: https://github.com/pushrax/node-rcon
You can configure a source-engine gameserver using rcon commands and there are even more projects like "eBot" that feature an API: https://github.com/teamreflex/eBotAPI
"I imagine this is not possible through a web browser, but maybe it can be achieved through Electron."
This sounds like an interesting concept. Currently the idea is that every visitor can reach the page through an internal domain and can then search for a match. But a client might be even better / more awesome. Will definitely look into it, ty!
I am not sure if I described my project the right way (sorry I am not the best at describing things).
Maybe it helps if you have a look at the front end: http://saarlan-pug.durek.cc/NotLoggedIn/index.html
The concept would be the following: A user visits the page, authenticates himself (using passportjs and the steam api) and then presses on the green button that says "Spielen" ( = play).
If I understood Colyseus correctly I would create a room and set the max number of "room-participants" to 10.
After that number is reached I would lock the room and then trigger some dialog with an accept button.
If every player accepts I would forward them to a page that is only available if you are in the match-room.
On that page two (random) captains can vote their team and then the map that will be played.
After that stuff is done the nodejs server would configure a CS:GO server using the eBot api for example. - And that should be kind of it :D
I hope my explanation is okay.
Here is a similar page:
When joining the queue: https://youtu.be/JVzjHTCimx0?t=91
The match lobby: https://youtu.be/JVzjHTCimx0?t=167
I hope I don't waste too much of your time^^
I am doing this project to learn and for free, so I'll definitely make it open source once it is finished. Thanks once again!