No description
synapse_invite_checker | ||
.gitignore | ||
pyproject.toml | ||
README.md |
Synapse Invite Checker Module
This is a Synapse module that checks incoming invites based on allowlist and blocklist rules. The module allows or blocks invites from certain homeservers depending on whether they appear in a dynamically fetched allowlist or blocklist JSON file.
Features
- allowlist and blocklist: Allows invites from homeservers in the allowlist, blocks invites from homeservers in the blocklist.
- Dynamic Fetching: The allowlist and blocklist are fetched dynamically from a provided URL, and cached.
- Fallback on Failure: If the JSON file cannot be fetched (e.g., network error), the module automatically allows all invites to prevent disruptions.
Configuration
Add this module to your Synapse's homeserver.yaml
under the modules
section. Here’s an example configuration:
modules:
- module: synapse_invite_checker.InviteChecker
config:
# URL to fetch the JSON file containing the allowlist and blocklist
blocklist_allowlist_url: "https://example.com/invite-checker-lists.json"
# Whether to use the allowlist to allow certain homeservers (default: true)
use_allowlist: true
# Whether to use the blocklist to block certain homeservers (default: true)
use_blocklist: true