Files
bouncer/config/bouncer.example.toml
user 0d762ced49 feat: PING watchdog, IRCv3 server-time, push notifications
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>
2026-02-21 17:41:38 +01:00

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"]