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

Ability to override the displayname for users & rooms that get served to you (SPEC-427) #188

Open
matrixbot opened this issue Jul 14, 2016 · 38 comments
Labels
A-Client-Server Issues affecting the CS API feature Suggestion for a significant extension which needs considerable consideration

Comments

@matrixbot
Copy link
Member

matrixbot commented Jul 14, 2016

Submitted by @​matthew:matrix.org
This could be done by account_data, both per-room (for overriding m.room.name and membership names within rooms) and globally (for overriding user displaynames globally)

(Imported from https://matrix.org/jira/browse/SPEC-427)


Edit (richvdh 2020/08/11): I think this feature is asking for the ability to set local displaynames for rooms and other users, that are not shared with other users. For example, I might want to set a displayname of "Mum" for my mum, while her public displayname remains unchanged.

@matrixbot
Copy link
Member Author

matrixbot commented Jul 14, 2016

Links exported from Jira:

is duplicated by SPEC-456

@matrixbot matrixbot changed the title Ability to override the displayname for users & rooms that get served to you Ability to override the displayname for users & rooms that get served to you (SPEC-427) Oct 31, 2016
@matrixbot matrixbot added the feature Suggestion for a significant extension which needs considerable consideration label Nov 7, 2016
@realitygaps
Copy link

Is this still planned? would be useful feature imo.

@ara4n
Copy link
Member

ara4n commented Jan 4, 2017

You could patch this up clientside, but for a good implementation you'd need proper mention support at last, so i can say <a rel="@realitygaps:matrix.org">Mr Flibble</a> hi! and have the rest of the room have a hope in hell of understanding what i meant

@madduck
Copy link

madduck commented Oct 17, 2017

/me is really longing for this…

@Ekleog
Copy link

Ekleog commented Mar 3, 2018

I guess upping a a-few-months-old thread is not a big issue, so... longing for this too :)

@ghost
Copy link

ghost commented Apr 2, 2018

likewise. this would be really helpful. hopefully someone will bump the priority.

@ghost
Copy link

ghost commented May 15, 2018

What about this? 2 years since request and still nothing happened in this matter, IMHO it's probably one of most needed features.

@rkfg
Copy link

rkfg commented Oct 19, 2018

How about also overriding avatars? Would be useful for IRC bridges at the very least where the IRC clients obviously can't have avatars. Assigning them ones could prove useful.

I see there's already vector-im/riot-web/issues/363 but it's said to be a duplicate of vector-im/riot-web/issues/3130 which links to this issue. I think both avatars and names are alike in this regard so it's best to track it here.

@MurzNN
Copy link
Contributor

MurzNN commented Jan 8, 2019

Now users already can set per-room name and avatar, but only for himself, and this is publicly visible. Does room state have any private user storage, that visible only for user? If yes, we can store override info about all users in it.

@turt2live turt2live added the A-Client-Server Issues affecting the CS API label Feb 6, 2019
@EDmitry
Copy link

EDmitry commented Dec 14, 2019

This would be a terrific feature to rename rooms/contacts along with their aux data like avatars server-side.

@MyriaCore
Copy link

There's definitely still demand for this issue! Is this planned at all?

@turt2live
Copy link
Member

Everything is planned given enough time. It currently would require an MSC from the community to get it anywhere near the list of things to worry about, however.

@madduck
Copy link

madduck commented May 29, 2020

https://matrix.org/docs/spec/proposals lays out this process. I am definitely able to support anyone, but I cannot take on driving an MSC right now.

@opusforlife2
Copy link

This is a common feature in other messaging apps, so I think this would be expected and felt 'missing' if people were to migrate to Matrix from another app.

@ewtoombs
Copy link

ewtoombs commented Jul 14, 2021

Why is this here? Why can't individual clients handle this locally without any server finding out about it? I thought matrix-doc was for protocol matters.

...unless, I suppose, you want to support synchronisation of these aliases across all of a certain user's connected clients. Is that the plan here?

@t3chguy
Copy link
Member

t3chguy commented Jul 14, 2021

@ewtoombs

Unless its specced each client will do it differently, e.g io.element.name_mappings vs custom.nheko.mapped_names etc, and thus you'd need to set it per-client. But better yet the server can inject your chosen name even for clients which don't support this optional feature.

@kevincox
Copy link

But better yet the server can inject your chosen name even for clients which don't support this optional feature.

Although it would still be useful for the client to have access to the original name. But the details can be worked out when we have a spec.

@c7hm4r
Copy link

c7hm4r commented Jan 29, 2022

I think it would be better to have that custom displayname only encrypted on the server. It might contain highly sensitive data, e.g.:

  • real names from people trying to stay undercover
  • role of the other person towards you (e.g. "Mr. X (informant)")
  • status of a relationship (e.g. expressed by emojis)

… without the person that information belongs to knowing about it or being able to have any influence on it.

@Mebus
Copy link

Mebus commented Jan 30, 2022

I think that is too much for the first shot.

Mebus

@richvdh richvdh transferred this issue from matrix-org/matrix-spec-proposals Mar 1, 2022
@fionnb
Copy link

fionnb commented May 23, 2022

Having come over from other messengers just recently and trying to consolidate my communication this is just about the single most disturbing problem (besides not being able to organize contacts into client-side groups). Many of my contacts use cryptic usernames which do not relate to their real names in any way and there is no way to identify them other than keeping a text file with aliases. Or negotiating over a commonly accepted room name with every single 1-1 chat room. Both options are not really practical.

