СИБУР перевёл 40 тысяч сотрудников на платформу Труконф

Перейти к результатам

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Выберите категорию:
База знаний
Вебинары
Мероприятия
Новости
Обзоры
Обновления
Пресс-релизы
Примеры внедрений
Вернуться

Безопасная альтернатива Telegram: что выбрать для рабочих чатов

13 мин.
Безопасная альтернатива Telegram: что выбрать для рабочих чатов 1

Создано на базе изображения Алена Делорма (источник)

Казалось бы, что может быть не так с использованием публичного мессенджера для рабочей переписки? В России это Telegram, в других странах чаще всего WhatsApp* и Facebook Messenger*. По статистике за этот год 70% всех работников в России (источник) часть своей рабочей переписки ведёт в публичных мессенджерах, а значит и вы тоже, признайтесь.

Многие к этому привыкли, кто-то даже научился брать этот процесс под контроль и отличать своих от чужих по белым спискам, проверкам на причастность к организации через специальных ботов, выпуск корпоративных SIM-карт только для Телеграм и т.п. Очевидно, что никто не хочет, чтобы служебная информация осталась в руках бывших сотрудников или ещё хуже — регулярно ими читалась. Бесплатно, удобно, да есть риски, но с этим можно жить.

Но в этом году по вполне очевидным причинам, продиктованным вопросами национальной безопасности, такой способ рабочего общения был серьёзно ограничен — перестали работать звонки между пользователями иностранных публичных мессенджеров, которые мы так полюбили за их бесплатность и глобальный абонентский охват. По статистике операторов связи в сентябре и октябре количество GSM вызовов (т.е. через обычную сотовую связь) в России удвоилось. Напомним, что для совершения таких звонков нужно знать сотовые номера коллег и наконец-то начать тратить минуты, включенные в ваш тарифный план. Для небольшой компании из 20-30 сотрудников это терпимо, но для любой серьёзной организации (не забываем про 70% выше, они тоже страдают) это большая головная боль, как в технической плоскости (как сделать так, чтобы все сотрудники знали все сотовые номера коллег), так и в юридической (это же персональные данные получается, а для этого нужно согласие других коллег). Что делать? Обсудим дальше.

А ведь есть и другая проблема — все наши коммуникации сплелись в один большой клубок: рабочие, семейные, развлекательные, общественные. Как можно ответить на запрос коллеги в Телеграм, не прочитав последние новости в соседнем чатике или не ответив любимой или детям? Это не просто, для многих просто невозможно. Что приводит к постоянной смене контекста и заставляет переключаться с рабочих задач на другие, снижая нашу с вами эффективность (замечу, что происходит это в рабочие часы, естественно).

Давайте посмотрим правде в глаза — давно пора начать отделять инструменты для рабочего общения от всех остальных. Сейчас на дворе конец 2025 года и заставить всех коллег, особенно молодых, общаться через электронную почту уже не получится, они выросли со смартфоном в руках и искренне не понимают почему там нельзя отправить файл на 700 МБ или посмотреть личную переписку, не разгребая горы СПАМа и не рискуя кликнуть по фишинговой ссылке.

Поэтому в этой статье мы рассмотрим как добавить на главный экран смартфонов ваших сотрудников ещё одну иконку — иконку приложения, где будет только рабочее общение (со звонками, чатами, аватарками, конференциями и всем необходимым) и никаких отвлекающих или ограничивающих продуктивность факторов. Да, и ИБ и ИТ-специалистам такой подход очень понравится, ведь отдельным инструментом намного легче управлять, как говорится, разделяй и властвуй.

Требования к мессенджеру

