59d807fca7
Discord client IDs are numeric (e.g. 12345). Passing them as integers however, causes the Discord bridge's YAML parser to parse them as integers and its config schema validation will fail. Fixes #240 (Github Issue)
168 lines
7.9 KiB
YAML
168 lines
7.9 KiB
YAML
# matrix-appservice-discord is a Matrix <-> Discord bridge
|
|
# See: https://github.com/Half-Shot/matrix-appservice-discord
|
|
|
|
matrix_appservice_discord_enabled: true
|
|
|
|
matrix_appservice_discord_docker_image: "halfshot/matrix-appservice-discord:latest"
|
|
matrix_appservice_discord_docker_image_force_pull: "{{ matrix_appservice_discord_docker_image.endswith(':latest') }}"
|
|
|
|
matrix_appservice_discord_base_path: "{{ matrix_base_data_path }}/appservice-discord"
|
|
matrix_appservice_discord_config_path: "{{ matrix_base_data_path }}/appservice-discord/config"
|
|
matrix_appservice_discord_data_path: "{{ matrix_base_data_path }}/appservice-discord/data"
|
|
|
|
# Get your own keys at https://discordapp.com/developers/applications/me/create
|
|
matrix_appservice_discord_client_id: ''
|
|
matrix_appservice_discord_bot_token: ''
|
|
|
|
matrix_appservice_discord_appservice_token: ''
|
|
matrix_appservice_discord_homeserver_token: ''
|
|
|
|
# Controls whether the matrix-appservice-discord container exposes its HTTP port (tcp/9005 in the container).
|
|
#
|
|
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:9005"), or empty string to not expose.
|
|
matrix_appservice_discord_container_http_host_bind_port: ''
|
|
|
|
# A list of extra arguments to pass to the container
|
|
matrix_appservice_discord_container_extra_arguments: []
|
|
|
|
# List of systemd services that matrix-appservice-discord.service depends on.
|
|
matrix_appservice_discord_systemd_required_services_list: ['docker.service']
|
|
|
|
# List of systemd services that matrix-appservice-discord.service wants
|
|
matrix_appservice_discord_systemd_wanted_services_list: []
|
|
|
|
matrix_appservice_discord_appservice_url: 'http://matrix-appservice-discord:9005'
|
|
|
|
matrix_appservice_discord_bridge_domain: "{{ matrix_domain }}"
|
|
# As of right now, the homeserver URL must be a public URL. See below.
|
|
matrix_appservice_discord_bridge_homeserverUrl: "{{ matrix_homeserver_url }}"
|
|
matrix_appservice_discord_bridge_disablePresence: false
|
|
|
|
matrix_appservice_discord_configuration_yaml: |
|
|
#jinja2: lstrip_blocks: "True"
|
|
bridge:
|
|
# Domain part of the bridge, e.g. matrix.org
|
|
domain: {{ matrix_appservice_discord_bridge_domain }}
|
|
# This should be your publically facing URL because Discord may use it to
|
|
# fetch media from the media store.
|
|
homeserverUrl: {{ matrix_appservice_discord_bridge_homeserverUrl }}
|
|
# Interval at which to process users in the 'presence queue'. If you have
|
|
# 5 users, one user will be processed every 500 milliseconds according to the
|
|
# value below. This has a minimum value of 250.
|
|
# WARNING: This has a high chance of spamming the homeserver with presence
|
|
# updates since it will send one each time somebody changes state or is online.
|
|
presenceInterval: 500
|
|
# Disable setting presence for 'ghost users' which means Discord users on Matrix
|
|
# will not be shown as away or online.
|
|
disablePresence: {{ matrix_appservice_discord_bridge_disablePresence|to_json }}
|
|
# Disable sending typing notifications when somebody on Discord types.
|
|
disableTypingNotifications: false
|
|
# Disable deleting messages on Discord if a message is redacted on Matrix.
|
|
disableDeletionForwarding: false
|
|
# Enable users to bridge rooms using !discord commands. See
|
|
# https://t2bot.io/discord for instructions.
|
|
enableSelfServiceBridging: false
|
|
# Disable sending of read receipts for Matrix events which have been
|
|
# successfully bridged to Discord.
|
|
disableReadReceipts: false
|
|
# Disable Join Leave echos from matrix
|
|
disableJoinLeaveNotifications: false
|
|
# Authentication configuration for the discord bot.
|
|
auth:
|
|
clientID: {{ matrix_appservice_discord_client_id|string|to_json }}
|
|
botToken: {{ matrix_appservice_discord_bot_token }}
|
|
logging:
|
|
# What level should the logger output to the console at.
|
|
console: "warn" #silly, verbose, info, http, warn, error, silent
|
|
lineDateFormat: "MMM-D HH:mm:ss.SSS" # This is in moment.js format
|
|
# files:
|
|
# - file: "debug.log"
|
|
# disable:
|
|
# - "PresenceHandler" # Will not capture presence logging
|
|
# - file: "warn.log" # Will capture warnings
|
|
# level: "warn"
|
|
# - file: "botlogs.log" # Will capture logs from DiscordBot
|
|
# level: "info"
|
|
# enable:
|
|
# - "DiscordBot"
|
|
database:
|
|
userStorePath: "/data/user-store.db"
|
|
roomStorePath: "/data/room-store.db"
|
|
# You may either use SQLite or Postgresql for the bridge database, which contains
|
|
# important mappings for events and user puppeting configurations.
|
|
# Use the filename option for SQLite, or connString for Postgresql.
|
|
# If you are migrating, see https://github.com/Half-Shot/matrix-appservice-discord/blob/master/docs/howto.md#migrate-to-postgres-from-sqlite
|
|
# WARNING: You will almost certainly be fine with sqlite unless your bridge
|
|
# is in heavy demand and you suffer from IO slowness.
|
|
filename: "/data/discord.db"
|
|
# connString: "postgresql://user:password@localhost/database_name"
|
|
room:
|
|
# Set the default visibility of alias rooms, defaults to "public".
|
|
# One of: "public", "private"
|
|
defaultVisibility: "public"
|
|
channel:
|
|
# Pattern of the name given to bridged rooms.
|
|
# Can use :guild for the guild name and :name for the channel name.
|
|
namePattern: "[Discord] :guild :name"
|
|
# Changes made to rooms when a channel is deleted.
|
|
deleteOptions:
|
|
# Prefix the room name with a string.
|
|
#namePrefix: "[Deleted]"
|
|
# Prefix the room topic with a string.
|
|
#topicPrefix: "This room has been deleted"
|
|
# Disable people from talking in the room by raising the event PL to 50
|
|
disableMessaging: false
|
|
# Remove the discord alias from the room.
|
|
unsetRoomAlias: true
|
|
# Remove the room from the directory.
|
|
unlistFromDirectory: true
|
|
# Set the room to be unavaliable for joining without an invite.
|
|
setInviteOnly: true
|
|
# Make all the discord users leave the room.
|
|
ghostsLeave: true
|
|
limits:
|
|
# Delay in milliseconds between discord users joining a room.
|
|
roomGhostJoinDelay: 6000
|
|
# Delay in milliseconds before sending messages to discord to avoid echos.
|
|
# (Copies of a sent message may arrive from discord before we've
|
|
# fininished handling it, causing us to echo it back to the room)
|
|
discordSendDelay: 750
|
|
ghosts:
|
|
# Pattern for the ghosts nick, available is :nick, :username, :tag and :id
|
|
nickPattern: ":nick"
|
|
# Pattern for the ghosts username, available is :username, :tag and :id
|
|
usernamePattern: ":username#:tag"
|
|
|
|
matrix_appservice_discord_configuration_extension_yaml: |
|
|
# Your custom YAML configuration goes here.
|
|
# This configuration extends the default starting configuration (`matrix_appservice_discord_configuration_yaml`).
|
|
#
|
|
# You can override individual variables from the default configuration, or introduce new ones.
|
|
#
|
|
# If you need something more special, you can take full control by
|
|
# completely redefining `matrix_appservice_discord_configuration_yaml`.
|
|
|
|
matrix_appservice_discord_configuration_extension: "{{ matrix_appservice_discord_configuration_extension_yaml|from_yaml if matrix_appservice_discord_configuration_extension_yaml|from_yaml is mapping else {} }}"
|
|
|
|
matrix_appservice_discord_configuration: "{{ matrix_appservice_discord_configuration_yaml|from_yaml|combine(matrix_appservice_discord_configuration_extension, recursive=True) }}"
|
|
|
|
matrix_appservice_discord_registration_yaml: |
|
|
#jinja2: lstrip_blocks: "True"
|
|
id: appservice-discord
|
|
as_token: "{{ matrix_appservice_discord_appservice_token }}"
|
|
hs_token: "{{ matrix_appservice_discord_homeserver_token }}"
|
|
namespaces:
|
|
users:
|
|
- exclusive: true
|
|
regex: '^@_discord_.*'
|
|
aliases:
|
|
- exclusive: true
|
|
regex: '^#_discord_.*'
|
|
url: {{ matrix_appservice_discord_appservice_url }}
|
|
sender_localpart: _discord_bot
|
|
rate_limited: false
|
|
protocols:
|
|
- discord
|
|
|
|
matrix_appservice_discord_registration: "{{ matrix_appservice_discord_registration_yaml|from_yaml }}"
|