Annotate

mod_limits_exception/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 4562:28c16c93d79a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4562
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 ---
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2 summary: Allow specified JIDs to bypass rate limits
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 ...
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 This module allows you to configure a list of JIDs that should be allowed to
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 bypass rate limit restrictions.
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 It is designed for Prosody 0.11.x. Prosody 0.12.x supports this feature
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9 natively.
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 ## Configuration
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 First, enable this module by adding `"limits_exception"` to your
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
14 `modules_enabled` list.
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
16 Next, configure a list of JIDs to exclude from rate limiting:
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18 ```
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19 unlimited_jids = { "user1@example.com", "user2@example.net" }
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
20 ```
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
22 ## Compatibility
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
23
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24 Made for Prosody 0.11.x only.
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
25
28c16c93d79a mod_limits_exception: New module to except some JIDs from rate limiting
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
26 Using this module with Prosody trunk/0.12 may cause unexpected behaviour.