Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for per-room display names/avatars #499

Open
richvdh opened this issue Oct 12, 2016 · 58 comments
Open

Support for per-room display names/avatars #499

richvdh opened this issue Oct 12, 2016 · 58 comments
Labels
A-Avatar O-Occasional Affects or can be seen by some users regularly or most users rarely T-Enhancement

Comments

@richvdh
Copy link
Member

richvdh commented Oct 12, 2016

Client-side support for https://github.com/matrix-org/matrix-doc/issues/545

@Vetgans
Copy link

Vetgans commented Oct 17, 2016

I second this request for choosing a displayname per room.

In https://matrix.org/jira/browse/SPEC-230 it’s given ‘not high priority’. One of the key features of Matrix however is to bridge networks and combine things. Many people use different (nick)names and aliases on different networks, fora and so on. People often (obligatory) use surnames for work, but first names to communicate with family and friends.

So shouldn’t this request get a (much) higher priority?

@ara4n
Copy link
Member

ara4n commented Nov 6, 2016

the priority here is basically "not high relative to stuff like e2e". it's prolly somewhere between p2 and p3; will put it as p2 for now.

@JasonLocklin
Copy link

Per-group nicks, rather than per-channel, would make more sense, when groups are done. It makes more sense in terms of UX -both for the user (i.e., keeping track of the fact that I use one display name for work, another for family, etc. is easy), and for the user's contact (Joe at work will always see my work display name, no accidentally using the wrong display name in one odd channel).
The UI for managing these multiple display names could easily be worked seamlessly into whatever UI is created for managing group subscriptions.

@uhoreg
Copy link
Member

uhoreg commented May 16, 2017

@heyakyra
Copy link

Would this give the illusion that the different nicks are separate? i.e. offer anonymity? If so may conflict with element-hq/element-web#5216

@t3chguy
Copy link
Member

t3chguy commented Oct 18, 2017

@thekyriarchy it's not intended for that whatsoever since the MXID will not change, just the display name will, so I presume more for differing preferred name/known as name in different groups/circles

@jooert
Copy link

jooert commented Feb 26, 2018

If someone is interested in updating their displayname in certain rooms manually, I wrote a small Python script to do this.

@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2018

If you're using riot Web it's possible to do roughly scripts. See https://vault.webdevguru.co.uk/Matrix/per-room-nickname/

2 similar comments
@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2018

If you're using riot Web it's possible to do roughly scripts. See https://vault.webdevguru.co.uk/Matrix/per-room-nickname/

@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2018

If you're using riot Web it's possible to do roughly scripts. See https://vault.webdevguru.co.uk/Matrix/per-room-nickname/

@the-moog
Copy link

In a self-hosted home server local rooms may be OK with a recognisable name as the users may know each other within their organisation, but rooms federated into that homeserver perhaps not so.
Could there be a setting as simple as "Homeserver Name" "Federated Alias"?

@lomax
Copy link

lomax commented Jan 9, 2019

Why don't just add the scope, i.e current room, to the existing /nick command in Riot?
Or even better add this functionality to /nick clone /localnick or /roomnick or /displayname.

To be specific roomId could be passed to setDisplayName, and setDisplayName could pass name to the _membershipChange based on roomID status.
Any takers @ara4n?

@fladd
Copy link

fladd commented Feb 26, 2019

Now that we have this for rooms, it would be great to also have this for communities. Such that if someone starts a new chat with me, they will see my community name in those new rooms as well, and not my general one.

@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2019

@fladd

Now that we have this for rooms, it would be great to also have this for communities. Such that if someone starts a new chat with me, they will see my community name in those new rooms as well, and not my general one.

The issue there is a room can be in 0-N communities, so what if Room X is in 100 communities, which Display Name do we use?

@fladd
Copy link

fladd commented Feb 26, 2019

@fladd

Now that we have this for rooms, it would be great to also have this for communities. Such that if someone starts a new chat with me, they will see my community name in those new rooms as well, and not my general one.

The issue there is a room can be in 0-N communities, so what if Room X is in 100 communities, which Display Name do we use?

The nickname that was last set and affected that room.

@fladd
Copy link

fladd commented Feb 26, 2019

To elaborate on this:

Suppose you have Rooms X and Y, and communities 1 and 2:
1(X,Y)
2(Y)

If I now change nickname in community 1, then it is also changed in X and Y.
If I then change it directly in X, then is is changed only there.
If I then change nickname in community 2, then room Y is changed.

Changing community nickname should also affect the community user list, and any new (1to1) room that is created from within a community. That is, the nickname should be inherited.

@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2019

and any new (1to1) room that is created from within a community.

will probably be the trickiest, as starting a 1:1 with someone in a community is no different than starting one with someone manually, so there's no way for anything to know that it should pick up that name

@fladd
Copy link

fladd commented Feb 26, 2019

There is a list with user names on the community page. If you start a chat from that list I meant. Otherwise, the 1to1 chat should of course just inherit the nickname from the room you started the chat from (if started from a room; otherwise default nickname).

@t3chguy
Copy link
Member

t3chguy commented Feb 26, 2019

There is a list with user names on the community page. If you start a chat from that list I meant. Otherwise, the 1to1 chat should of course just inherit the nickname from the room you started the chat from (if started from a room; otherwise default nickname).

