mx-puppet-discord/sample.config.yaml

204 lines
5.3 KiB
YAML

bridge:
# Port to host the bridge on
# Used for communication between the homeserver and the bridge
port: 8434
# The host connections to the bridge's webserver are allowed from
bindAddress: localhost
# Public domain of the homeserver
domain: matrix.org
# Reachable URL of the Matrix homeserver
homeserverUrl: https://matrix.org
# Optionally specify a different media URL used for the media store
#
# This is where Discord will download user profile pictures and media
# from
#mediaUrl: https://external-url.org
# Enables automatic double-puppeting when set. Automatic double-puppeting
# allows Discord accounts to control Matrix accounts. So sending a
# a message on Discord would send it on Matrix from your Matrix account
#
# loginSharedSecretMap is simply a map from homeserver URL
# to shared secret. Example:
#
# loginSharedSecretMap:
# matrix.org: "YOUR SHARED SECRET GOES HERE"
#
# See https://github.com/devture/matrix-synapse-shared-secret-auth for
# the necessary server module
#loginSharedSecretMap:
# Display name of the bridge bot
displayname: Discord Puppet Bridge
# Avatar URL of the bridge bot
#avatarUrl: mxc://example.com/abcdef12345
# Whether to create groups for each Discord Server
#
# Note that 'enable_group_creation' must be 'true' in Synapse's config
# for this to work
enableGroupSync: true
presence:
# Bridge Discord online/offline status
enabled: true
# How often to send status to the homeserver in milliseconds
interval: 500
provisioning:
# Regex of Matrix IDs allowed to use the puppet bridge
whitelist:
# Allow a specific user
#- "@user:server\\.com"
# Allow users on a specific homeserver
- "@.*:server\\.com"
# Allow anyone
#- ".*"
# Regex of Matrix IDs forbidden from using the puppet bridge
#blacklist:
# Disallow a specific user
#- "@user:server\\.com"
# Disallow users on a specific homeserver
#- "@.*:server\\.com"
relay:
# Regex of Matrix IDs who are allowed to use the bridge in relay mode.
# Relay mode is when a single Discord bot account relays messages of
# multiple Matrix users
#
# Same format as in provisioning
whitelist:
- "@.*:yourserver\\.com"
#blacklist:
#- "@user:yourserver\\.com"
selfService:
# Regex of Matrix IDs who are allowed to use bridge self-servicing (plumbed rooms)
#
# Same format as in provisioning
whitelist:
- "@.*:server\\.com"
#blacklist:
#- "@user:server\\.com"
# Map of homeserver URLs to their C-S API endpoint
#
# Useful for double-puppeting if .well-known is unavailable for some reason
#homeserverUrlMap:
#yourserver.com: http://localhost:1234
# Override the default name patterns for users, rooms and groups
#
# Variable names must be prefixed with a ':'
namePatterns:
# The default displayname for a bridged user
#
# Available variables:
#
# name: username of the user
# discriminator: hashtag of the user (ex. #1234)
user: :name
# A user's guild-specific displayname - if they've set a custom nick in
# a guild
#
# Available variables:
#
# name: username of the user
# discriminator: hashtag of the user (ex. #1234)
# displayname: the user's custom group-specific nick
# channel: the name of the channel
# guild: the name of the guild
userOverride: :displayname
# Room names for bridged Discord channels
#
# Available variables:
#
# name: name of the channel
# guild: name of the guild
# category: name of the category if existant
room: :name
# Group names for bridged Discord servers
#
# Available variables:
#
# name: name of the guide
group: :name
database:
# Use Postgres as a database backend. If set, will be used instead of SQLite3
#
# Connection string to connect to the Postgres instance
# with username "user", password "pass", host "localhost" and database name "dbname".
#
# Modify each value as necessary
#connString: "postgres://user:pass@localhost/dbname?sslmode=disable"
# Use SQLite3 as a database backend
#
# The name of the database file
filename: database.db
limits:
# Up to how many users should be auto-joined on room creation? -1 to disable
# auto-join functionality
#
# Defaults to 200
#maxAutojoinUsers: 200
# How long the delay between two auto-join users should be in milliseconds
#
# Defaults to 5000
#roomUserAutojoinDelay: 5000
logging:
# Log level of console output
#
# Allowed values starting with most verbose:
# silly, verbose, info, warn, error
console: info
# Date and time formatting
lineDateFormat: MMM-D HH:mm:ss.SSS
# Logging files
#
# Log files are rotated daily by default
files:
# Log file path
- file: "bridge.log"
# Log level for this file
#
# Allowed values starting with most verbose:
# silly, debug, verbose, info, warn, error
level: info
# Date and time formatting
datePattern: YYYY-MM-DD
# Maximum number of logs to keep.
#
# This can be a number of files or number of days.
# If using days, add 'd' as a suffix
maxFiles: 14d
# Maximum size of the file after which it will rotate.
# This can be a number of bytes, or units of kb, mb, and gb.
# If using units, add 'k', 'm', or 'g' as the suffix
maxSize: 50m