Видеочат, работающий непосредственно в веб-браузере.
Для этого на клиентской стороне реализован полноценный WebRTC client с использованием фреймворка Polymer.
При разработке нативных мобильных клиентов общая часть по работе с сетью (WebRTC) и бизнес логикой выделена в отдельный компонент Middleware, написанный на C++.
На серверной стороне реализован полноценный WebRTC server, который позволяет плавно балансировать нагрузку между медийными endpoints и динамически добавлять новые ноды в общий пул.
Большая часть проекта заключалась в построении стабильной, отказоустойчивой системы, способной справляться с большими объемами трафика, в том числе и DDOS атаками.
Часть сервисов модерации контента, характерных для UGC проектов, реализована на языке Go.
Проект содержит компоненты:
Клиентское приложение Android:
Клиентское приложение iOS:
Клиентская библиотека Middleware
ВЕБ сайт:
- PHP7, MySQL, Laravel, Gitlab CI
- ReactPHP, Websockets
- Redis, Memcache
- Golang
Сервис передачи данных:
- STUN
- C++13, Golang, boost, WebRTC, Linux