matrix-doc/proposals/3786-acl-notifs.md

51 lines
1.7 KiB
Markdown

# MSC3786: Add a default push rule to ignore `m.room.server_acl` events
`m.room.server_acl` events allow for expressing which servers can participate in
a room. Room server ACLs aren't something the user should have to worry about,
so these events should not trigger notifications; however right now they *do*
trigger notifications, if the user has the room rule set to `notify` (`All
messages` in Element).
Additionally, these events are often sent quite frequently during spam attacks,
which causes the users to be overwhelmed by
notifications. (See <https://github.com/vector-im/element-web/issues/20788>.)
Due to these problems, this MSC proposes a new push rule to ignore these events.
The new push rule is analogous to `.m.rule.member_event` (see <https://spec.matrix.org/v1.2/client-server-api/#default-override-rules>), or `.m.rule.reaction`
(from [MSC2153](https://github.com/matrix-org/matrix-spec-proposals/pull/2153)
or [MSC2677](https://github.com/matrix-org/matrix-spec-proposals/pull/2677)).
## Proposal
A new [default override
rule](https://spec.matrix.org/v1.2/client-server-api/#default-override-rules) is
to be added that ignores `m.room.server_acl` events:
```json
{
"rule_id": ".m.rule.room.server_acl",
"default": true,
"enabled": true,
"conditions": [
{
"kind": "event_match",
"key": "type",
"pattern": "m.room.server_acl"
},
{
"kind": "event_match",
"key": "state_key",
"pattern": ""
}
],
"actions": []
}
```
This new push rule is inserted immediately after `.m.rule.tombstone`.
## Unstable prefix
During development, `.org.matrix.msc3786.rule.room.server_acl` is to be used
instead of `.m.rule.room.server_acl`.