matrix-org / matrix-org/matrix-spec
Add a new state event to describe the room content
- Dominant language
- HTML
- Stars
- 330
- Forks
- 150
- Avg merge
- 2h 21m
- Merged PRs (30d)
- 3
Description
**Suggestion**
iOS Element application submission to the app store has been rejected since we do not filter out room with explicit contents from the room directory.
A small workaround has been implemented: https://github.com/vector-im/element-ios/pull/4093 and also on Element Android: https://github.com/vector-im/element-android/pull/2975.
But is is far from ideal. For instance, it also filters out the room #blenderunofficial:matrix.org, because its topic contains "No NSFW media".
A better solution would be to add a new state event to each room describing the content.
For instance:
```json
{
"type": "m.room.content",
"content": {
"content-rating": 18
}
}
```
This `content-rating` value should also be a new parameter for request https://matrix.org/docs/spec/client_server/r0.6.1#get-matrix-client-r0-publicrooms, for example `max_content_rating`, and be part of `PublicRoomsChunk` in the response to let the app do a better filtering of the result, and even explicitly advertise rooms with explicit content.
Contributor guide
Research direction
Start by reading the linked Matrix client-server specification section for get-public-rooms and compare the referenced Element iOS and Android pull requests. The issue is done only when the state event, content-rating parameter, and PublicRoomsChunk representation have an agreed specification design and corresponding spec updates.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100