Actually many servers with many rooms use bots with reaction detection to manage custom access by roles. Small example, on an international server you may have to react with `:flag_fr:` on a specific message to access on `French` room.
This behavior and the API spam can be completely avoided by adding the permission `Sefl Assign` to roles. Then a user can add/remove the role himself without having to react on a message.
I know, bots are cool, i'm bot developer too, but this feature can be incredibly better if implemented natively on Discord.