# SFU relay (Janus-class) โ€” hidden preview **Not in alpha.** Implementation branch: `feature/sfu-relay`. User-visible UI remains off until owner spec is merged. ## Layout | Path | Role | |------|------| | `examples/sfu/README.md` | This file | | `backend/public/api/sfu_health.php` | Health stub (`enabled: false`) | | `config.example.php` โ†’ `sfu` | BE feature gate | | `app/.../sfu/SfuRelayGate.java` | Compile-time preview gate | ## Next steps (when spec lands) 1. Signaling API + room lifecycle tied to cast session IDs / RBAC. 2. Janus or mediasoup on dedicated port (see INFRA โ€” **not** androidcast `:80` vhost). 3. Android: enable `TRANSPORT_WEBRTC` behind `SfuRelayGate` + dev setting only. 4. FE nginx: UDP/TCP ports + TLS for WebRTC (separate from hub/crashes). See [20260608_BE_SERVICES_and_infra.md](../../docs/20260608_BE_SERVICES_and_infra.md) ยง Planned SFU.