Итак, вступление закончено, давайте сформулируем критерии актуальные на сегодняшний день, которые мы должны предъявить к рабочему чату, коммуникатору или мессенджеру (называйте как хотите, суть уже понятна):

  • Функции мессенджера: поддержка личных и групповых чатов, каналов и прочих базовых вещей, типа пересылки файлов и сообщений.
  • Функции UC (Unified Communications, объединённые коммуникации): адресная книга со списком сотрудников, профили с важными данными, такими как департамент, город, или ДР, статусы присутствия и возможность звонить друг другу. В идеале ещё хорошо бы иметь поддержку ВКС, чтобы собираться более чем вдвоём.
  • Интеграция с ИТ-системами: минимально с AD/LDAP и Exchange, ибо вручную заводить и обслуживать сотни (или тысячи) учётных записей для всех пользователей компании (мы же не хотим никого оставить за бортом, в Telegram же все коллеги были доступны) никто в здравом уме не станет.
  • Коробочная версия. Облакам нет доверия, причем не зависимо от юрисдикции. Как ни относись к Telegram, хранить критически важные рабочие переписки «где-то у соседей» — идея сомнительная. Пользователи мессенджера создают кучу файлов, гигабайты каждый день, а данные в облаках бесплатными не бывают, облачные мессенджеры потребуют оплаты всё больших тарифов с ростом хранилища. Поэтому решения, которые хорошо ловят на парковке, и прочие облачные сервисы — пролетают мимо, нужен полноценный self-hosted.
  • Доступный API. В идеале — бесплатный API для работы с чатами. Telegram эту планку уже задал, и логично искать что-то сопоставимое, где можно без лицензий и доплат строить собственные интеграции.
  • Простота развертывания. Не надо превращать установку в квест с Docker-ами, контейнерами, виртуалками и балансировщиками. Хочется просто взять готовый серверный дистрибутив, поставить его на свой хост и работать.
  • Отсутствие файловых ограничений. Telegram давно служит заменой файлообменника, и это удобно. Ограничения на общий объём или размер загружаемых файлов только мешают — нужно, чтобы система позволяла передавать материалы свободно, без искусственных потолков.

Почему Труконф?

У мессенджера Труконф есть несколько очевидных плюсов, которые сложно игнорировать:

  • установка на своей сервер standalone-приложения без танцев с бубном 🥁. Поставил, запустил, работаешь.
  • сервер использует всего один порт — а это резко упрощает настройку файрвола. Никаких десятков правил, маршрутов и исключений. Просто открыть один порт и забыть. А что так можно было?
  • передача файлов работает без искусственных потолков: сколько нужно — столько отправляете, хоть используйте как корпоративный файлообменник. Ограничение только ваш SSD на сервере или NAS.
  • в бесплатной версии доступен чат-API, до 300 пользователей мессенджера и безлимитные аудио/видеозвонки. Для старта — более чем.
Безопасная альтернатива Telegram: что выбрать для рабочих чатов 2

Но так ли хорош ли Труконф на самом деле?
(создано на базе изображения из соцсетей)

Честное сравнение с конкурентами

Вы, дорогие читатели, можете открыть подборку на популярном ресурсе и сделать собственные выводы… А я собрал ключевые моменты, чтобы наглядно показать сильные и слабые стороны разных продуктов, а точнее их бесплатных версий:

Наличие и ограничения функционала в бесплатной версии
Продукт Чат-боты (API чатов) Звонки Конференции Сообщения, чаты и каналы Файлы Установка на свой сервер Установка через инсталлятор (не Docker)
eXpress Платно Только с облачными пользователями Платно Есть до 250 МБ Платно Нет, используется Docker
МТС Линк Чаты Платно Через «Линк Встречи» Есть до 2 ГБ Платно Нет, используется Docker Compose
Pachka Бесплатно до 100 человек и до 50 часов в месяц через open-source Jitsi Meet 2000 сообщений в месяц Хранилище на компанию 10 ГБ Платно Нет информации
Compass Да, до 10 участников Да, до 10 человек через open-source Jitsi Meet Да, до 10 участников до 512 МБ Платно Нет, используется Docker
Контур.Толк. Платно Платно, через open-source Jitsi Meet Платно до 50 МБ Платно Нет, используется Docker
Яндекс Мессенджер Платно Платно Платно Платно Недоступно Недоступно
VK Workspace Платно Платно Платно Платно Платно Нет, используется Docker
Труконф Мессенджер Без ограничений Без ограничений, до 300 человек 10 человек Без ограничений Без ограничений Бесплатно Есть

При этом есть лайфхак: чтобы получить 300 пользователей, укажите корпоративный email и пользуйтесь на здоровье.

Так сказать — решили не жадничать. Тут хотелось бы вспомнить советский постер:

Безопасная альтернатива Telegram: что выбрать для рабочих чатов 3

Что умеет API чатов в Труконф

В составе мессенджера Труконф поставляется отдельный сервис (служба) TrueConf Chatbot Connector, которая реализует связность внешних систем с нашим мессенджером. API работает поверх транспортного протокола WebSocket и не является привычным API как в Telegram (в ближайшем обновлении мы исправим это — появится HTTP REST API). API Труконф на базе WebSocket открывает множество интересных возможностей:

  • мгновенные нотификации об ответах;
  • поддержка постоянного соединения с сервером;
  • использование стандартных TCP портов.

