revoltchat / backend

Monorepo for Revolt backend services.
https://developers.revolt.chat/api/
Other
1.09k stars 123 forks source link

feature request: Multiple identities per account #284

Closed Beethoven-n closed 8 months ago

Beethoven-n commented 9 months ago

What do you want to see?

pointer to the start of this discussion: https://github.com/orgs/revoltchat/discussions/76 here's the original text:

This is a pretty specific request, so bear with me.

Summary

On Discord, there's an ecosystem of bots that exist purely to resend messages using a different username or avatar. Because Discord has no native support for this, they use webhooks - so they appear as follows:

image

This post proposes adding a system for multiple identities per account to Revolt, while the systems are still new and malleable.

Rationale

There are two major groups I have in mind with this feature.

1. Plural systems

For those that aren't aware, there exists a subset of the population that are known as plural systems. This term is used to describe people with pluralities - multiple people within one body, so to speak. If you're not familiar with the concept, feel free to take a look at this primer. Members of plural systems are sometimes called "alters", if you're already familiar with that term.

Plurality tools like the bots I've mentioned above are a key point of comfort and communication for members of plural systems. They allow each individual member to interact with an avatar and name of their own, which means they're not constrained to a single identity. However, Discord doesn't go far enough, here - there are strict rate limits on nickname and avatar changes (which would already be incredibly burdensome, especially given how fast switches can happen and the fact that there may be multiple members chatting at once), and no built-in identity system.

A properly integrated solution is something Revolt could break ground on here, and it would be a massive bonus for all plural systems.

2. Roleplayers

Another common use for bots like those I've mentioned above is for role-playing servers. As you can probably tell, having multiple identities available at the push of a button would be extremely convenient.

Niche use-cases

I could also envision other use-cases here, such as staff members using separate identities for personal and official communications - I'm sure there are other possibilities.

Concept

There are many ways this could be exposed in the frontend. I'll leave the configuration side of this to the community and developers, but I've had a couple of ideas on how the UX might look:

multi-identities

You can probably tell I'm not a graphic designer, haha

Beethoven-n commented 9 months ago

overall, having support for plurality is a necessity for a non-insignificant amount of people at this point

erkinalp commented 9 months ago

This should preferrably be designed to allow M:N mappings from senders to authors, to allow things such as posting in behalf of a group/organisation.

icefisher225 commented 9 months ago

I would also like to see this as a proper feature and not built via webhook abuse. It would make Revolt my (and many others) default chat app.

insertish commented 8 months ago

This is already implemented in the API but lacks any client support currently. https://github.com/revoltchat/frontend/issues/244

erkinalp commented 8 months ago

@insertish No, masquerades are 1:N, we need a true M:N sender→author mapping capability.