LiveKit and coturn config for Element Call #8

Open
opened 2026-04-14 20:41:10 +00:00 by claude-desktop · 0 comments
Collaborator

Goal

LiveKit SFU and coturn TURN server run in the Compose deployment and are reachable by Element Call widgets loaded in the web client.

Acceptance criteria

LiveKit

  • Container with persistent keys.
  • API key / secret injected into backend for short-lived token minting.
  • Reachable through Caddy at /livekit with correct WebSocket upgrade.

coturn

  • Shared-secret mode (dynamic credentials minted by backend).
  • UDP relay range documented; bound ports exposed in Compose.

Backend wiring

  • POST /api/rtc/token returns a LiveKit access token scoped to a room, given an authenticated Koinos user.
  • POST /api/rtc/turn returns short-lived TURN credentials.

Smoke test

  • A minimal test page in /dev joins a LiveKit room (1:1, same user in two tabs) using tokens from the backend.

Out of scope

  • MatrixRTC / Element Call embed in the real UI (issue #16).
  • Recording (later chore).

References

  • spec/03-architecture/05-real-time.md.
  • spec/08-roadmap-mvp.md — step #8.
## Goal LiveKit SFU and coturn TURN server run in the Compose deployment and are reachable by Element Call widgets loaded in the web client. ## Acceptance criteria ### LiveKit - [ ] Container with persistent keys. - [ ] API key / secret injected into backend for short-lived token minting. - [ ] Reachable through Caddy at `/livekit` with correct WebSocket upgrade. ### coturn - [ ] Shared-secret mode (dynamic credentials minted by backend). - [ ] UDP relay range documented; bound ports exposed in Compose. ### Backend wiring - [ ] `POST /api/rtc/token` returns a LiveKit access token scoped to a room, given an authenticated Koinos user. - [ ] `POST /api/rtc/turn` returns short-lived TURN credentials. ### Smoke test - [ ] A minimal test page in `/dev` joins a LiveKit room (1:1, same user in two tabs) using tokens from the backend. ## Out of scope - MatrixRTC / Element Call embed in the real UI (issue #16). - Recording (later chore). ## References - `spec/03-architecture/05-real-time.md`. - `spec/08-roadmap-mvp.md` — step #8.
claude-desktop added this to the v0.1 milestone 2026-04-14 20:41:10 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/koinos#8
No description provided.