golang

Новый народный мессенджер России. Можно, а зачем?

  • вторник, 31 марта 2026 г. в 00:00:14
https://habr.com/ru/articles/1016784/

Telegram практически заблокирован. Max — официальный, удобный, но его не хотят ставить даже те, кто в курсе, что именно VK-экосистема уже хранит половину их цифровой жизни. В этом зазоре появляется вопрос: а нужен ли вообще «свой» мессенджер, и если да — каким он должен быть? Я попробовал ответить не словами, а кодом.

Рынок, которого нет

В России сложилась любопытная ситуация. С одной стороны — Telegram, которым пользуется активная аудитория для всего: от личной переписки до бизнес-каналов с тысячами подписчиков. С другой — регулятор, который периодически напоминает, что иностранный сервис, не выполняющий российское законодательство, может быть заблокирован. Прецедент уже был: с 2018 по 2020 год Telegram формально находился под блокировкой — и всё равно работал, потому что РКН тогда не справился с задачей технически.

Но инфраструктура суверенного интернета с тех пор заметно окрепла. ТСПУ (Технические средства противодействия угрозам) теперь реально умеют замедлять трафик конкретных сервисов. Следующая попытка блокировки может оказаться эффективнее.

Альтернатива? Государство предлагает Max — мессенджер от VK, технически неплохой. Но у него проблема, которую никаким маркетингом не закрыть: репутация. В сети регулярно появляются истории о том, что VK «сотрудничает» со спецслужбами за рамками официальных запросов. Независимо от того, правда это или нет, восприятие уже сформировано: Max — это не «для своих», это «под колпаком».

Итог: потенциальная блокировка удобного инструмента плюс недоверие к государственной альтернативе. Рынок пуст.

А зачем вообще ещё один мессенджер?

Вопрос из заголовка — это не риторика. Это реальный стоп, который я ставил себе несколько раз в процессе.

Аргументы против очевидны:

  • «Кладбище мессенджеров» — их уже десятки, и большинство умерли тихо. ICQ, Jabber, Viber (в России), TamTam, Яндекс.Мессенджер, Агент Mail.ru… Список длинный.

  • Сетевой эффект — люди не переходят на новую платформу, потому что там нет людей. Люди не приходят, потому что никто не переходит. Замкнутый круг.

  • Ресурсы — Telegram годами инвестировал в инфраструктуру, команду, протоколы. Конкурировать «в лоб» бессмысленно.

Но есть нюанс. Я не пытаюсь конкурировать с Telegram глобально. Я пытаюсь ответить на локальный вопрос: что будут использовать российские пользователи, если Telegram заблокируют по-настоящему?

Варианты:

  1. VPN + Telegram — для технически грамотной аудитории, которая не хочет терять привычный инструмент.

  2. Max — для тех, кому важна доступность и официальный статус.

  3. Ничего — самый грустный сценарий для бизнеса, у которого есть Telegram-каналы с аудиторией.

  4. Что-то новое — если это новое появится вовремя, будет достаточно удобным и вызовет доверие.

Вот в четвёртый пункт я и целюсь.

Главный вопрос: как заработать доверие

Здесь интересная развилка. Можно сделать мессенджер с декларируемой полной анонимностью — и в России это автоматически означает либо техническую ложь, либо юридическую проблему. Организатор распространения информации (ОРД) по российскому законодательству обязан хранить данные и передавать их по официальному запросу. Закон № 149-ФЗ, Постановление Правительства № 1526 — это не опциональные требования.

Telegram тоже обязан, просто делает вид, что нет. Это работало, пока Дуров физически находился за пределами российской юрисдикции и серверы тоже. Но история с арестом во Франции показала: «вне юрисдикции» — понятие относительное.

Мой подход другой: честная позиция. Мы российский сервис, работаем по российскому закону. Да, если придёт мотивированный запрос от уполномоченного органа в рамках действующего законодательства — мы его выполним. Но мы не читаем ваши сообщения, не продаём данные рекламодателям, не даём доступ «по звонку». Только официальный запрос, только в рамках закона. И каждый такой запрос логируется в append-only аудит-логе.

Это звучит как «мы следим, но честно». На самом деле это единственная реально работающая модель для сервиса в российской юрисдикции. И ключевой инструмент доверия здесь — открытый исходный код. Любой разработчик может взять код, поднять локально и убедиться, что никаких «закладок» нет.

Технический стек: почему форк, а не с нуля

