Главнаяarrow-rightКейсыarrow-rightTribeco

Кейс Tribeco: анонимные видеоконференции без регистрации

Краткое описание

Бесплатный сервис для анонимных звонков без регистрации

Задача

Создать анонимный аналог ZOOM

О проекте

Tribeco– реализован бесплатный сервис для проведения анонимных, защищенных шифрованием видеоконференций.Безопасность - ключевой аспект разработки: она защищает и пользователей, и владельцев платформы. Запись и прослушка звонков невозможны, отслеживание пользователей исключено - звонки полностью анонимны.Для создания полной анонимности, мы создали сервис без регистрации - Tribeco не собирает данные о пользователе, его устройстве и прочую информацию, и специально не имеет возможности регистрации для обеспечения максимального уровня анонимности общения, для создания звонка вы можете использовать любой браузер, любое устройство, и для создания звонка вам достаточно нажать одну кнопку, без верификации и регистрации.Для приложения Tribeco разработано транзитное шифрование данных при передаче на сервер, благодаря чему ваши сообщения шифруются перед тем, как покинуть ваше устройство. Также была создана система генерации уникальных адресов комнат - данная система применяется при шифровании крипто кошелька сид фразой, этот метод наиболее всего защищен от подбора.

Бизнес-выгоды

ИСКЛЮЧЕНИЕ РИСКА ОТ ПРОСЛУШИВАНИЯ ЗВОНКОВ ТРЕТЬИМИ ЛИЦАМИ
ЗА СЧЕТ ШИФРОВАНИЯ И АНОНИМНОСТИ ВЫ ЭКОНОМИТЕ МИЛЛИОНЫ
ПОЛНАЯ АНОНИМНОСТЬ УЧАСТНИКОВ И УСТРОЙСТВ ПОЛЬЗОВАТЕЛЯ
СЕРВИС БЫЛ ГОТОВ ЗА 5 МЕСЯЦЕВ И РАЗВЕРНУТ НА СЕРВЕРАХ ЗАКАЗЧИКА
ЭКОНОМИЯ НА ПРЕДОТВРАЩЕНИИ УТЕЧЕК ДАННЫХ ЧЕРЕЗ ЗВОНКИ БОЛЕЕ 4,88 МЛН $
52% УСПЕШНЫХ КИБЕРАТАК - ВНЕДРЕНИЕ СИСТЕМ АНОНИМИЗАЦИИ И ШИФРОВАНИЯ НЕЙТРАЛИЗУЕТ УГРОЗУ КИБЕРАТАК
iphoneiphoneiphone
iphones

Функционал

Создание встречи без регистрации
toggle

Вход на звонок без регистрации

Создание новой встречи в один клик без аккаунта

Отсутствие этапов верификации (телефон/почта)

Генерация уникальной ссылки на комнату

Подключение участников по ссылке с любого устройства и из любого браузера

Подключение к встрече по ссылке
toggle

Вход в комнату без логина и подтверждений

Быстрый сценарий подключения - открыть ссылку и присоединиться

Защита от случайного входа за счет уникального адреса комнаты

Создание комнат и подключение по ссылке
toggle

Создание комнаты пользователем и получение ссылки-приглашения

Подключение участников по ссылке без входа в аккаунт

Быстрый сценарий использования: создал встречу => отправил ссылку => участники подключились

Безопасность связи и шифрование
toggle

Генерация уникальных идентификаторов-адресов комнат аналогичная криптогенерации seed фразы

Логика адресов рассчитана на устойчивость к подбору и угадыванию

Снижается риск попадания случайных гостей через подбор ссылки

Зашифрованный канал связи (транзитное шифрование)
toggle

Данные шифруются до выхода с устройства пользователя

Передача по сети происходит в защищённом виде

Отсутствие сбора пользовательских данных
toggle

Нет механики регистрации = нет хранения учетных записей

Сервис не собирает данные о пользователе и устройстве как обязательное условие работы

Минимизация следов, которые могут привести к деанонимизации

Приватность на уровне архитектуры платформы
toggle

У сервиса отсутствует возможность записывать или прослушивать звонок на стороне платформы

Нет облачной записи и серверного хранения контента звонков

Безопасность распространяется на пользователей и на владельцев платформы

Управление встречей (организатор)
toggle

Управление базовыми параметрами комнаты со стороны создателя

Контроль доступа и поведения участников в рамках встречи

Быстрые действия организатора для ведения сессии

Управление участниками
toggle

Отображение списка участников

Контроль состояния участников (микрофон, камера)

Базовые действия управления в рамках встречи

Видеозвонок и коммуникации внутри звонка
toggle

Проведение звонка в комнате как основной сценарий использования

Возможность создавать дополнительные залы-комнаты внутри одной видеовстречи, например, для разговора тет-а-тет во время общего звонка

Чат во время звонка
toggle

Текстовый общий чат внутри комнаты

