Как работает видеочат с незнакомцами: WebRTC, модерация и безопасность
Случайный видеочат выглядит просто: нажали кнопку и на экране появился человек из другого города или страны. За этой кнопкой стоит несколько технологий, о которых полезно знать. Разработчику это поможет понять, как сделать подобный сервис, а обычному пользователю покажет, куда идет его видео и кто его видит.
Как соединяются два человека
Большинство современных видеочатов работает на WebRTC. Это открытый стандарт, встроенный в Chrome, Firefox, Safari и Edge, поэтому устанавливать ничего не нужно. Видео и звук передаются напрямую между двумя браузерами, а сервер только помогает им найти друг друга.
Сначала сервер сигнализации, чаще всего на WebSocket, передает между участниками техническое описание сессии (SDP): какие кодеки поддерживает браузер, какое разрешение камеры. Затем браузеры через STUN-сервер узнают свой внешний IP-адрес и пробуют соединиться напрямую. Если мешает NAT мобильному оператору или корпоративному файерволу, трафик идет через TURN-сервер, который просто пересылает пакеты. Для пользователя все это занимает секунду-две.
Медиатрафик в WebRTC всегда шифруется протоколом DTLS-SRTP. Это обязательное требование стандарта, отключить шифрование разработчик не может даже при желании.
Что происходит при нажатии «Далее»
Сервис держит очередь людей, ищущих собеседника. Простейшая логика соединяет первого свободного. Лучшие сервисы учитывают язык, страну, интересы или пол, поэтому поиск иногда длится немного дольше, зато разговор чаще получается интересным для обоих.
Модерация
Главная проблема видеочатов со времен первой Chatroulette всегда была в контенте. Люди-модераторы физически не успевают просматривать тысячи одновременных разговоров, поэтому сейчас используют компьютерное зрение. Нейросеть анализирует кадры и блокирует нарушителя еще до того, как на него пожалуются. Нормальный видеочат объединяет автоматическую проверку, жалобы пользователей и живых модераторов для спорных случаев.
Регистрация: нужна или нет
Сервисы без регистрации более популярны, потому что порог входа нулевой. Открыли страницу, разрешили доступ к камере и уже общаетесь. Для конфиденциальности это тоже плюс: платформа не хранит ваш email или номер телефона. Минус в том, что заблокированному нарушителю легче вернуться, поэтому такие сайты полагаются сильнее на автоматическую модерацию.
К примеру, видеочат рулетка запускается прямо в браузере на телефоне или компьютере, и при этом, зачастую, аккаунт не нужен.
Как общаться безопасно
Шифрование защищает разговор от посторонних, но от самого собеседника оно не защищает. Экран можно записать, поэтому несколько простых правил не помешают:
- не называйте фамилию, адрес, место работы или учебы;
- уберите из кадра документы, конверты с адресом, вид из окна, по которому можно узнать дом;
- не переходите по ссылкам от незнакомцев и не устанавливайте программы по их просьбе;
- если человек с первой минуты настаивает перейти в мессенджер, это повод насторожиться;
- жалуйтесь на нарушителей, потому что именно жалобы помогают обучать модерацию.
И отдельно: видеочаты со случайными людьми рассчитаны на взрослых. Если в семье есть дети, следует объяснить им, почему такие сайты не для них.
Если хотите сделать свой
Стартовый набор для разработчика невелик: WebRTC API в браузере, сервер сигнализации на Node.js с WebSocket, публичный STUN-сервер и собственный TURN, например на coturn. Прототип на двух человек можно собрать за вечер. Сложности начинаются с масштабом: больше всего денег в продакшене уходит на TURN-трафик и модерацию, а очередь на тысячи одновременных пользователей требует отдельной архитектуры.
Комменты
Комментариев пока нет.
Оставить комментарий на основной странице