Files
chatballs/apps/backend/hub_backend
AndreyandClaude Opus 4.8 e8183777df feat(calls): Coturn TURN fallback — проход C этапа E09
- turn.py: краткоживущие TURN REST-credentials (coturn use-auth-secret),
  username "<expiry>:hub", credential base64(HMAC-SHA1(secret, username))
- ice_servers_payload: direct-first STUN + TURN fallback, генерация на
  каждый запрос токена; без секрета TURN-URL не отдаются
- settings + env: HUB_CALL_TURN_URLS/SECRET/TTL_SECONDS
- compose.production: сервис coturn (host net, realm/secret/relay-range/
  external-ip, hardening, healthcheck turnutils_stunclient)
- tests: формат credentials, HMAC, порядок direct-first, отказ без секрета

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-12 04:23:11 +03:00
..
2026-06-17 18:14:16 +03:00
2026-07-12 01:17:17 +03:00
2026-06-17 18:14:16 +03:00