Lint / Shell (shellcheck) (push) Successful in 2m0s
Lint / JS (eslint) (push) Successful in 2m1s
Lint / No secrets in webhook configs (push) Successful in 18s
Lint / Landing page is rendered (matrix (push) Successful in 18s
Lint / Python (ruff) (push) Successful in 25s
Lint / Secret scan (gitleaks) (push) Successful in 14s
Lint / Shell (shellcheck) (pull_request) Successful in 9s
Lint / JS (eslint) (pull_request) Successful in 9s
Lint / No secrets in webhook configs (pull_request) Successful in 7s
Lint / Python deps (pip-audit) (push) Successful in 1m7s
Lint / Landing page is rendered (matrix (pull_request) Successful in 4s
Lint / Python (ruff) (pull_request) Successful in 6s
Lint / Secret scan (gitleaks) (pull_request) Successful in 6s
Lint / Python deps (pip-audit) (pull_request) Successful in 30s
Production setup for the Discord voice bridge on LXC 151: config and appservice-registration templates (secrets rendered on the server), an idempotent install script (one Synapse restart on first install, creates the bot account so it can be invited), and a hardened systemd unit. voice-limit-guard: VOICE_LIMIT_EXEMPT_USERS lets the bridge's own bot listen in a call without taking a slot; relayed Discord speakers still count. Unit tests added (61 pass); verified live on the dev stack. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017PCb59uY3UKqDqt7B6hzd5
16 lines
493 B
Plaintext
16 lines
493 B
Plaintext
# Synapse appservice registration for the voice bridge. Rendered by install.sh to
|
|
# /etc/matrix-synapse/lotus-voice-registration.yaml with fresh random tokens.
|
|
# The bridge talks to Synapse only as a client (as_token + ?user_id=), so no URL.
|
|
id: lotus-voice
|
|
url: null
|
|
as_token: "@AS_TOKEN@"
|
|
hs_token: "@HS_TOKEN@"
|
|
sender_localpart: lotus-voice_as
|
|
namespaces:
|
|
users:
|
|
- exclusive: true
|
|
regex: "@lotus-voice_.*:matrix\\.lotusguild\\.org"
|
|
aliases: []
|
|
rooms: []
|
|
rate_limited: false
|