# MSC3864: User-given nicknames & descriptions for rooms & users
# MSC3864: User-given nicknames & descriptions for rooms
User-given Nicknames or names loaded from an addressbook are great,
> This MSC is similar to [MSC3865](https://github.com/matrix-org/matrix-spec-proposals/pull/3865),
they allow you to personalize your experience in using an IM
> which specifies user-given attributes for rooms.
while others do not need to change anything.
> They were split because it makes more sense for now to store user attributes in another way
Like when you write with privacy-concerned users,
> and because it shall be possible to set a user-given name for any MXID restricted to a single room.
they might use a nickname for their account on their own,
> However, they may share the same ideas and reasonings.
but you may want to have them listed by their real name
or any other funny nickname you've given them.
Sometimes, the *global* room name works fine,
Or people are using their display name to present statements like "(away until X)"
and you want to set an end to that (for yourself).
The same for groups, sometimes, the *global* room name works fine,
but it would be funnier or easier for you to use another one.
but it would be funnier or easier for you to use another one.
Maybe because you've grouped similar rooms together into a (personal) space,
Maybe because you've grouped similar rooms together into a (personal) space,
so parts of the name become irrelevant.
so parts of the name become irrelevant.
@ -18,29 +14,26 @@ Like in a space called "My Long Cooperation Name",
where every room is called like "My Long Cooperation Name - IT Team Chat",
where every room is called like "My Long Cooperation Name - IT Team Chat",
maybe shorter names like "IT Team" or "MLCN - IT Team" are better suited to you.
maybe shorter names like "IT Team" or "MLCN - IT Team" are better suited to you.
Or maybe because the admin is just too lazy or stubborn to improve the room name.
Or maybe because the admin is just too lazy or stubborn to improve the room name.
Or because you prefer them in another language to make your daily life easier.
Also, sometimes you just may want to append a description to a room,
so you know why you joined the room of have fast access to more information.
Especially when rooms change their descriptions,
but you still want to retain some links you connect to this group,
or these links do only apply for you.
Also, sometimes you just may want to append a description to a room or user,
The same reasons apply to the room's avatar.
so you know why you joined the room or are knowning the user.
If you have a better one, you shall be able to select that one for yourself.
Descriptions like "old class mate from XYZ School" can certainly improve your UX,
especially when users or rooms change their names due to personal reasons ("new name is cooler, duh")
and you stop recognizing who they are and need to ask them for their real life name
or read through the chat history (happened multiple times to me personally).
## Definitions
## Definitions
Further on, for the sake of simplicity and clarity:
Further on, for the sake of simplicity and clarity:
- **global name** is the display name
- the prefix **global** refers to the attribute which are set for a room,
- a user set for itself, visible globally to all other Matrix users.
visible globally to all Matrix users.
- a room was given, visible globally to all other users who can see the room.
- the prefix **user-given** refers to the overrided/extended attribute a user defines for a room,
- **user-given name** refers to the name defined here a user shall be able to set,
only visible to the former user.
only visible for itself, for other users or rooms,
These are newly defined by this MSC.
replacing the global name.
- **global description** is the display description
a room was given, visible globally to all other users who can see the room.
- **user-given description** refers to the description defined here a user shall be able to set,
only visible for itself, for rooms,
extending the global description.
## Proposal
## Proposal
@ -48,85 +41,91 @@ Further on, for the sake of simplicity and clarity:
### Reasoning
### Reasoning
Allowing users to set user-given names and descriptions for rooms and other users is useful
Allowing users to set user-given attributes for rooms is useful
because it let users increase their usability and accessibility to the Matrix infrastructure on their own and as required.
because it let users increase their usability and accessibility to the Matrix infrastructure on their own and as required.
These names shall stay private to the user itself and may not be seen to others,
These attributes shall stay private to the user itself and may not be seen to others,
so users are able to choose what they see fit best
so users are able to choose what they see fit best
without thinking about privacy issues or the feelings of the room or users renamed.
without thinking about privacy issues or the feelings of the users in the rooms affected.
Adding this feature to the spec has the advantage that presumable most clients will implement support for displaying and hopefully also setting names and descriptions.
Adding this feature to the spec has the advantage
that presumable most clients will implement support for displaying
and hopefully also setting these user-given attributes.
It also allows a more unified experience accross all clients and devices
It also allows a more unified experience accross all clients and devices
because user-given names and descriptions are synced using the home server of the user.
because user-given attributes are synced using the home server of the user.
For the same reason, this proposal includes a description of the expected user experience.
For the same reason, this proposal includes a description of the expected user experience.
This proposal takes advantage of the already implemented
This proposal takes advantage of the already implemented