Files
defiQUG a2dc194a49 Monorepo: Gitea CI, docs, auth/sync, backend APIs, gitignore
- Add Gitea Actions workflow; point README to gitea.d-bis.org/Sankofa_Phoenix/SMOA
- Expand .gitignore for Spring H2 data, secrets, Kotlin .kotlin/, tooling
- Track docs/api/generated ReDoc bundle; refresh api docs README
- Android: network/auth/sync, UI shell, tests; backend credentials/integrity APIs
- Docs, scripts (generate-api-docs), modules and core updates

Made-with: Cursor
2026-03-23 20:19:24 -07:00
..

Communications module

WebRTC-based communications (voice, video, signaling) with infrastructure failover.

Configurable endpoints

InfrastructureManager manages STUN, TURN, and signaling URLs. The app configures them at startup from BuildConfig (when set):

  • STUN: smoa.stun.urls comma-separated (e.g. stun:stun.l.google.com:19302,stun:stun.example.com:3478). Passed as -Psmoa.stun.urls=... when building the app.
  • Signaling: smoa.signaling.urls comma-separated signaling server URLs for failover. Passed as -Psmoa.signaling.urls=....

TURN servers (with optional credentials) are set programmatically via InfrastructureManager.setTurnEndpoints(List<TurnServer>) where needed.

See SMOAApplication.configureInfrastructure() and app/build.gradle.kts (BuildConfig fields SMOA_STUN_URLS, SMOA_SIGNALING_URLS).