bhj / KaraokeEternal

Open karaoke party system
https://www.karaoke-eternal.com
ISC License
452 stars 67 forks source link

[Feature Request] Manual Queue Management #62

Closed Californian closed 12 months ago

Californian commented 1 year ago

Love this project, just looking into using it!

I'd love to have a system where I can manage the queue manually -- e.g. for when I'm hosting karaoke at my house and I have a friend who needs to leave early and I want to get a song in for them.

As a more complex version of this, it would be great to have a more advanced queueing system, where you could have e.g. a priority queue for people you know are good singers etc that's only used when it's shorter than the default queue. Or, better yet, some sort of plugin-based system where people can develop and choose their own queueing algorithm!

Happy to help contribute since I'm familiar with the stack :slightly_smiling_face:

bhj commented 12 months ago

Hi and thanks, I'm trying to make the codebase easier to work on, so by all means join the Discord if you want to chat about development!

On this specific issue, it's possible, but not likely to be prioritized. KE is meant to be the KJ, where the queue is automatic, fair and predictable with minimal intervention by an admin (if one is even present). It's simple, limited and opinionated by design and that will absolutely cause friction with admins that want to be a KJ. That's unlikely to change anytime soon though, so closing for now.

Californian commented 11 months ago

Sometimes there are circumstances in which the software just doesn't have enough information to be a "good" KJ though (see the example in my original post, or any number of others where e.g. someone is shy and wants to go later etc etc).

But it sounds like we just have different needs for/opinions on karaoke software, so I think it makes sense for me to just use this as inspiration to create my own :slightly_smiling_face:

bhj commented 11 months ago

It's possible for there to be other ordering strategies in the future, but I think exceptions to the current round-robin approach should be very limited. Currently the only exception is for new singers, which get moved up right behind the next-up singer. Beyond that we want the wait times to be as predictable as possible and generally only decrease.

There are definitely many reasons someone may be skipped, so we try to make it easy for users to re-queue songs for their next turn, and don't want to assume that an admin will always be present.