From 97786da4ad9038a29c545315b10de4d305313aab Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Tue, 30 Apr 2019 15:13:28 -0600 Subject: [PATCH 1/2] Create 0000-leave-reasons.md --- proposals/0000-leave-reasons.md | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 proposals/0000-leave-reasons.md diff --git a/proposals/0000-leave-reasons.md b/proposals/0000-leave-reasons.md new file mode 100644 index 00000000..8e0710b8 --- /dev/null +++ b/proposals/0000-leave-reasons.md @@ -0,0 +1,39 @@ +# Proposal to add reasons for leaving a room + +This proposal intends to solve [#1295](https://github.com/matrix-org/matrix-doc/issues/1295). Currently +people can be kicked from a room for a human-readable reason, but when voluntarily leaving the `reason` +is not considered. + +## Proposal + +Like when kicking someone, `m.room.member` events with `membership: leave` can have a string `reason`. +The reason is a human-readable string of text which clients should display to users of the room, providing +users with the ability to leave a room for a reason of their choosing. The field is optional. + +Having such a field gives Matrix better compatibility with other networks such as IRC which use the leave +reason to communicate connection problems ("ping timeout", etc). Although Matrix doesn't have a need for a +persistent connection to remain in the room, having a reason can improve the bridge experience. + +An example of a partial leave event with reason would be: +```json +{ + "type": "m.room.member", + "sender": "@travis:t2l.io", + "state_key": "@travis:t2l.io", + "content": { + "membership": "leave", + "reason": "I'm in too many rooms and never talk here" + } +} +``` + + +## Potential issues + +There is a chance that quality of communication may deteriorate as a result of adding this field. Arguments +in rooms may result in the leave reason having personal attacks against other room members or rude remarks. +Moderators would be expected to handle these situations for these cases, including redacting the state event +if needed. + +This also opens up an avenue for spam by having a very large reason for leaving. Clients are encouraged to +trim/hide the reason at a reasonable length. From 62748a026d6688df514c7e0aad544648b8ce1a15 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Tue, 30 Apr 2019 15:14:54 -0600 Subject: [PATCH 2/2] Rename 0000-leave-reasons.md to 1983-leave-reasons.md --- proposals/{0000-leave-reasons.md => 1983-leave-reasons.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename proposals/{0000-leave-reasons.md => 1983-leave-reasons.md} (100%) diff --git a/proposals/0000-leave-reasons.md b/proposals/1983-leave-reasons.md similarity index 100% rename from proposals/0000-leave-reasons.md rename to proposals/1983-leave-reasons.md