При этом, для разработчиков представлена удобная библиотека python-trueconf-bot, которая существенно упрощает создание ботов и взаимодействие с API чатов.

Итого, для переноса чатов из Telegram в Труконф нужно:

Как спарсить чат в Telegram

С помощью бота

Самое первое, что приходит в голову, создать бота, который спарсит всю историю сообщений чата. К сожалению, в Telegram Bot API нет отдельного метода для получения всей истории переписки. То есть, бот может получить только новые сообщения чата (обновления), а это нам не подходит… Мы тут собрались переносить старое.

Кто старое помянет, тому глаз вон

С помощью MTProto API

Метод загрузки истории существует в MTProto API (messages.getHistory), но это клиентское API, и оно не входит в Bot API и следовательно недоступно ботам. К счастью, на Python существует библиотека Telethon, которая поддерживает авторизацию через токены ботов. Все бы ничего, но не бывает роз без шипов и нужно осознавать все риски работы через MTProto.

Для общения с MTProto API нам понадобятся специальные параметры — api_id и api_hash. Следуя официальной документации Telegram получить их не составит труда. Важно отметить, что получая таким образом доступ к API мы фактически создаем собственное приложение Telegram App, отличное от официального клиента. Это потенциально рискованный шаг потому что:

  • Нарушение правил использования (Terms of Service, ToS) Telegram API может привести к блокировке учетной записи;
  • Выданные api_id и api_hash не подлежат изменению или удалению. Тем не менее, на безопасность аккаунта это напрямую не влияет, поскольку даже при наличии указанных параметров для работы через API необходимо пройти полноценную авторизацию с вводом номера телефона и одноразового кода (OTP).

Таким образом, боясь нарушить правила использования Telegram API, я продолжил поиски нормального решения для выгрузки чата без регистрации и смс.

С помощью Telegram Desktop

Я люблю Telegram за их стремление быть современными. Они действительно стараются быть user-friendly. Официально Telegram поддерживает все существующие платформы. В Telegram Desktop (не путать с Telegram for macOS) из коробки доступен экспорт любого чата.

Безопасная альтернатива Telegram: что выбрать для рабочих чатов 4

Это мега-фича, которая «решит все твои проблемы». Потому что нам не надо будет придумывать велосипед, продумывать логику парсинга чата, выгрузки всех мемчиков, аудиосообщений и подобного. Команда Telegram все сделала за нас – для нас.

Экспорт чата Telegram

После установки и авторизации в Telegram Desktop у вас отобразится привычный список чатов. Для экспорта выполните:

  • Откройте нужный чат. Неважно какой – личный, групповой или канал.
  • В правом верхнем углу нажмите Еще (кнопка с тремя точками) и выберите Экспорт истории чата: Безопасная альтернатива Telegram: что выбрать для рабочих чатов 5
  • У вас откроется окно Настройки экспорта. Выставьте формат JSON и при необходимости:
    • отметьте типы медиа подлежащие выгрузки;
    • ограничьте размер файлов, чтобы не скачивалось все в подряд;
    • настройте диапазон времени сообщений.
    Безопасная альтернатива Telegram: что выбрать для рабочих чатов 6

Важно отметить, что экспорт чата будет производиться в режиме реального времени. Все файлы будут скачиваться в указанную папку (по умолчанию в Downloads/Telegram Desktop). После начала экспорта вы можете продолжить пользоваться приложением, экспорт будет производиться в фоновом режиме. Если вы выбрали диапазон дат, то приложение будет «идти» к выбранной дате обрабатывая все сообщения от начала. Выглядит как недоработка со стороны Telegram, но как есть…

Анализ бэкапа

По завершению экспорта вам будет доступна папка с названием ChatExport_Date, например, ChatExport_2025-09-11. Содержимое папки может отличаться в зависимости от настроек экспорта. Приведу типовый пример содержимого папки:

Основным файлом, который нас интересует, является result.json. В нем аккумулирована вся информация о чате. Рассмотрим его содержимое подробнее.

result.json

Файл содержит всего 4 объекта:

  • name. Имя чата.
  • type. Тип чата.
  • id. Внутренний (цифровой) идентификатор чата.
  • messages. Сообщения.

Безопасная альтернатива Telegram: что выбрать для рабочих чатов 7

Нас более всего интересует содержимое объекта messages. Он содержит массив объектов сообщений:

Безопасная альтернатива Telegram: что выбрать для рабочих чатов 8

Команда Telegram очень хорошо продумала структуру бэкапа. Я создал групповой чат, наполнил его разными типами сообщений: текст, сжатая картинка, файл, аудиосообщение, видеосообщение и т.д., и начал исследовать, как Telegram будет сохранять информацию о таких сообщениях в result.json. Можно ли вообще будет спарсить этот файл? Насколько это будет легко или сложно? Вот что получилось:

  • Каждый объект сообщения в result.json содержит обязательные поля: id, type, date, date_unixtime.
  • В зависимости от типа сообщения service или message Telegram определяет автора сообщения:
    • для служебных сообщений: actor, actor_id.
    • для обычных сообщений чата: from, from_id.
  • Любое сообщение чата имеет поля: text, text_entities.

А дальше? А дальше в зависимости от типа сообщения количество полей будет разным. Приведу «схематичный» пример отличий:

Текстовое сообщение

Сжатая картинка

Файл

Видеосообщение

Другие типы сообщений приводить не буду, чтобы не перегружать статью. Вы можете сделать это сами. Главное, что стало понятно – Telegram сделал все, чтобы их бэкап можно было использовать для дальнейшей обработки в других системах.

Перенос чата в Труконф

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

Как уже упоминал выше, API Труконф поддерживает практически все, что есть в Telegram. Нет только видео- аудиосообщений, но это не беда. Как показывает опыт, не все пользователи Telegram этим пользуются. Не зря Пашка Дуров придумал монетизировать отключение голосовых и видеосообщений.

Безопасная альтернатива Telegram: что выбрать для рабочих чатов 9

(источник: Соцсети)

Я же в своей жизни пользуюсь голосовухами, поэтому ниже покажу как я решил данную проблему с Труконф.

Адаптация форматирования сообщений

По моему скромному мнению Telegram самый богатый мессенджер в плане разновидности форматирования. Тут тебе и цитаты, и сворачивающиеся цитаты, моноширинный текст и автоматическое распознавание кода, спойлеры. К сожалению не все это поддерживают (привет, WhatsApp и VK Messenger), в том числе и Труконф.

Ниже мой план по адаптации телеграмовского форматирования:

Telegram TrueConf
Жирный Жирный
Курсив Курсив
Подчеркнутый Подчеркнутый
Зачеркнутый Зачеркнутый
https://trueconf.ru https://trueconf.ru
Текстовая ссылка Текстовая ссылка
Упоминание @mention Упоминание @mention с ссылкой на Telegram-аккаунт
Кастомные эмоджи Используем обычный эмоджи
Моноширинный блок Безопасная альтернатива Telegram: что выбрать для рабочих чатов 10 Безопасная альтернатива Telegram: что выбрать для рабочих чатов 11
Моноширинный блок с указанием языка Безопасная альтернатива Telegram: что выбрать для рабочих чатов 12 Безопасная альтернатива Telegram: что выбрать для рабочих чатов 13
СпойлерБезопасная альтернатива Telegram: что выбрать для рабочих чатов 14 Спойлер можно перенести как [спойлер] Безопасная альтернатива Telegram: что выбрать для рабочих чатов 15

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

Труконф поддерживает открытие некоторых файлов во встроенном просмотрщике. Telegram пишет голосовые сообщения в формате .ogg, но этот формат не поддержан в Труконф. Поэтому пришла идея подружить две системы и отправлять голосовые из Telegram в Труконф как видео .mp4 со статической картинкой. Сделать это очень просто используя ffmpeg:

Видеосообщения (кружочки)

Кружочки Telegram сохраняются как video.mp4 с добавлением индекса: video.mp4, video (2).mp4. Это неудобно при просмотре чата в Труконф – нет контекста. Будем переименовывать его в что-то осмысленное, как у аудиосообщений – audio_1@16-07-2025_15-20-31.ogg, только для видео – video_message@16-07-2025_15-20-31.mp4

Написание кода

Писать код я буду на Python. Да, многие «трушные» программисты не в восторге от этой змеи из-за её скорости, но в нашей задаче это совершенно не критично.

Выбор языка во многом определило наличие готовой библиотеки python-trueconf-bot. С ней не нужно возиться с настройкой WebSocket-соединения: достаточно создать экземпляр

и можно сразу отправлять сообщения через

Те, кто хоть раз работал с «сырым» WebSocket и ручной обработкой JSON, поймут, насколько это удобно.