I know what you mean, but when you start a chat with that list there's no special API for starting a chat in a community/room, its just create a room and invite the other user, the other user then chooses their display name and have no idea what screen you were looking at in your client when you were starting the chat.

@fladd
Copy link

fladd commented Feb 26, 2019

mmh, I see. That unfortunately makes the feature of setting room-based nicknames not very useful.

@dessalines
Copy link

Matrix communities just being a collection of random rooms, is totally different from discord communities, where the rooms are owned, and specific to that community.

So with discord you can do things like have a name per community, limit access and abilities by roles, etc. Whereas in matrix you have to do this for every room... which is more work, but it makes sense when you consider that one room can be a part of many communities.

I will say tho that it is easier to "onboard" ppl the discord way, but its def less flexible and normalized. A good compromise might be a way to mass invite ppl to all the rooms in a community, if they're private for example, and a /communitynick command that could search for your user thats in all the rooms of that community, and rename you in them.

@turt2live turt2live changed the title Support for per-room display names Support for per-room display names/avatars May 9, 2019
@alittlebitofit
Copy link

alittlebitofit commented May 9, 2019

@t3chguy

If you're using riot Web it's possible to do roughly scripts. See https://vault.webdevguru.co.uk/Matrix/per-room-nickname/

This works. Thanks. Is there anything similar for display pictures? :)

@t3chguy
Copy link
Member

t3chguy commented Apr 13, 2020

But yes an actual ui would be nice

@jtrees
Copy link

jtrees commented Apr 14, 2020

I think the way to go here is either...

  • ... create a new issue for the GUI bit.
  • ... update the description of this issue to include sub-tasks, with a GUI as an uncompleted subtask.

@Lalarian
Copy link

Such a feature is simply obligate!
Any messenger offers the option for renaming contacts to be shown with the name you want to find them under. It's not a minor thing, but actually very important, especially if you got multiple contacts with similar names.

@t3chguy
Copy link
Member

t3chguy commented Jan 18, 2021

@Lalarian

This issue is about you having a different avatar & displayname per room. As in one you set in that room.

The issue you want is #725

@HarHarLinks
Copy link

I want to add my suggestions of some design and implementation thoughts to this thread now that t3chguy pointed me here.

My suggestion goes into more detail that includes proposals for changes in spec and server and can be found at #370, but let me summarize the element part here:

  • proper per-room display names are required for reasons including but not limited to privacy and some glamour (this is supposed to be fun, dammit!)
  • display names should be properly manageable including a default, per room (GUI), and upcoming spaces. current state of this is not only missing GUI, but also bad UX that changing your global display name or avatar requires your homeserver to reset it in all rooms you're a member of per the spec
  • the core of my proposal: allow to choose the room display name upon joining. suggestions may be offered based on existing display names. this seems to require spec and server changes.
  • considerations for fallbacks are necessary

Again, find more details and reasoning at #370.

@Lalarian
Copy link

I hope this will make it onto the roadmap soon. It's obligate for direct messaging purposes.

@blueforesticarus
Copy link

I second Lalarian's point.
I want a username for talking is discord-like rooms, but I need to have my display-name be my name for talking to family.

@akien-mga
Copy link

I thought for years that this wasn't possible due to this issue, but for others coming here: you can now set a custom nick on a per-room basis with the /myroomnick (also aliased to /roomnick) command in Element Web at least.

It doesn't allow you to set a custom nick upon joining a room if you want to keep your identities well separated, but for the use case of "Internet persona vs first name in family room", you can likely have your Internet persona as default nick and change it specifically in your family rooms my /myroomnick).

@IF-Adin
Copy link

IF-Adin commented May 25, 2021

What can we do to bring more attention to this issue? @HarHarLinks Basically put into words exactly what i want. This is also something i would need for making a very interactive bot/frontend project i am working on.

@HarHarLinks
Copy link

@IF-Adin this is being worked on: matrix-org/matrix-spec-proposals#3189

@IF-Adin
Copy link

IF-Adin commented May 25, 2021

@HarHarLinks Oh, very good! Thank you.

@alittlebitofit
Copy link

So multiple display names would also be linked to different profile pictures (basically having display profiles)? And another cool thing would be having a profile picture history like in telegram?

@t3chguy theres still no profile picture history :o

@t3chguy
Copy link
Member

t3chguy commented May 6, 2022

@alittlebitofit the Matrix Spec still offers no sane way to look up the history of a state event or profile, hence Element not being able to show such.

@HarHarLinks
Copy link

profile picture history

might also be seen as an anti-feature, see the "don't show historical display names" topic

@SimonBrandner SimonBrandner added O-Occasional Affects or can be seen by some users regularly or most users rarely and removed P2 labels May 7, 2022
@SimonBrandner SimonBrandner transferred this issue from element-hq/element-web Jul 1, 2022
@heyakyra
Copy link

heyakyra commented Jul 1, 2022

Does/should this depend on matrix-org/matrix-spec-proposals#1228 (but still precede matrix-org/matrix-spec-proposals#3793)?

@robintown
Copy link
Member

As has been discussed in MSC3189, it could be made to depend on MSC1228, but that's been deemed a bit of a crazy solution rather than a practical one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Avatar O-Occasional Affects or can be seen by some users regularly or most users rarely T-Enhancement
Projects
None yet
Development

No branches or pull requests