Update roadmap: Phase 1 complete - PostgreSQL, TURN, URL previews, search, upload limit
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
42
README.md
42
README.md
@@ -4,13 +4,13 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
|
|||||||
|
|
||||||
**Repo**: https://code.lotusguild.org/LotusGuild/matrixBot
|
**Repo**: https://code.lotusguild.org/LotusGuild/matrixBot
|
||||||
|
|
||||||
## Status: Planning
|
## Status: Phase 1 Complete (Database + Voice/Video)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Priority Order (suggested)
|
## Priority Order (suggested)
|
||||||
1. PostgreSQL migration (SQLite will bottleneck everything else)
|
1. ~~PostgreSQL migration (SQLite will bottleneck everything else)~~
|
||||||
2. TURN server (makes voice/video actually reliable)
|
2. ~~TURN server (makes voice/video actually reliable)~~
|
||||||
3. Custom Element Web (chat.lotusguild.org with branding)
|
3. Custom Element Web (chat.lotusguild.org with branding)
|
||||||
4. Discord bridge (lets people transition gradually)
|
4. Discord bridge (lets people transition gradually)
|
||||||
5. Custom emoji packs (makes it feel like home)
|
5. Custom emoji packs (makes it feel like home)
|
||||||
@@ -21,12 +21,32 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Infrastructure
|
||||||
|
|
||||||
|
| Service | Host | IP | LXC | Notes |
|
||||||
|
|---------|------|-----|-----|-------|
|
||||||
|
| Synapse | storage-01 | 10.10.10.29 | 151 | Homeserver + coturn |
|
||||||
|
| PostgreSQL 17 | storage-01 | 10.10.10.44 | 109 | Synapse database backend |
|
||||||
|
| NPM | large1 | 10.10.10.27 | 139 | Reverse proxy for matrix.lotusguild.org |
|
||||||
|
|
||||||
|
**Key paths on Synapse LXC (10.10.10.29):**
|
||||||
|
- Synapse config: `/etc/matrix-synapse/homeserver.yaml`
|
||||||
|
- Synapse venv: `/opt/venvs/matrix-synapse/`
|
||||||
|
- coturn config: `/etc/turnserver.conf`
|
||||||
|
- SQLite backup: `/var/lib/matrix-synapse/homeserver.db`
|
||||||
|
|
||||||
|
**Port forwarding (router -> 10.10.10.29):**
|
||||||
|
- TCP+UDP 3478 (TURN signaling)
|
||||||
|
- UDP 49152-65535 (media relay)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Server - Quality of Life
|
## Server - Quality of Life
|
||||||
- [ ] Migrate from SQLite to PostgreSQL (critical for performance at any real scale)
|
- [x] Migrate from SQLite to PostgreSQL (critical for performance at any real scale)
|
||||||
- [ ] Enable URL previews in Synapse (preview_url in homeserver.yaml)
|
- [x] Set up TURN/STUN server (coturn) for reliable voice/video calls behind NAT
|
||||||
- [ ] Increase upload size limit for media/GIFs (default is 50MB, may want higher)
|
- [x] Enable URL previews in Synapse
|
||||||
- [ ] Enable message search (full-text search requires Synapse config + postgres)
|
- [x] Increase upload size limit for media/GIFs (200MB)
|
||||||
- [ ] Set up TURN/STUN server (coturn) for reliable voice/video calls behind NAT
|
- [x] Enable message search (full-text search with PostgreSQL backend)
|
||||||
- [ ] Enable push notifications gateway for mobile clients
|
- [ ] Enable push notifications gateway for mobile clients
|
||||||
- [ ] Configure media retention policy (auto-cleanup old remote media)
|
- [ ] Configure media retention policy (auto-cleanup old remote media)
|
||||||
- [ ] Set up sliding sync proxy (faster room loading in Element)
|
- [ ] Set up sliding sync proxy (faster room loading in Element)
|
||||||
@@ -139,7 +159,7 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
|
|||||||
- [ ] Systemd service (`matrixbot.service`)
|
- [ ] Systemd service (`matrixbot.service`)
|
||||||
- [ ] Auto-deploy from Gitea webhook (matching Discord bot pattern)
|
- [ ] Auto-deploy from Gitea webhook (matching Discord bot pattern)
|
||||||
- [ ] Deployment script (`/usr/local/bin/matrix_bot_deploy.sh`)
|
- [ ] Deployment script (`/usr/local/bin/matrix_bot_deploy.sh`)
|
||||||
- [ ] Determine host LXC (new container or colocate with Synapse on 10.10.10.205)
|
- [ ] Determine host LXC (new container or colocate with Synapse on 10.10.10.29)
|
||||||
|
|
||||||
## Bot - Not Porting (Discord-specific)
|
## Bot - Not Porting (Discord-specific)
|
||||||
- Reaction roles (no Matrix equivalent)
|
- Reaction roles (no Matrix equivalent)
|
||||||
@@ -151,7 +171,9 @@ Matrix bot and server improvements for the Lotus Guild homeserver (`matrix.lotus
|
|||||||
## Tech Stack
|
## Tech Stack
|
||||||
- **Language**: Python 3
|
- **Language**: Python 3
|
||||||
- **Library**: matrix-nio (with E2EE)
|
- **Library**: matrix-nio (with E2EE)
|
||||||
- **Homeserver**: matrix.lotusguild.org (Synapse on 10.10.10.205)
|
- **Homeserver**: matrix.lotusguild.org (Synapse on 10.10.10.29)
|
||||||
|
- **Database**: PostgreSQL 17 on 10.10.10.44
|
||||||
|
- **TURN**: coturn on 10.10.10.29 (colocated with Synapse)
|
||||||
- **Dependencies**: matrix-nio[e2ee], aiohttp, python-dotenv, mcrcon
|
- **Dependencies**: matrix-nio[e2ee], aiohttp, python-dotenv, mcrcon
|
||||||
|
|
||||||
## Production Server
|
## Production Server
|
||||||
|
|||||||
Reference in New Issue
Block a user