PING watchdog sends PING after configurable silence interval and disconnects on timeout, detecting stale connections that TCP alone misses. IRCv3 server-time capability is requested on every connection; timestamps are injected on dispatch and backlog replay for clients that support message tags. Push notifications via ntfy or generic webhook fire on highlights and PMs when no clients are attached, with configurable cooldown and optional SOCKS5 routing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
49 lines
1.5 KiB
TOML
49 lines
1.5 KiB
TOML
[bouncer]
|
|
bind = "127.0.0.1"
|
|
port = 6667
|
|
password = "changeme"
|
|
|
|
# PING watchdog -- detect stale server connections
|
|
# ping_interval = 120 # seconds of silence before sending PING
|
|
# ping_timeout = 30 # seconds to wait for PONG after PING
|
|
|
|
# Push notifications -- alerts when no clients are attached
|
|
# notify_url = "" # ntfy or webhook URL (empty = disabled)
|
|
# notify_on_highlight = true
|
|
# notify_on_privmsg = true
|
|
# notify_cooldown = 60 # min seconds between notifications
|
|
# notify_proxy = false # route notifications through SOCKS5
|
|
|
|
[bouncer.backlog]
|
|
max_messages = 10000
|
|
replay_on_connect = true
|
|
|
|
[proxy]
|
|
host = "127.0.0.1"
|
|
port = 1080
|
|
|
|
# Client PASS is just the password (no network prefix).
|
|
# A single client connection sees all networks via /network suffixes:
|
|
# #libera/libera, #debian/oftc, user123/libera
|
|
#
|
|
# Registration uses a random nick and generic ident/realname.
|
|
# After surviving the probation window (no k-line), the bouncer
|
|
# derives a stable nick from the exit endpoint hostname. The same
|
|
# exit IP always produces the same nick across reconnects.
|
|
# Set nick to override (optional, used as fallback only).
|
|
# Network names must not contain '/' (reserved for namespace separator).
|
|
|
|
[networks.libera]
|
|
host = "irc.libera.chat"
|
|
port = 6697
|
|
tls = true
|
|
# nick = "mynick" # optional: override host-derived nick
|
|
channels = ["#test"]
|
|
autojoin = true
|
|
|
|
# [networks.oftc]
|
|
# host = "irc.oftc.net"
|
|
# port = 6697
|
|
# tls = true
|
|
# channels = ["#debian"]
|