I'm not sure how the "reaction menu" operation model came to be in the first
place, but it's quite common in the Discord environment.
The large number of
standardized emoji characters
provides a rich but fairly simple graphic way to express what someone
thought of a message, without sending a whole 'nother message.
Sometimes it works appropriately, sometimes it doesn't.
Anyway, the way reactions work in Discord includes a counter function, to
indicate how many people agreed with a particular reaction rather than
adding a new one.
It can thus also be used for informal polling or voting.
The key piece here is that either of clicking an existing emoji to bump
its count or adding a new one are both "server events", which bots can
pick up in the event stream from a channel.
At some point, the idea of using those to trigger bot actions, specifically
to assign or deassign extra roles, became popular and many bots now
So it is possible to post a message, and then set up a bot to pay attention to all the reactions to it and assign them special meaning to add roles to any user who clicks them. If this sounds like a potential security hole, it is, if misconfigured! Most of the roles are simply tags and carry no special privilege; the idea as far as a convention participant is similar to ribbons pasted onto a real-life badge. The problem on Discord is that a user's icon must be clicked to display a little pop-up with all of these listed, so none of this is immediately visible just by viewing the main screen.
|One set of role-names would be the analogue to the pronoun ribbons, which had become quite popular over recent years and regarded as important associations for people. As inconvenient as having to click someone's avatar to "view the ribbon" as Discord might make it, attendees to prior convention servers had come to expect pronoun menus to set these up, so we needed to be sensitive to that and build the equivalent here. Gail also had a plan to have more extensive "badge" imagery available on the main site, but I'm not sure if that ever worked out.|
Rather than make potentially bad choices trying to pick symbolic emojis for
any of these, I proposed a simple numeric approach and it was accepted.
Clicking any of the numbers along the bottom would add the corresponding
tag, and it could be removed by choice just as easily.
I show more of the inner mechanics of setting these up in the "time-clock" rathole; this is just to go over the sort of human side of what people see.
One of the menus did carry an additional function.
Some topical discussion spaces were not generally visible, and a menu was
set up which would actually gate access into four additional channels.
The original idea was to make this procedure a bit more complex and
better-vetted, but without that plan coming together this had to
Again, I went with a simple numeric approach, which gives a nice compact
menu grouping and leaves room for more explanatory text.
It also discourages people from trying to click icons in the list itself,
which often misleads when trying to navigate graphic emoji-based menus.
The big-pic shows more of the interim stages of setting up the menu, after which all that extra stuff got cleaned up.
|The added access roles were also made fairly nondescript, and mixed in among other collections that people would usually have several of anyway. The surrounding verbiage was provided by others, to gently explain what to do. As long as people understood that enabling this participation for themselves represented their own commitment to the safety of those communities, it gave enough of a "stop and think" moment that as far as I know it worked out rather well.|
|So here we see the resulting combinations on Vivian's "badge" -- the main convention roles, the pronouns, and many "interests" [described in another rathole]. Now, take note of a couple of other people in the user stack on the right, particularly Kelly. Every Discord user has a "status" line that they can fill in underneath their names, which is normally blank. The place to set it is at the lower left corner of most clients. Where we really fell down was in failing to point that out to our users, how they could easily put pronouns or anything else in that field, and it *is* visible in the user list without any additional actions required! If people knew this going in, it could have possibly have saved a lot of Helpdesk load in nickname changes. And I don't think Helpdesk would really know how to respond to "please make me a unicorn".|