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 whitelist and blacklist rules. The module allows or blocks invites from certain homeservers depending on whether they appear in a dynamically fetched whitelist or blacklist JSON file.
Features
- Whitelist and Blacklist: Allows invites from homeservers in the whitelist, blocks invites from homeservers in the blacklist.
- Dynamic Fetching: The whitelist and blacklist are fetched dynamically from a provided URL, and cached for 10 minutes.
- 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 whitelist and blacklist
blacklist_whitelist_url: "https://example.com/invite-checker-lists.json"
# Whether to use the whitelist to allow certain homeservers (default: true)
use_whitelist: true
# Whether to use the blacklist to block certain homeservers (default: true)
use_blacklist: true