Skip to content
Snippets Groups Projects
Unverified Commit 17cd48fe authored by Jason Robinson's avatar Jason Robinson Committed by GitHub
Browse files

Fix spam checker modules documentation example (#9580)

Mention that parse_config must exist and note the
check_media_file_for_spam method.
parent 2a99cc65
No related branches found
No related tags found
No related merge requests found
Clarify the spam checker modules documentation example to mention that `parse_config` is a required method.
...@@ -14,6 +14,7 @@ The Python class is instantiated with two objects: ...@@ -14,6 +14,7 @@ The Python class is instantiated with two objects:
* An instance of `synapse.module_api.ModuleApi`. * An instance of `synapse.module_api.ModuleApi`.
It then implements methods which return a boolean to alter behavior in Synapse. It then implements methods which return a boolean to alter behavior in Synapse.
All the methods must be defined.
There's a generic method for checking every event (`check_event_for_spam`), as There's a generic method for checking every event (`check_event_for_spam`), as
well as some specific methods: well as some specific methods:
...@@ -24,6 +25,7 @@ well as some specific methods: ...@@ -24,6 +25,7 @@ well as some specific methods:
* `user_may_publish_room` * `user_may_publish_room`
* `check_username_for_spam` * `check_username_for_spam`
* `check_registration_for_spam` * `check_registration_for_spam`
* `check_media_file_for_spam`
The details of each of these methods (as well as their inputs and outputs) The details of each of these methods (as well as their inputs and outputs)
are documented in the `synapse.events.spamcheck.SpamChecker` class. are documented in the `synapse.events.spamcheck.SpamChecker` class.
...@@ -31,6 +33,10 @@ are documented in the `synapse.events.spamcheck.SpamChecker` class. ...@@ -31,6 +33,10 @@ are documented in the `synapse.events.spamcheck.SpamChecker` class.
The `ModuleApi` class provides a way for the custom spam checker class to The `ModuleApi` class provides a way for the custom spam checker class to
call back into the homeserver internals. call back into the homeserver internals.
Additionally, a `parse_config` method is mandatory and receives the plugin config
dictionary. After parsing, It must return an object which will be
passed to `__init__` later.
### Example ### Example
```python ```python
...@@ -41,6 +47,10 @@ class ExampleSpamChecker: ...@@ -41,6 +47,10 @@ class ExampleSpamChecker:
self.config = config self.config = config
self.api = api self.api = api
@staticmethod
def parse_config(config):
return config
async def check_event_for_spam(self, foo): async def check_event_for_spam(self, foo):
return False # allow all events return False # allow all events
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment