matrix-org / matrix-spec

The Matrix protocol specification
Apache License 2.0
182 stars 94 forks source link

Room-level default Sender Display property #1392

Open wmwsagara opened 1 year ago

wmwsagara commented 1 year ago

Description:

Please note, this is Matrix specification extend proposal.

Currently Matrix client (eg. Element) displays the message sender by default. This too restrictive and in some cases unnecessary and ugly. You do not always need to know the sender, eg. when bots send messages to a room.

In LinkedIn or Facebook page, do not show which page admin/moderator or bot send the message. No one is interested to know that. What people interested to know is that there is a new message in the room/channel or page.

Therefore, I propose a room-level default Sender Display property (hypothetically named defaultSenderDisplay).

The defaultSenderDisplay by default is true. That is client display the message sender.

If room admin sets defaultSenderDisplay to false, client does not display the message sender for the room.

turt2live commented 1 year ago

Note that visual-only changes like this are unlikely to be successful because they do not account for actors who will try to figure out who sent a given message. Technical solutions which mimic Telegram's channels/announcements feature would be good I think.

wmwsagara commented 1 year ago

Yes, my proposal is visual only, just not to clutter with optional info. Some posters may not like to imply a personal responsibility prominently too. I did not intend to hide the sender. Users, may use options to see the source to see who sent it. That's fine with me.

Here is similar LinkedIn rendering what I propose: Screenshot from 2023-01-04 13-45-28

wmwsagara commented 1 year ago

@turt2live, could you drop here a screenshot of Telegram's channels/announcements feature?

turt2live commented 1 year ago

The privacy of the sender would be more important for us at the spec level. At the client level, many clients wouldn't implement a feature where it's possible to just view the source to see who sent it.

I don't have a screenshot of Telegram on hand, sorry.

wmwsagara commented 1 year ago

|The privacy of the sender would be more important for us at the spec level.

This is exactly our concern too. But the current implementation is otherwise, shows the photo of sender together with the name in the most prominent way :)

There are, at minimum, two types of rooms:

  1. Room require to display the individual sender (human or bot). Eg. Group chat rooms. That is, every direct message to the room should be displayed as from the individual sender. That is, Matrix server includes the individual sender in the message to the room (eg. m.room.message).

  2. Room require either not to display the sender or if prefer to display the sender, display only as the room name, not as the individual sender. Eg. World news room. That is, every direct message to the room should be displayed as from the room. Avatar is, room avatar. Name is, room name. That is, Matrix server includes the room address/room id as the sender in the message to the room (eg. m.room.message), thereby, effectively hiding the individual poster.

  3. Reply to a message requires to be displayed the individual commenter.

Role of the room admin may not be able to avoid unless create rooms of different types, which is too restrictive.

Therefore, room admin has to choose the room message poster as none, individual or room.

I like to see the opinions of others regarding this on how best we could achieve this.