Ну что ж, приступим! Подробно на самой библиотеке я останавливаться не буду — у неё есть отличная документация с примерами. Если вы знакомы с aiogram, то разберётесь моментально: логика очень похожа.

Забегая вперёд, я не стану приводить полный разбор кода — лишь выделю ключевые моменты. Полный листинг, как обычно, можно найти на GitHub.

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

Первое, что я сделал, это написал функцию build_content_from_text_entities, которая собирает текст с поддерживаемым форматированием в API Труконф (HTML, Markdown).

Здесь Telegram тоже порадовал, т.к. он в result.json длинные сообщения с форматированием разбивает на группы. Я предпочел использовать поле text_entities вместо text, потому что в объектами словарей становится весь текст, даже \n, что существенно упростило парсинг:

Чтобы собрать из данного массива новое сообщение, нужно пройтись по нему циклом, проверив type задать правильный стиль для text:

Ответ на сообщение (reply)

При ответе на сообщение в result.json добавляется ключ reply_to_message_id, который содержит ID сообщения, на которое отвечали. В Труконф API при отправке сообщения мы получаем message_id, поэтому нетрудно сопоставить айдишники:

и при наличии ключа reply_to_message_id вытягивать айдишник перенесенного сообщения.

Отправка сообщений в чат

Здесь все просто. У нас есть массив сообщений в result.json и мы пройдемся обычным циклом for. Поскольку в каждом объекте сообщения может быть разное кол-во полей, я начал анализировать какой тип сообщения нужно обработать вначале. Все типы файлов, за исключением изображений отправленный с сжатием, имеют поле file и отличить их можно только по media_type. Также каждое сообщение содержит поля text и text_entities, а в связи с тем что API чатов Труконф пока не имеет возможности отправить подпись к файлу, то я решил отправлять подписи отдельным текстовым сообщением следующим сразу после отправки файла. Таким образом выстроилась правильная очередность обработки сообщений:

  • Проверяем, содержит ли объект сообщения параметр photo? Если да, то отправляем сообщение:
  • Если .get(photo) == False, то двигаемся дальше и обрабатываем сообщения по media_type: В match-case порядок не важен, т.к. сработает только ветка соответствующая media_type.
  • В конце проверяем, если ли подпись if message["text_entities"], если да, то генерируем сообщение с адаптированным форматированием в HTML и отправляем сообщение (либо ответ на сообщение).

Выводы

Ограничения на звонки, сложности с использованием GSM в корпоративной среде и общая тенденция к ужесточению требований к коммуникациям показывают, что привычные инструменты уже не всегда удовлетворяют потребности бизнеса. Поэтому вопрос перехода на собственный мессенджер — это скорее вопрос зрелости инфраструктуры, чем радикальное решение.

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

Не менее важна интеграция с ИТ-системами. Подключение к AD/LDAP и Exchange позволяет автоматически создавать и обслуживать учётные записи, избавляя администраторов от работы «вручную» и сохраняя привычный уровень доступности сотрудников, который раньше обеспечивал Telegram.

Если проект понравился, то поставьте звездочку на GitHub. Также в репозитории вы найдете подробнейший мануал, по полному переезду из Telegram в TrueConf Messenger. Чтобы вы не парились с формированием конфиг файла (а он там есть) и регистрацией пользователей, то были подготовлены дополнительные скрипты, упрощающие взаимодействие с проектом. О том, как с ними работать описано в инструкции.

Спасибо, что дочитали статью до конца. Надеюсь, материал окажется полезным на практике!

Компания Meta* Platforms Inc. (владелец Facebook* и WhatsApp*) признана экстремистской организацией и запрещена на территории Российской Федерации.

Предыдущая статья Следующая статья

Попробуйте безопасную ВКС-платформу Труконф!

ВКС-решение TrueConf Server работает внутри вашей закрытой сети без подключения к интернету
и позволяет собирать до 1500 человек в одной конференции!

Труконф

Крупнейшее ВКС-сообщество в России

Живой диалог с разработчиками, помощь с настройкой ВКС-систем, полезные материалы, ранние доступы и бета-версии — всё в специальном чате @trueconf_talks.

Подписаться
Видео+Конференция

Актуальные новости из мира ВКС

Подписывайтесь на канал нашего информационного партнёра «Видео+Конференция», чтобы быть в курсе последних новостей в сфере видеоконференцсвязи и AV-оборудования.

Подписаться Перейти на сайт

Содержание