Рубрика «WebSocket»

Задача

Я основатель сервиса, который автоматизирует выпуск рекламных постов в каналах MAX, и его поддержка жила в обычном аккаунте мессенджера. Со временем там набралось 253 диалога и около 1 400 ответов, и на таком объёме личный аккаунт перестал справляться. У него нет API, поэтому нельзя прикрутить ни автоответы, ни шаблоны, ни отчёты. Нет статусов, и решён вопрос или висит, видно только по самой переписке. Вход один на всю команду, так что непонятно, кто кому отвечал. Когда я выгрузил историю и разобрал её, оказалось, что 22 человека так и не дождались ответа, а один и тот же срок выплат мы называли четырьмя разными способами.

Читать полностью »

Synkflow — наш голосовой мессенджер (бэкенд на Go, фронтенд на React/TypeScript, а для медиапотоков WebRTC под капотом крутится LiveKit).

С самого начала разработки одной из самых неприятных проблем стал именно LiveKit. На первый взгляд он казался простым: в документации всё вроде понятно написано — поднял комнату, выдал токен, пошёл звук. А по факту всё упёрлось в протухание токена.

Читать полностью »

Всем доброго времени суток! 

Хочу поделиться историей о том, как решение одной бытовой проблемы постепенно вылилось в разработку отдельного open‑source проекта.

TL;RD

В ходе экспериментов постепенно сформировалась архитектура с отдельными proxy, broker и worker‑компонентами. Она позволила отделить клиентское подключение от транспортного канала и добавить маршрутизацию трафика через удалённые узлы.

В итоге получилась система, в которой трафик может передаваться напрямую либо через один из удалённых worker‑узлов. Правила маршрутизации задаются по доменам и CIDR‑диапазонам.

Читать полностью »

Нас пятеро: PAPA DAN, Alexme, Mihanz, San4o и A1ex. Мы друзья и по совместительству команда в Escape from Tarkov: Arena. В такой игре голосовая связь нужна не «для поболтать»: короткое «слева», «двое на точке» или «перезаряжаюсь» иногда живет меньше секунды.

После блокировки Discord в России 8 октября 2024 годаЧитать полностью »

Всё началось с простого вопроса: почему малый бизнес теряет клиентов ночью?

Клиент заходит на сайт в 23:00, пишет в чат — и уходит. Потому что менеджер спит. Утром менеджер видит сообщение, перезванивает — а клиент уже купил у конкурента.

Стандартное решение — чат-бот. Но обычный чат-бот либо ограничен заранее заданными сценариями, либо требует интеграции с крупными облачными LLM. (отвечает по скриптам), либо слишком дорогой (GPT-4 за десятки тысяч в месяц), либо хранит данные за рубежом, что не всегда удобно для российского бизнеса.

Я решил сделать иначе.

Проблема переключения между ИИ и оператором

Читать полностью »

Привет.

Я Java-разработчик и в основном работаю с backend: Spring Boot, базы данных, интеграции, авторизация, WebSocket — всё то, что обычно находится за интерфейсом.

В какой-то момент я поймал себя на мысли: я каждый день пользуюсь мессенджерами, но плохо понимаю, как они устроены внутри. Окей, JWT, WebSocket, PostgreSQL, Redis — это понятно. Но что технически означает фраза “end-to-end encryption”? Как сервер доставляет сообщения, если он не должен их читать? Где живут ключи? Что хранится в базе? Что происходит, если у пользователя два устройства?

Решил разобраться через практику. Написал мессенджер с нуля. Назвал Chaos Messenger.

Читать полностью »

Когда рассказывают про архитектуру Flutter-приложения, всё обычно выглядит слишком аккуратно.

Есть Bloc, есть Dio, есть go_router, есть get_it. Где-то рядом лежат репозитории, модели, пара экранов и слайд со стрелками. На демо это звучит убедительно: “вот UI-слой, вот data-слой, вот state management”. Кажется, что если взять правильный набор пакетов, дальше система почти сама соберётся.

У меня так не вышло.

Читать полностью »

TL;DR: Написал open-source десктопное приложение TG Unblock на Rust, которое в один клик обходит блокировку Telegram через локальный WebSocket-прокси. Трафик заворачивается в обычный HTTPS к web.telegram.org — DPI не видит MTProto, провайдер не может шейпить. Без VPN, без серверов, без абонентки. Код на GitHub — by-sonic/tglock.


Предыстория: почему GoodbyeDPI не спасает

С весны 2025 года Telegram в России стал работать, мягко говоря, через боль. Сообщения доходят по 10 секунд, медиа не грузятся, звонки рвутся. Классическая картина: провайдер + DPI = страдания.

Первое, что приходит в голову — GoodbyeDPIЧитать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js