Обмен сообщениями по ходу звонка

Приватные сообщения
toggle

Личные сообщения между участниками внутри звонка

Используется для частных уточнений, не видимых всей комнате

Реакции во время звонка
toggle

Реакции и эмодзи как быстрый интерактив

Обратная связь без перебивания голосом

Демонстрация экрана
toggle

Возможность включить показ экрана во время звонка

Управление демонстрацией со стороны участника (включить/выключить)

Возможность совместного одновременного показа несколькими участниками, устанавливается администратором встречи

Запись звонка только на устройство пользователя
toggle

Запись возможна только локально на устройстве

На серверах сервиса не хранится запись звонка

Мультиязычность интерфейса (40+ языков)
toggle

Поддержка нескольких языков интерфейса

Возможность переключиться на нужный язык в настройках

Шумоподавление и улучшение качества аудио
toggle

Шумоподавление для повышения разборчивости речи

Более стабильное качество звонка в реальных условиях (офис/улица/дом)

Стек технологий

Основной стек технологий, используемый в проекте Tribeco, включает следующие компоненты:
1. Frontend:
toggle

React (версия 18.2.0) - основа фронтенда.

Material-UI (@mui/material) - библиотека компонентов для стилизации интерфейса.

Emotion (styled components) - для стилизации с использованием CSS-in-JS.

WebRTC - для организации видеозвонков.

Redux и redux-thunk - для управления состоянием приложения.

2. Библиотеки и API:
toggle

Amplitude - для аналитики взаимодействий пользователей.

Giphy API - для интеграции гифок в приложение.

3. Backend и утилиты:
toggle

Node.js (>=14.0.0) - основная среда выполнения.

@rtcstats - для сбора и анализа статистики RTC.

@tensorflow/tfjs - для интеграции моделей машинного обучения.

Microsoft Graph API - для работы с данными Microsoft.

4. Инструменты разработки:
toggle

Babel - для трансформации кода.

ESLint - для проверки кода на ошибки.

Webpack - для сборки приложения.

TypeScript - для статической типизации кода.

Jetifier - для миграции библиотек в React Native.

Работа с заказчиком

*Важно, это не работа по проекту, это работа именно с заказчиком, и это то, чего нет в смете или коммерческом предложении, это то, что мы делаем для увеличения вероятности успеха продуктаРазработка для нас — лишь верхушка айсберга. Основная работа развернулась вокруг того, чтобы команда заказчика приняла продукт как собственный и понимала его до последней кнопки. Мы провели многочасовые сессии с владельцем и ключевыми сотрудниками, на которых раскрыли логику каждого модуля: почему интерфейсы выстроены именно так, какие поведенческие паттерны пользователей мы закладывали и как их использовать для роста конверсии. Отдельно прошли блок по операционным рискам: смоделировали сезонный провал спроса, сбой подрядчика, уход ключевого сотрудника — и для каждого сценария у команды теперь есть план действий. Результат — заказчик, который не зависит от разработчика ни на одном этапе эксплуатации.Наша цель - это не просто разработка, это успех нашего заказчика.

Цели дизайна:

ДОВЕСТИ ПОЛЬЗОВАТЕЛЯ ДО ЗВОНКА БЫСТРО, БЕЗ РЕГИСТРАЦИИ И ЛИШНИХ ЭКРАНОВ
С ПЕРВОГО ВЗГЛЯДА ПЕРЕДАТЬ ОЩУЩЕНИЕ ПРИВАТНОСТИ И БЕЗОПАСНОСТИ

Результаты дизайна:

МАКСИМАЛЬНО БЫСТРЫЙ СТАРТ ЗВОНКА ЗА ОДИН ЭКРАН БЕЗ РЕГИСТРАЦИИ И ЛИШНИХ ШАГОВ
ВИЗУАЛЬНЫЙ АКЦЕНТ НА ПРИВАТНОСТИ И ДОВЕРИИ, МИНИМАЛЬНЫЕ ПОЛЯ, СПОКОЙНЫЙ ИНТЕРФЕЙС, БЕЗ ОТВЛЕЧЕНИЙ
ЗНАКОМЫЕ СЦЕНАРИИ СОЗДАТЬ И ПРИСОЕДИНИТЬСЯ ЧТОБЫ ПОЛЬЗОВАТЕЛЬ НЕ ОБУЧАЛСЯ ПРОДУКТУ
ЧЕТКАЯ ИЕРАРХИЯ И ОДИН ГЛАВНЫЙ CTA НА КАЖДОМ ШАГЕ ЧТОБЫ НЕ ТЕРЯТЬ КОНВЕРСИЮ
УНИВЕРСАЛЬНОСТЬ ПОД ЛЮБЫЕ УСТРОЙСТВА И БРАУЗЕРЫ ЧТОБЫ ЗАХОДИЛИ ПО ССЫЛКЕ БЕЗ БАРЬЕРОВ