@3hhh
Copy link

3hhh commented Jun 12, 2022

I think the room part was implemented or at least there's a bot for it?

For the user part I wonder why no one has written a bot for it so far?
So does it really need a Spec change?

I guess a bot with some database backend - possibly encrypted as outlined above - to store aliases would do for most people.

Example commands:

  • add [alias] [user] = add alias to user
  • remove [alias] = remove alias
  • list = list all aliases
  • pm [alias] = create a pm chat with the given alias
  • add_room [alias] [room] = add the given user indicated by the alias to a room
  • help = print list of commands

@Lykos153
Copy link

Bots are fine and all, especially for people familiar with Discord or IRC. But those trying to switch over from WA, Telegram etc. just want it to be baked into the UI. Also, talking to bots on the phone is annoying asl.

@fionnb
Copy link

fionnb commented Jun 13, 2022

I tend to agree with Lykos153. Moreover, client-side aliases work client-wide, across all groups and chats. Which makes sense; usually you don't want to have to spend extra time on making sure that @cryptic-handle-xyz to appears as UserA on all chats you are both on, one chat at a time. That is a change you want globally.
I do not see how that would be possible to achieve with a bot, unless I, as a newbie to matrix, failed to recognize some across-all-chats-super-bot capabilities yet. If so, feel free to correct me.

@3hhh
Copy link

3hhh commented Jun 13, 2022 via email

@3hhh
Copy link

3hhh commented Jul 1, 2022

Workaround for today wrt user aliases, if the client doesn't support it:
Assuming one's running one's own homeserver, reactbot can be used to implement a basic [alias] --> [matrix user] mapping.

Obviously one can also edit the room name of private 1:1 chats.

Also, for users with many mautrix bridges it may help to set all bridge bot command prefixes to e.g. !, invite all bridge bots into a common room and then use ! pm [name/phone number] to see which bridge bot can find that user. Some bridge bots also support commands such as ! set-displayname [name] [matrix-id] in admin mode.

@Sesota
Copy link

Sesota commented Jul 13, 2022

I can't figure out why can't we have custom room's displayname implemented the way we have m.tag event. Clients can see if there exists an event like m.displayname to override the room's already set displayname; else, default to room's displayname.

@frederiiiic
Copy link

Till my friends expands on elements i'm still waiting on this function to nickname some user only in a client side...

@koalaeagle
Copy link

This would be great for bridges like Whatsapp/Telegram/iMessage. @3hhh are you able to explain this workaround with reactbot? Is it running a command on your behalf?

@3hhh
Copy link

3hhh commented Jan 9, 2023 via email

@dwt
Copy link

dwt commented Jan 10, 2023

Not sure if this is the right issue for that, but there may be a fare easier solution that doesn't require encrypted shared storage in the matrix protocol. That is, binding the contact to an entry in the address book of the user, allows the user to set a system wide contact name for the user that is not specific to matrix. This can be achieved by allowing the user to add the matrix handle to the contact vcard and querying that to get the generic user name name.

At least to me that would greatly simplify getting system wide consistent contact naming, especially because it also means that I get the same name when communicating with that person via email, signal, threema, … - and all of that cross devices with no syncing necessary.

@3hhh
Copy link

3hhh commented Jan 10, 2023 via email

@opusforlife2
Copy link

That is, binding the contact to an entry in the address book of the user, allows the user to set a system wide contact name for the user that is not specific to matrix.

This solution leaves out users who do not wish to give Matrix apps access to their device contacts.

@yennor
Copy link

yennor commented Jan 11, 2023

That is, binding the contact to an entry in the address book of the user, allows the user to set a system wide contact name for the user that is not specific to matrix.

This solution leaves out users who do not wish to give Matrix apps access to their device contacts.

also it doesn-t work for anybody using a desktop client or web client. I'd like that the same name is shown, in all the clients I use.

@dwt
Copy link

dwt commented Jan 17, 2023

This would work at least for desktop Mac Clients, as they too have an address book. And true: this requires to give access to the address book to the Matrix Client. To me, that would be acceptable IF the client promises to never upload said address book to a server for peer discovery as so many other clients do to aid bootstrapping.

@alphapapa
Copy link

alphapapa commented Mar 1, 2023

This feature would be especially important for direct chat rooms that are bridged to, e.g. XMPP. In my case, I'm talking with an XMPP user through the matrix.org bridge, but his XMPP name is not the name I know him by, so I have to remember the mapping between his real name and his XMPP name.

Ideally I would be able to simply rename the room for my own use by posting an event to the room's account data, as Sesota mentioned. Being a client developer, I could do that for my own client, but I also use Element on my phone and sometimes in a browser, so I'd like there to be a standard way to do this across clients.

For future reference, this idea seems to be covered by: matrix-org/matrix-spec-proposals#3015

@frederiiiic
Copy link

I think a cross platform nickname mean that the server finally know the real names of his users...

@Mart-Bogdan
Copy link

Also please add ability to override user's avatar, like Telegram allows.

Any news about this issue? It was opened in 2016, and it's extremely needed fature. Must have, I would say.

@alphapapa
Copy link

@Mart-Bogdan See matrix-org/matrix-spec-proposals#3015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Client-Server Issues affecting the CS API feature Suggestion for a significant extension which needs considerable consideration
Projects
None yet
Development

No branches or pull requests