RTC translator¶
Статус: в бою
RTC translator используется в текущем WebRTC-контуре VideoGrace 3.0. Это рабочий edge path для браузеров/PWA с fallback в WSM при сетевых отказах.
RTC translator — сервис WebRTC edge для браузерных клиентов. Он принимает WebRTC-соединения от web/PWA, связывает их с серверным RTP-путем и возвращает входящие RTP-потоки обратно в WebRTC для браузера.
Задачи¶
- Принимать browser media через WebRTC.
- Публиковать клиентский звук, камеру и демонстрацию экрана в серверный RTP-контур.
- Подписывать браузер на удаленные RTP-потоки.
- Отдавать heartbeat и per-peer telemetry через CAN.
- Позволять добавлять и отключать RTC-ноды без перезапуска основного сервера.
Почему это отдельная роль¶
WebRTC edge лучше масштабировать отдельно от основного сервера. RTC-нода работает с сетевым и медийным контуром, а core server продолжает заниматься пользователями, конференциями, историей, правами, API и маршрутизацией задач.
Такой подход дает практический failover: если одна RTC-нода пропала, клиенты могут переключиться на другую ноду или временно уйти в WSM fallback. Подключение новой RTC-ноды быстро возвращает клиентов на оптимальный WebRTC path.
Что важно для эксплуатации¶
- advertise address должен быть достижим клиентами;
- UDP-порты RTC-ноды должны быть открыты;
- heartbeat должен содержать active endpoints и RTP counters;
- ошибки RTP send/drop/invalid RTP должны попадать в мониторинг;
- WSM fallback должен оставаться резервным путем, а не основным режимом.