Annotate

mod_muc_moderation/README.markdown @ 5173:460f78654864

mod_muc_rtbl: also filter messages This was a bit tricky because we don't want to run the JIDs through SHA256 on each message. Took a while to come up with this simple plan of just caching the SHA256 of the JIDs on the occupants. This will leave some dirt in the occupants after unloading the module, but that should be ok; once they cycle the room, the hashes will be gone. This is direly needed, otherwise, there is a tight race between the moderation activities and the actors joining the room.
author Jonas Schäfer <jonas@wielicki.name>
date Tue, 21 Feb 2023 21:37:27 +0100
parent 5127:be859bfdd44e
child 5484:bb083e9f78dd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3897
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 # Introduction
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 This module implements [XEP-0425: Message Moderation].
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 # Usage
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 Moderation is done via a supporting client and requires a `moderator`
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 role in the channel / group chat.
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 # Configuration
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 Example [MUC component][doc:chatrooms] configuration:
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 ``` {.lua}
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 VirtualHost "channels.example.com" "muc"
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 modules_enabled = {
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 "muc_mam",
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 "muc_moderation",
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 }
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 ```
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 # Compatibility
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23
5127
be859bfdd44e mod_muc_moderation/README: Simplify Compatibility section
Kim Alvefur <zash@zash.se>
parents: 4900
diff changeset
24 - Basic functionality with Prosody 0.11.x and later
be859bfdd44e mod_muc_moderation/README: Simplify Compatibility section
Kim Alvefur <zash@zash.se>
parents: 4900
diff changeset
25 - Full functionality with Prosody 0.12.x and `internal` or `sql`
be859bfdd44e mod_muc_moderation/README: Simplify Compatibility section
Kim Alvefur <zash@zash.se>
parents: 4900
diff changeset
26 storage^[Replacing moderated messages with tombstones requires new storage API methods.]
3897
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
28 ## Clients
3a96070f4a14 mod_muc_moderation: Initial commit of XEP-0425: Message Moderation
Kim Alvefur <zash@zash.se>
parents:
diff changeset
29
4900
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
30 - [Converse.js](https://conversejs.org/)
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
31 - [Gajim](https://dev.gajim.org/gajim/gajim/-/issues/10107)
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
32 - [clix](https://code.zash.se/clix/rev/6c1953fbe0fa)
4752
67848bf6b425 mod_muc_moderation: Add list of client feature requests for XEP-0425
Kim Alvefur <zash@zash.se>
parents: 3897
diff changeset
33
67848bf6b425 mod_muc_moderation: Add list of client feature requests for XEP-0425
Kim Alvefur <zash@zash.se>
parents: 3897
diff changeset
34 ### Feature requests
67848bf6b425 mod_muc_moderation: Add list of client feature requests for XEP-0425
Kim Alvefur <zash@zash.se>
parents: 3897
diff changeset
35
4900
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
36 - [Conv](https://github.com/iNPUTmice/Conversations/issues/3722)[ersa](https://github.com/iNPUTmice/Conversations/issues/3920)[tions](https://github.com/iNPUTmice/Conversations/issues/4227)
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
37 - [Dino](https://github.com/dino/dino/issues/1133)
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
38 - [Poezio](https://lab.louiz.org/poezio/poezio/-/issues/3543)
cc5ac0f0f32d mod_muc_moderation: Update Clients section (+ Gajim, clix)
Kim Alvefur <zash@zash.se>
parents: 4753
diff changeset
39 - [Profanity](https://github.com/profanity-im/profanity/issues/1336)