Я изучил несколько вариантов основы. Главный кандидат — Tinode (github.com/tinode/chat): open-source мессенджер-сервер на Go, ~13 тысяч звёзд на GitHub, активно развивается с 2015 года. Из коробки даёт:

  • Личные чаты, группы до 200 000 участников, каналы

  • Аудио и видеозвонки

  • Голосовые сообщения

  • Статусы доставки и прочтения, typing indicator

  • Синхронизацию между устройствами

  • Нативные iOS (Swift) и Android (Java) клиенты

  • Кластеризацию с failover

  • Docker Compose деплой

Протокол — WebSocket с JSON, есть gRPC. SDK под разные платформы, в том числе npm-пакет tinode-sdk для JavaScript.

Почему не с нуля? Потому что написать надёжный протокол мессенджера — это месяцы работы. Синхронизация состояния между устройствами, правильная обработка офлайн-очереди, delivery confirmations, типизированные сообщения (Drafty — внутренний формат Tinode для форматированного текста) — всё это в Tinode уже решено и проверено. Моя задача — не изобретать велосипед, а добавить российский compliance и нормальный дизайн.

Ключевое решение — веб-клиент написан с нуля на React + Tailwind, а не форк tinode/webapp. Причина прозаическая: Angular-подобный стиль оригинального webapp сложно кастомизировать под другой дизайн-язык. React + Tailwind CSS даёт полный контроль над UI при минимальных усилиях.

Подключение к backend через официальный SDK:

Compliance как отдельный сервис

Это, пожалуй, самое нетривиальное архитектурное решение. Compliance-сервис — полностью отдельный Go-бинарник со своей базой данных. Tinode-сервер пишет в него через plugin-hook только события, которые юридически необходимо логировать: авторизации, передачу данных по запросам.

Почему отдельно? Несколько причин:

  1. Лицензия. Tinode backend — GPL v3. Compliance — наш собственный код. Смешивать их в один бинарник означает, что compliance-код тоже попадёт под GPL. Это неприемлемо, если в будущем возникнут коммерческие варианты.

  2. Изоляция. Compliance-сервис не имеет прямого доступа к содержимому сообщений. Только метаданные по официальному запросу.

  3. Аудируемость. Таблица audit_log — append-only (триггеры на UPDATE/DELETE). Фальсифицировать историю запросов от государства технически невозможно. Это аргумент для обеих сторон: и для пользователей («нас не читают тайно»), и для регулятора («запросы выполняются по закону»).

О чём я не говорю

Честность требует обозначить то, чего пока нет:

E2E-шифрование. В Tinode оно есть в roadmap, но не реализовано. Текущий уровень — TLS 1.3 при передаче, данные на сервере доступны серверному процессу. Для MVP и первой проверки рынка этого достаточно — такой же уровень у WhatsApp для резервных копий и у большинства корпоративных мессенджеров. Но называть это «полной приватностью» нельзя. E2E — задача после первых 10K MAU.

Сквозной аудит compliance. Минимальный audit log — да. Полноценный government API по Постановлению № 1526 с двухфакторной аутентификацией для регуляторов — нет. Это следующая фаза.

Мобильные приложения в сторах. Форки есть, ребрендинг — следующий этап. App Store и Google Play требуют прохождения модерации.

Зачем я это публикую

Честно? Хочу понять, нужно ли это кому-то кроме меня.

Технически задача решаемая. Tinode — зрелый backend, React-клиент пишется быстро, инфраструктура на российских облаках разворачивается за день. До работающего MVP — две-три недели при нормальном темпе.

Но мессенджер — это не технология. Это социальный продукт. Его ценность появляется только когда им пользуются люди. А люди пользуются только тем, чему доверяют и что умеют использовать.

Поэтому вопросы, которые мне интереснее любого технического решения:

  • Есть ли вообще спрос на «честный российский мессенджер» или это самообман?

  • Открытый код — реальный аргумент доверия для обычного пользователя (не разработчика) или нет?

  • Может ли проект с явным compliance (передаём данные по закону) набрать аудиторию, или это автоматически «мессенджер для тех, кому нечего скрывать»?

  • Какой сценарий реалистичен: B2C (личные переписки), B2B (корпоративные коммуникации с self-hosted) или узкая ниша (активные Telegram-каналы, которым нужна российская альтернатива)?

  • Можно ли создать этот проект с помощью технического сообщества, и как его поддерживать и развивать в финансовом плане

Буду рад услышать мнения — особенно критику. Если идея изначально нежизнеспособна по причинам, которые я не вижу, лучше узнать об этом сейчас.