Session 2: Matrix client with E2EE and room-scoped handler

Adapted from Pete: password login + device persistence, cryptohelper
with cross-signing bootstrap, sync loop with auto-join on invite, and
PostThreadedReply for command responses. Messages outside allowed_rooms
are dropped.
This commit is contained in:
prosolis
2026-05-24 20:16:09 -07:00
parent 5a706fedc4
commit 5c7d21e574
4 changed files with 385 additions and 1 deletions

View File

@@ -19,7 +19,7 @@ Rewriting Bellhop from a Python FastAPI web portal into a Go-based Matrix comman
- `go.mod` (mautrix + yaml)
- `internal/config/config.go` — YAML loader: matrix creds, `allowed_rooms`, `services.{radarr,sonarr,lidarr}`
- [ ] **Session 2 — Matrix client** (`internal/matrix/`)
- [x] **Session 2 — Matrix client** (`internal/matrix/`)
- Adapt Pete's `client.go`: login + device persistence + cryptohelper
- Sync loop, auto-join on invite
- Message handler scoped to `allowed_rooms` (not channel-name map like Pete)