Обновить

Telemax: когда не хочешь держать MAX на телефоне, но есть Telegram

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

Стандартные советы — «пользуйся веб-версией» или «поставь на отдельную звонилку». Веб-версия не шлёт пуши и не принимает звонки в фоне. Отдельный телефон ради одного мессенджера — так себе решение.

Мне хотелось третьего варианта: чтобы MAX вообще не было ни на моём телефоне, ни в моём браузере — а переписка при этом приходила туда, где я и так сижу. В Telegram.

Так появился Telemax — мост между MAX и Telegram.

Что понадобится

  • Сервер — любая VPS на Ubuntu/Debian. Требования скромные, хватит самой дешёвой.

  • Свой Telegram-бот — создаётся за минуту в @BotFather, токен вставляется при настройке. Бот твой, живёт на твоём сервере, никакого общего чужого бота — данные идут только через твою инфраструктуру.

  • Telegram-группа с включёнными темами, куда ты добавишь этого бота админом. Она и станет твоим «окном» в MAX.

  • Номер MAX, на который мост авторизуется (в том числе если на аккаунте стоит пароль-2FA).

Про безопасность и доступ — два уровня:

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

  • Внутри группы — разграничение. Обычные участники могут читать и писать (можно спокойно добавить людей в группу, чтобы вести общее обсуждение). А вот команды боту — только для админа.

Честная оговорка: тот, кого ты добавил в Telegram-группу, видит там все MAX-чаты, а не один. Так что доступ к самой группе — вещь чувствитвительная.

В ТГ это выглядит так:

Что уже работает в обе стороны:

  • текст, фото, файлы, голосовые, видео и видео-кружки;

  • стикеры — и статичные, и анимированные;

  • геолокация и контакты;

  • опросы — создание и голосование;

  • удаление сообщений;

  • реакции;

  • пересылка (обычным forward в Telegram — прилетает в MAX с пометкой источника);

  • уведомления о звонках (входящий / пропущенный / завершённый — текстом, без передачи звука: для аудио нужен WebRTC, это вне рамок).

Плюс мелочи для удобства: веб-панель со статусом и метриками (приватный доступ), самообновление по кнопке прямо из Telegram, авторизация (включая аккаунты с паролем-2FA) без танцев с бубном.

Из интересного: анимированные стикеры ТГ по умолчанию МАХ не принимает, поэтому они конвертируются в короткие видео - можно завалить максчатланинов своими стикерпаками )

Как развернуть

На чистом Ubuntu-сервере — одна команда:

curl -fsSL https://raw.githubusercontent.com/Trollobot/Telemax/main/install.sh | bash

Дальше скрипт сам поставит Docker, склонирует проект, сгенерирует ключи и по шагам проведёт настройку: попросит токен Telegram-бота (создаётся в @BotFather), сам определит id твоей группы, а в конце прямо в консоли спросит номер MAX и код из SMS. Переключаться в браузер для первого запуска не нужно.

Всё, что дальше (сменить номер, посмотреть логи) — через веб-панель по HTTPS.

Честно про ограничения, чтобы никто не питал иллюзий:

  • Это не end-to-end. Переписка идёт через серверы MAX и Telegram — как и в любом обычном мессенджере. Мост ничего в этом плане не «шифрует поверх», он просто переносит сообщения. Если тебе нужен E2E — это не сюда.

  • Переписка оседает на твоём сервере — в логах и в истории Telegram-группы. Безопасность этого сервера (доступ, шифрование диска) — на тебе.

  • Это неофициально. Проект не связан с MAX, работает поверх твоего собственного аккаунта на твой страх и риск, в том числе в части их правил.

  • Сыровато. Один разработчик, живой проект. Но у меня самого крутится и работает.

Открытый код и зову тестить

Специально открытый исходник — чтобы можно было посмотреть, что внутри, и гонять на своём сервере, а не на чьей-то инфраструктуре:

github.com/Trollobot/Telemax

Буду очень благодарен за тесты и замечания — что неудобно, что сломалось, чего не хватает. Issues и Discussions открыты. Сам его допиливаю потихоньку.

Теги:
+18
Комментарии41

Публикации