39 lines
1.9 KiB
Markdown
39 lines
1.9 KiB
Markdown
# DM Honeypot
|
|
|
|
The latest and greatest in Continuwuity's moderation arsenal. This incredibly advanced bot uses an inconspicuous account
|
|
to sit and listen in on configured rooms, waving to passers-by who say hello. Should one of those passers-by get some
|
|
funny ideas and randomly start a DM after this brief interaction (perhaps even without an interaction!), the plugin
|
|
adds them to a policy list with a pre-configured reason.
|
|
|
|
## Setup
|
|
|
|
Bring your own account, set it up in [maubot](https://mau.bot).
|
|
|
|
Install this plugin, and adjust the [configuration](#configuration).
|
|
|
|
Invite the bot (using an admin account) to any room you want it to watch over.
|
|
|
|
Kick the bot from any room to stop watching it.
|
|
|
|
## Configuration
|
|
|
|
`admins`: this is a list of user IDs the bot will accept invites from, and will ignore messages from.
|
|
|
|
`policy_list_room_id`: the ID of the room to write policies to. Make sure the bot has enough power level to send
|
|
`m.policy.rule.user` in there.
|
|
|
|
`policy_list_reason`: the reason template to use when issuing a ban policy. There is one template variable available,
|
|
`{trigger_reason}`, which will be the reason the ban was triggered. Currently, this is just "unsolicited DM".
|
|
|
|
`conservative`: if set to true, the bot will be more conservative/stealthy. For example:
|
|
|
|
1. Ignore messages from users who have been joined for 3 days or more (enables account aging bypass,
|
|
less likely to trigger scrapers)
|
|
2. Ignore invites that do not have the DM flag set (enables regular room invite bypass)
|
|
3. Don't send read receipts for new events (less likely to trigger scrapers)
|
|
4. Don't randomly start typing (less likely to trigger scrapers)
|
|
|
|
Refer to the config file itself for a complete, up-to-date list of things "conservative" mode will do.
|
|
|
|
`explicit_rooms`: a list of room IDs to explicitly watch, instead of just watching every joined room. Does nothing if
|
|
the list is empty.
|