Я (Aryn — arynme), и X (teleX) уже давно сидим в Telegram и пытаемся разобраться в нём, вплоть до используемых технологий и состава команды.
Около года назад мы начали тестировать лимит на сообщения в различных видах чатов Telegram. Так мы и узнали об описанной проблеме и последствиях.
Telegram безлимитен
![Главная веб-страница Telegram может похвастаться тем, что у сервиса «нет ограничений» на размер чатов. Главная веб-страница Telegram может похвастаться тем, что у сервиса «нет ограничений» на размер чатов.](https://habrastorage.org/getpro/habr/upload_files/f7c/6b5/a53/f7c6b5a53ca745f47e44fa04d57cb52c.png)
Основа основ
Все полученные пользователем сообщения в личных чатах (обычные группы, с ботами и пользователями) хранятся в его «ящике». Также, «ящик» есть и у других типов чатов — супергрупп и каналов.
У обоих типов ящиков разные лимиты на количество сохраняемых сообщений. Судя из того, что «Telegram безлимитен», означает, что и «ящик» должен быть безлимитен.
Проблема
Как для ваших личных сообщений (все индивидуальные чаты с пользователями и ботами), так и для обычных групп существует единый общий «счетчик» входящих и исходящих сообщений. Этот счетчик, после достижения определенного лимита приведет к тому, что Telegram перестанет показывать Вам ваши сообщения после определенной даты.
Те, кто сталкивается с этой проблемой, являются активными пользователями Telegram и групповых чатов — сообществ и людей, наиболее зависимых от этого мессенджера. Возьмём, к примеру, популярного разработчика ботов, который «по ошибке» настроил своих ботов на отправку логов в личные сообщения, тем самым потеряв множество сообщений из важных личных чатов:
Никогда не засоряйте себе логами и другими ненужным мусором личные сообщения. И в целом храните всю важную информацию в отдельном канале, а если очень важная — тогда дублируйте на другие хранилища.
Я отправлял себе ботом информацию об ошибках. И в итоге он отправил их больше 200 тысяч. После чего у меня везде удалились сообщения с января по октябрь 21 года.
Через специальный бот я узнал, что у меня сейчас как раз 3 миллиона 200 тысяч сообщений. Видимо в телеграме лимит 3 миллиона, хотя раньше писалось о том, что лимит на сообщения был снят. Даже экспорт GDPR не загружает их. Каким‑то чудом потом на Telegram Mac клиенте загрузились сообщения, но медиа не загружаются всё равно.
Проблема не нова и есть не только у вышеупомянутого разработчика ботов, но и других личностей: (на скриншоте обращение к Павлу Дурову, где подписчики жалуются на удаление комментариев из постов канал Вячеслава Володина, подозревая ограничения на свободу слова)
![https://t.me/vv_volodin/220 https://t.me/vv_volodin/220](https://habrastorage.org/getpro/habr/upload_files/cf0/ac0/f59/cf0ac0f595aa758210b415e22b8fef62.png)
Есть ещё один пример, где у канала Двач не открывались комментарии: (P.S.: комментарии и по сей день включены, просто адрес канала поменяли на более короткий - ru2ch)
Немного дополнительной информации
Вы можете проверить свой лимит сообщений, который Вы «потратили». Для этого необходимо отправить сообщение в Ваше «избранное», воспользовавшись одним из этих двух ботов: ArynIDBot или accountcountbot.
Если id сообщений будет больше 1 миллиона, то, вероятно, что определённая часть ваших сообщений утеряна. Бота можно использовать не только в «Избранном», но и в супергруппах и каналах. Главное запомнить, что в обычной группе будет показываться по-прежнему счётчик сообщений Вашего ящика. Чтобы в поиске найти все сообщения, достаточно в запросе написать «-» (дефис) или «+» (плюс).
Тесты
Для тестов на первый тип ящика мы отправляли teleX большое количество сообщений использую кучу созданных нами ботов.
Также, можно посмотреть как плавно пропадают сообщения в «Избранном»:
![](https://habrastorage.org/getpro/habr/upload_files/a83/33b/d92/a8333bd92e4eb36ca9906c3d3abb9d01.png)
А для последующих тестов мы использовали кучу созданных нами ботов и отсылали сообщения в канал и в прикреплённый чат (супергруппа, WhereIsMessages). Начали мы тест 14 июля 2022 го, а закончили 21 сентября 2022-го (с длительными перерывами).
Что же из этого вышло?
Ещё во время тестов мы видели, как пропадают старые сообщения в чате. Мы удалили почти 1 миллион сообщений в надежде, что хотя бы часть сообщений вернётся обратно в групповой чат, но этого не произошло. После окончания тестов мы заметили как быстро менялся счетчик количества сообщений в чате при поиске: (временно)
![Счётчик сообщений WhereIsMessages, №1 Счётчик сообщений WhereIsMessages, №1](https://habrastorage.org/getpro/habr/upload_files/df3/5e3/abb/df35e3abb0900b93e00a1e037b152257.png)
![Счётчик сообщений WhereIsMessages, №2 Счётчик сообщений WhereIsMessages, №2](https://habrastorage.org/getpro/habr/upload_files/4a6/8a3/874/4a68a38748e48b6512ff2689a7d822df.png)
![Счётчик сообщений WhereIsMessages, №3 Счётчик сообщений WhereIsMessages, №3](https://habrastorage.org/getpro/habr/upload_files/62b/f3d/a23/62bf3da230484d179de464e0b1cd0172.png)
На сегодняшний день сохранилось лишь около 900 тысяч сообщений.
Решена ли данная проблема с вводом топиков (форумов, тем)?
Нет. В них также действует лимит в 1 миллион сообщений. В них также пропадут старые сообщения, когда группа перевалит за миллион сообщений. Интересно то, что один популярный топик при высокой активности пользователей может затереть все предыдущие созданные топики. Мы проверяли данный лимит и на форумах. Пример данной группы — offtopicgroup
Виджет комментариев для сайтов
Telegram дает возможность использовать их виджет комментариев на вашем сайте, но даже в них есть тот же самый подвох. Давайте представим Хабр с этим виджетом.
![](https://habrastorage.org/getpro/habr/upload_files/fc2/094/951/fc20949516be5ce4f14fe64c6b0e6764.jpg)
Подвох этого виджета в том, что у нас по-прежнему ограничение в 1 млн, но это еще полбеды. Оказывается, что это ограничение распространяется на все страницы сайта. Получается, что если у Хабра произойдет на одной статье хабраэффект, то комментарии начнут пропадать во всех других статьях. Они начнут затираться. Таким образом, этот виджет комментариев мы бы не рекомендовали использовать на больших сайтах.
Ссылка на эксперимент: https://comments.app/view/xrNekuh3/
![](https://habrastorage.org/getpro/habr/upload_files/d92/875/ffc/d92875ffc30bd4f0ce36153a2cc9bcc3.png)
Как мы пытались решить проблему
Мы создали баг-репорт на официальном сайте Telegram.
После того, как мы начали распространять наш баг-репорт в крупных Telegram чатах и каналах, случилось чудо:
Команда Telegram удалила всю историю сообщений teleX до 2022 года. Он потерял все свои сообщения из-за того, что протестировал, подтвердил и рассказал о баге. У команды Telegram не должно быть прав удалять переписку пользователей. Это буквально то, что происходит, когда сообщения хранятся в открытом виде на серверах Telegram.
Также, Telegram и ранее пытался устранить эту проблему, но не получилось:
![https://twitter.com/telegram/status/1060910769410371584 https://twitter.com/telegram/status/1060910769410371584](https://habrastorage.org/getpro/habr/upload_files/719/56a/d58/71956ad58dfa4c09189295b9c15d5c6c.png)
Поддержка же утверждает, что дело в используемых пользователями клиентах.
Заключение
В конечном счёте это вынуждает нас прибегать к обходным путям.
Активные пользователи Telegram должны помнить об этом ограничении и создавать отдельные каналы для своих мемов, музыки, логов и т.д.
Для многих крупных сообществ Telegram с тысячами подписчиков в супергруппах и каналах также создает проблему непрерывности, которая неизбежна: старые сообщения просто исчезают, а важная история безвозвратна. Обратите внимание, что с другими сервисами, ориентированными на сообщество, такими как Discord, это не проблема:
![https://bugs.telegram.org/c/19148 https://bugs.telegram.org/c/19148](https://habrastorage.org/getpro/habr/upload_files/0f2/75c/529/0f275c52920ecd58d332bef325204fe5.png)
Команда Telegram не просто может читать все ваши сообщения в открытом виде из личных чатов, но еще может и удалять их. Также поэтому пока не используйте Telegram для хранения важной информации.
![Мем Мем](https://habrastorage.org/getpro/habr/upload_files/7ab/b23/a13/7abb23a13068aa7eb2cb6d849ac96bbe.gif)
Фидбеки ожидаем в комментариях или в ArynFeedBot.