Резервное копирование включает в себя файлы на диске. Но возникает вопрос: как сохранить информацию с облачных сервисов? Например, архивы всех переписок из мессенджеров Telegram, Whatsapp, Viber и др. Ведь эта переписка может быть потеряна в любой момент. Например, собеседник принимает решение удалить переписку или мессенджер блокирует доступ к аккаунту. Для безопасности лучше заблаговременно скачать всю информацию и сохранить локально.
Эта проблема также возникает при переносе данных из старого ненужного мессенджера. Скажем, пользователь принимает решение навсегда уйти из Skype — и хочет сохранить все переписки за все годы. Или меняет аккаунт — и сохраняет переписку со старого аккаунта.
Может возникнуть ситуация, когда близкий человек ушёл из жизни, а мы хотим сохранить для родственников историю его переписок. Для таких случаев разработчики Telegram тестируют функцию «Наследство», но она пока не готова.

Поэтому для резервного копирования информации в данный момент используются специализированные решения, в том числе неофициальные клиенты.
Опенсорсные инструменты
Для бэкапа Telegram есть несколько инструментов. Во-первых, можно самостоятельно написать простого бота или воспользоваться готовым, как Telegram Downloader или Save Any Bot на гитхабе.
Загрузчик Save Any Bot сохраняет на диске информацию из каналов, групп и чатов, включая изображения, аудио, видео, кружки, документы, стикеры. Поддерживает параллельное скачивание для максимальной утилизации канала, сортирует загрузки в личное хранилище. Можно подключить несколько Telegram-аккаунтов, без нарушения условий использования Telegram. Бот устанавливается одной командой и работает локально.
Скачанные файлы можно сохранять на диск, в облачное хранилище (S3) или обратно в Telegram (в другой канал).
Для работы нужно отредактировать конфигурационный файл такого вида:
lang = "en" # Language setting, "en" for English [telegram] token = "" # Your bot token, obtained from @BotFather [telegram.proxy] # Enable proxy for Telegram enable = false url = "socks5://127.0.0.1:7890" [[storages]] name = "Local Disk" type = "local" enable = true base_path = "./downloads" [[users]] id = 114514 # Your Telegram account id storages = [] blacklist = true
Поддерживается запуск в докер-контейнере:
docker run -d --name saveany-bot \ -v ./config.toml:/app/config.toml \ -v ./downloads:/app/downloads \ ghcr.io/krau/saveany-bot:latest
Подробнее см. в документации.
Во-вторых, есть другие опенсорсные инструменты для Telegram, которые можно использовать для резервного копирования и других целей:
TG-FileStreamBot — бот, который начинает стриминг медиаконтента в телеграме, не дожидаясь полного скачивания файлов
td, gotd/td — опенсорсный клиент для Telegram, написанный на Go (MTProto API)
GoTGProto — вспомогательная обёртка для клиента gotd/td, её проще установить и использовать для отправки сообщений и скачивания контента
tdl — набор инструментов на Go для работы с Telegram, основной из них — Telegram Downloader для скачивания контента

OpenTgResearcher — инструмент анализа Telegram-чатов и скачивания содержимого. Файлы, сообщения, статистика чатов скачиваются в отдельное хранилище. Программу можно использовать как инструмент OSINT-исследований и парсер чатов, просматривать расширенную статистику участников чата и т. д.


Catogram — экспериментальный клиент на базе исходников официального клиента для Android, от бывшего разработчика Telegram
Телега с использованием ресурсов VK, что обсуждалось на Хабре
Другие неофициальные клиенты
Есть сторонние универсальные клиенты, которые работают с разными мессенджерами и протоколами, в том числе Pidgin, Miranda NG, Trillian, Franz и другие. Многие из них поддерживают Telegram через плагины.

Есть неофициальные клиенты и для других мессенджеров. Например, TM SGNL от TeleMessage, неофициальный клиент для Signal.
В принципе, свой клиент для Telegram может написать любой разработчик, это не очень сложная задача, некоторые даже документируют процесс.
Примечание. Под видом неофициальных клиентов Telegram часто распространяются вредоносные программы, так что безопасно использовать эти клиенты можно только после проверки исходного кода.
