176 lines
7.8 KiB
YAML
176 lines
7.8 KiB
YAML
# the room-id of the matrix room or space to use as your "full user list"
|
|
# changes to user power levelsin this room will affect all rooms in the space
|
|
# some features may not work if this is a regular room. use a space.
|
|
# leave this empty to use the initialize command to create a new community to manage,
|
|
# based on opinionated defaults.
|
|
parent_room: ''
|
|
|
|
# community slug
|
|
# this will be used to suffix room aliases in order to avoid collisions with other communities
|
|
# leave blank to generate an acronym of your community name during initialization
|
|
community_slug: ''
|
|
|
|
# sleep time between actions. you can drop this to 0 if your bot has no
|
|
# ratelimits imposed on its homeserver, otherwise you may want to increase this
|
|
# to avoid errors.
|
|
sleep: 5
|
|
|
|
# whether to encrypt rooms when using the room creation commands
|
|
# when this is false, you can still use the --encrypt flag to force encryption
|
|
# when creating new rooms
|
|
encrypt: False
|
|
|
|
# when creating a new room, what power-level should be required to invite users?
|
|
# this is helpful to prevent malicious accounts from inviting spam bots by restricting
|
|
# room defaults to moderators being the only people who can invite new users from outside
|
|
# of your managed community. otherwise, you must be a space member to join the rooms.
|
|
invite_power_level: 50
|
|
|
|
# number of days of inactivity to be considered in the "warning zone"
|
|
# users in this category will appear in the report as inactive
|
|
warn_threshold_days: 30
|
|
|
|
# number of days of inactivity to be considered in the "danger zone"
|
|
# users in this category will appear in the purgable report and are
|
|
# subject to removal by the purge command.
|
|
kick_threshold_days: 60
|
|
|
|
# track users? empty list disables all tracking, otherwise specify what to track:
|
|
# - "messages": track user activity from messages
|
|
# - "reactions": track user activity from reactions
|
|
# examples:
|
|
# track_users: [] # disable all tracking
|
|
# track_users: ["messages"] # track only messages
|
|
# track_users: ["reactions"] # track only reactions
|
|
# track_users: ["messages", "reactions"] # track both
|
|
track_users: ["messages", "reactions"]
|
|
|
|
# Note: Admin and moderator permissions are now managed through power levels
|
|
# in the parent room. Set user power levels directly in the parent space.
|
|
|
|
# list of users who should be invited to new rooms immediately (other bots, moderators, perhaps)
|
|
# use full matrix IDs here
|
|
invitees: []
|
|
|
|
# auto-greet users in rooms with these messages
|
|
# map greeting messages to a room
|
|
# you can use {user} to reference the joining user in this message using a
|
|
# matrix.to link (rendered as a "pill" in element clients)
|
|
# html formatting is supported
|
|
# set to {} if you don't care about greetings
|
|
greetings:
|
|
generic: |
|
|
Welcome {user}! Please be sure to read the topic for helpful links and information.
|
|
Use <a href="https://google.com">Google</a> for all other queries ;)
|
|
encrypted: |
|
|
welcome {user}, this is an encrypted room, so you may not be able to see messages previously sent here. don't be
|
|
alarmed.
|
|
|
|
# which of the above greetings should be used in which rooms? use the exact name of each greeting
|
|
# you've assigned, e.g. 'generic' or 'encrypted'. you must use the room ID here.
|
|
# enter 'none' to avoid sending a message, but still be notified in the notification_room listed below.
|
|
# set to {} if you don't care about greetings or join notifications
|
|
greeting_rooms:
|
|
'!someroomid:server.tld': generic
|
|
'!someotherroom:server.tld': generic
|
|
'!myencryptedroomid:server.tld': encrypted
|
|
|
|
# how long to wait (in seconds) before sending a greeting to a new joiner
|
|
welcome_sleep: 0
|
|
|
|
# add a room ID here to send a message to when someone joins the above rooms
|
|
# (optional)
|
|
notification_room:
|
|
|
|
# message to send to the notification room when someone joins one of the above rooms:
|
|
join_notification_message: |
|
|
User <code>{user}</code> has joined <code>{room}</code>.
|
|
|
|
# whether to censor files/messages
|
|
# can be boolean (true/false) for all-or-nothing behavior,
|
|
# or pass a list of room IDs to only censor certain rooms. this may be helpful
|
|
# if certain rooms are publicly facing while others are more trustworthy.
|
|
# this bot, bot admins and bot moderators are immune to censorship.
|
|
censor: false
|
|
|
|
# if censoring content, what minimum Power Level is required to not be censored?
|
|
# this allows easy permission of trusted users in a room to post images or files on demand.
|
|
# rooms usually default to 0 power level for normal users.
|
|
uncensor_pl: 1
|
|
|
|
# whether to redact file and image uploads. this will apply to all rooms defined
|
|
# in the censor variable (either boolean or a list of room IDs).
|
|
censor_files: true
|
|
|
|
# what words should trigger message redaction if censorship is enabled?
|
|
censor_wordlist:
|
|
- 'effword'
|
|
- 'essword'
|
|
|
|
# using one of these words results in redaction AND an instant ban. use with EXTREME caution. wordlist pattern matching can have
|
|
# unintended consequences! set to an empty list [] to avoid using.
|
|
censor_wordlist_instaban: []
|
|
|
|
# list of banlists that should be subscribed to, such as #community-moderation-effort-bl:neko.dev
|
|
# when users join any room managed by this bot, they are compared against these existing banlists
|
|
# if found, they will immediately be banned.
|
|
# your bot MUST be in the banlist room already!
|
|
banlists:
|
|
- '#community-moderation-effort-bl:neko.dev'
|
|
|
|
# should we ban proactively? this will ban users in your rooms if a new ban event is added to
|
|
# the banlist policy room for their account. however, without this enabled,
|
|
# an account may join your rooms, THEN get added to the banlist, and you will have to manually
|
|
# ban them from your rooms.
|
|
proactive_banning: true
|
|
|
|
# should we redact messages when a user is banned? limited to their last 100 messages in each room.
|
|
# redactions are processed every minute, they are not immediate.
|
|
redact_on_ban: true
|
|
|
|
# Crowd Moderation and Report Emojis
|
|
# If Users react with the following emojis to a (spam?) message, a message will be send to the notification channel containing a link to that message. Administrators have to decide manually how to deal with the message reported.
|
|
|
|
# Emojis that trigger a message report
|
|
report_emojis:
|
|
- "🚩"
|
|
- "⚠️"
|
|
|
|
# Automatically delete the message if more than 50% of the room members reported it. Redact notification will be sent to notification room.
|
|
auto_redact_majority: true
|
|
|
|
# should we verify that users are human before allowing them to send messages?
|
|
# can be boolean (true/false) for all-or-nothing behavior,
|
|
# or pass a list of room IDs to only verify users in certain rooms
|
|
# use this in conjunction with room power-levels that require elevated permission
|
|
# to send messages in a room. do not enable this for rooms that will have more than
|
|
# a few hundred users as this will be very expensive when it comes to state resolution!
|
|
check_if_human: false
|
|
|
|
# list of phrases that users must type to verify they are human
|
|
# if check_if_human is true but this list is empty, verification will be skipped
|
|
# make these your favorite movie quotes, core values of your community, or
|
|
# whatever you want. the more unique and obscure, the better.
|
|
verification_phrases:
|
|
- Yes, I am a human!
|
|
- I am a robot, but I'm nice.
|
|
- My name is Inigo Montoya.
|
|
- The wet bird flies at night.
|
|
- Be excellent to each other.
|
|
- Party on, dudes.
|
|
|
|
# number of attempts a user has to enter the correct verification phrase
|
|
verification_attempts: 3
|
|
|
|
# room version to use when creating new rooms
|
|
# this should be a string value (e.g., "10", "11", "12")
|
|
# for room versions 12+, creators have unlimited power and should not be given explicit power levels
|
|
room_version: "10"
|
|
|
|
# message to send to users when they need to verify they are human
|
|
# use {room} for the room name and {phrase} for the verification phrase
|
|
verification_message: |
|
|
Thank you for joining {room}. As an anti-spam measure, you must demonstrate that you are a real person before you can send messages in its rooms.
|
|
|
|
Please send a message to this chat with the content: "{phrase}"
|