Files
free-turn-proxy/docs/providers.md
T
samosvalishe 3211ed9ad5 feat(captcha)!: телеметрия виджета и одна Chrome-персона на установку
Персона строится детерминированно из FingerprintSeed (Client ID) и живёт
между перезапусками; при отказе captcha сжигается, и цепочка проходится
заново новой личностью с чистыми куками.

Телеметрия captcha (internal/captcha/telemetry.go) собирает аналитику
виджета: сэмплы сенсоров, connection-поля, курсор/тапы. Жест проживается
в реальном времени, иначе тайминги массивов не сходятся.

internal/personanet - TLS-клиент персоны (JA3 + split ClientHello), общий
для VK-auth и ручной captcha; порядок заголовков задаёт browserprofile.

BREAKING CHANGE: флаг -browser убран, семейство персоны всегда Chrome -
только Chromium даёт NetworkInformation и Generic Sensors, без которых
телеметрия captcha неполна. Класс устройства по-прежнему за -platform.
2026-07-28 16:40:32 +03:00

17 lines
1.2 KiB
Markdown

# Providers
Источник TURN-реквизитов выбирается флагом `-provider` (default `vk`). Реализации удовлетворяют интерфейс `internal/provider.Provider` и подключаются в `cmd/client/main.go` через `buildProvider`.
## Доступные провайдеры
### `vk` (default)
VK Calls API. Перебирает встроенные `app_id/app_secret`, получает короткоживущие (≈10 мин) TURN-creds через 4-шаговый token chain. Solver captcha auto+manual.
**Обязательные флаги:**
- `-link` - VK callroom URL вида `https://vk.ru/call/join/<code>` (нормализуется до join-кода).
**Опциональные:**
- `-streams-per-cred` (default 10) - сколько TURN-стримов делят один кеш креденшалов.
- `-manual-captcha` - пропустить auto-solver, сразу открыть браузер.
- `-platform` (default `desktop`) - класс устройства персоны auth (UA + TLS JA3 + client hints + device; семейство всегда Chrome): `desktop` \| `mobile`.