gist/irc/matterbridge/matterbridge-example.toml

197 lines
5.5 KiB
TOML

[general]
# @ makes MXIDs look better, Telegram needs it separately,
# probably just confuses networks without RELAYMSG and at least Kiwi pings
# on @nick. Labels can be shorter than protocol names (more descriptive in
# case of IRC and are ircCamelCase for benefit of IRC bots)
RemoteNickFormat="@{NOPINGNICK}/{LABEL}: "
IgnoreFailureOnStart=true
MessageSplit=true
MediaDownloadPath="/var/www/html/matterbridge"
MediaServerDownload="https://etro.mikaela.info/matterbridge"
MediaDownloadSize=20000000
MediaDownloadBlacklist=[".html$",".htm$"]
replacemessages=[ ["@room","@rööm"], ["@online","@önline"] ]
EditSuffix=" ✏️"
MessageClipped="…"
UseLocalAvatar=["irc"]
# This refers to https://ergo.chat/about
[irc.localergo]
Nick="T4"
# Normal client would specify @freeformClientID, but with matterbridge that
# could result to flood from integrated bouncer
NickServNick="T4"
NickServPassword=""
Server="localhost:6667"
UseTLS=false
UseSASL=true
Label="ircEtro"
Charset="utf8"
# sends join/quit/part from the integrated bouncer
IgnoreNicks="HistServ"
RunCommands=["OPER T4 MI-ne-DIRAS-do-AL-vin", "MODE T4 -iw+BET"]
# Requires the bot to be chanop, spoofs sender
UseRelayMsg=true
RemoteNickFormat="{NICK}/{LABEL}"
[irc.freenode]
Nick="T4"
NickServNick="T4"
NickServPassword=""
Server="chat.ipv6.freenode.net:6697"
UseTLS=true
UseSASL=true
SkipTLSVerify=false
Label="ircFn"
Charset="utf8"
RunCommands=["MODE T4 -iw+gQR"]
[irc.liberachat]
Nick="T4"
NickServNick="T4"
NickServPassword=""
Server="irc.libera.chat:6697"
UseTLS=true
UseSASL=true
SkipTLSVerify=false
Label="ircLc"
Charset="utf8"
RunCommands=["MODE T4 -iw+gQR"]
[matrix.matrixexample]
Server="https://matrix.example.org"
MxID="@yournick.matterbridge:example.org"
# Above the clear cache & reload button. DON'T LOG OUT or it will be invalid.
# If leaked, login and remove the session from "Infosec & Privacy"
Token="MEOW-MEOW_CHOCO-CHOW"
# Otherwise collision risk with UseUserName=true
NoHomeServerSuffix=false
# The Matrix logo "[m]" easens hitting up Discord maximum length so it's
# better to only have a single char label with the full MXID
Label="m"
# Use Matrix ID instead of display name to avoid messages getting lost due
# to Ergo and Matterbridge disagreeing on invalid characters (e.g. LGBT* flag)
# https://github.com/ergochat/ergo/issues/1441
UseUserName=true
# Send everything as is, don't "cleverly" convert into HTML/Markdown which
# would break #channels (-> markdown h1 tag), mathematical equatons etc.
# The IRC equivalent would be `StripMarkdown`, but I consider it as
# more harmful than good
HTMLDisable=true
[mattermost.mattermostexample]
Server="mattermost.example.org:443"
Team="awesometeam"
Token="abcdef123456"
PrefixMessagesWithNick=true
Label="Mm"
# mattermost.example.org is presumably behind a remote proxy that
# suppresses non standards headers and thus breaks usual version check?
# https://github.com/42wim/matterbridge/wiki/Settings#skipversioncheck
SkipVersionCheck=true
[discord.discordexample]
Token="nope"
Server="123456789"
# When these are True, pinging from other platforms breaks
UseUsername=false
UseDiscriminator=false
Label="D"
# Discord has webhooks so trailing space isn't required. Looks same as Ergo except has avatar
RemoteNickFormat="{NICK}/{LABEL}"
# Allow mentioning users and roles, not everyone etc.
AllowMention=["user","role"]
[telegram.telegrambot]
Token="nopenopenope"
Label="T"
QuoteLengthLimit=60
MediaConvertWebPToPNG=false
# Convert .tgs.webp (animated stickers) to webp
#MediaConvertTgs="webp"
# https://github.com/telegramdesktop/tdesktop/issues/6959 + Matrix homeservers become clickable links polluting links
RemoteNickFormat="<code>@{NICK}/{LABEL}</code>: "
MessageFormat="HTMLNick"
DisableWebPagePreview=true
[xmpp.example]
Server="example.net:5222"
Jid="matterbridge@example.net"
Password="nonono"
Muc="conference.example.net"
Nick="M"
Label="xmpp"
[[gateway]]
name="redactedchanone"
enable=false
[[gateway.inout]]
account="irc.freenode"
channel="#redactedchanone"
[[gateway.inout]]
account="irc.liberachat"
channel="#redactedchanone"
[[gateway]]
name="secretchan"
enable=true
[[gateway.inout]]
account="irc.freenode"
channel="##secretchan+"
[[gateway.inout]]
account="irc.liberachat"
channel="##secretchan+"
[[gateway.inout]]
account="irc.localergo"
channel="#secretchan+"
[[gateway]]
name="test"
enable="true"
[[gateway.inout]]
account="irc.localergo"
channel="#test"
[[gateway.inout]]
account="irc.liberachat"
channel="#test"
[[gateway.inout]]
account="irc.freenode"
channel="#test"
[[gateway.inout]]
account="discord.discordexample"
# Get it by enabling developer mode from Discord settings and
# right-clicking the channel name
channel="ID:121212123124618"
[gateway.inout.options]
WebhookURL="https://discordapp.com/api/webhooks/..."
[[gateway.inout]]
account="telegram.telegrambot"
# Get it by adding the bot to a group runtime and /chatId
channel="-1001199999999"
[[gateway.inout]]
account="mattermost.mattermostexample"
channel="test"
[[gateway.inout]]
account="matrix.matrixexample"
# Invite the bot account to a room and it will accept invite on start,
# alternatively use a room alias (but the server it refers to will need
# to be online). If using internal ID, remember to update it when
# performing /upgraderoom
channel="!roomInternalIDFromAdvancedRoomSettings:example.org"
[[gateway.inout]]
account="xmpp.example"
channel="test"