Как отправить файлом в телеграм
Какой максимальный размер отправляемых файлов
Для многих пользователей, после использования других мессенджеров, стало откровением возможность отправки в Телеграмме файлов размером до 1.5 ГБ.
Это звучит и правда здорово, ведь каждый сталкивался с необходимостью сжимать ролики для отправки или резать их с помощью встроенных возможностей на несколько частей.
Отправка файлов через мобильное приложение
В процедуре нет ничего сложного, да и особых различий между операционными системами iOS и Android OS нет. Поэтому рассмотрим единую инструкцию:
- Запускаем Телеграм и пролистываем перечень диалогов до нахождения нужного.
- Активируем иконку в виде скрепки в левом нижнем углу пользовательского окна.
- В выпадающем списке выбираем категорию передаваемого файла.
Используем облачное хранилище
В чате появится ваш файл из облачного хранилища. В зависимости от его размера и скорости интернета на загрузку может потребоваться время. Когда ваш собеседник зайдет в чат и увидит файл он может его скачать на телефон, и в зависимости от типа файла, при попытке открыть его, запустится соответствующий инструмент. На нашем примере — это книга, при попытке открыть её система предлагает запустить советующую программу.
Данная инструкция подойдет, если в используете хранилище Гугл Диск. Если вы используете другое облако — шаги, действия и названия кнопок интерфейса будут отличаться.Отправка медиафайлов в компьютерной версии
Компьютерная версия Telegram, в отличии от большинства аналогов, полностью независима. Это значит, что вам не нужно синхронизировать ПК и смартфон для получения доступа к учетной записи пользователя.
Единственный момент – при первом запуске, система попросит вас ввести данные для авторизации, то есть выбрать регион проживания и прописать номер телефона, привязанный к учетной записи пользователя.- Запускаем Телеграмма на рабочем столе.
- Пролистываем список диалогов в левой части пользовательского интерфейса.
- Переходим в окно чата, активируем иконку в виде скрепки в левом нижнем углу программного интерфейса.
- Автоматически открывается Проводник, прописываем путь до сохраненного файла.
- Подтверждаем серьезность намерений и ждем завершения загрузки.
Заключение
Отправка медиафайлов в Телеграмме – это удобный вариант обмена пользовательской информацией с собеседниками, друзьями, коллегами по работе.
Сама процедура довольно проста в реализации, и практически идентична для всех операционных систем. Большинство пользователей радуется за возможность переслать человеку файл любого расширения весом до 1.5 ГБ, что на порядок больше, чем предлагают разработчики других мессенджеров.
Telegram боты позволяют автоматизировать многие процессы. Их использование не ограничивается одним чатом, по сути — бот это всего лишь интерфейс ввода-вывода, который помимо текста также может принимать и передавать файлы: изображения, видео, аудио, документы…
- Для пользователей максимальный размер файла — 1.5Гб
- Боты ограничены размером всего лишь в 50мб
Telegram API
Раз пользователи могут загружать файлы до 1.5Гб — значит и мы можем — для этого создадим агента (назвал чтобы не путать с ботами) который будет работать в связке с нашим Telegram ботом. Для этого потребуется отдельный аккаунт и Telegram API.
Что делает агент?
Бот не может загружать файлы больше 50мб, но если у него есть file_id уже загруженного на сервера Telegram файла — то он может его пересылать. Так что алгоритм следующий
- Приложение, работающее на сервере через Bot API формирует файл для отправки
- Вызывает агента для загрузки файла на сервера Telegram
- Получает от агента file_id
- Пользуется загруженным файлом
Пример кода
Комментарии:
Вот и весь код — тут используется библиотека Telethon — при запуске программе передается путь к файлу для отправки, имя файла, chat_id — для кого предназначается данный файл), имя бота, который вызвал агента(например у меня это beta и release боты).
client.send_file
Просто загрузить файл на сервер через upload, получить file_id и передать его боту — не выйдет, file_id работает только внутри чата, в котором он был создан — чтобы наш бот мог переслать файл пользователю по file_id — агент должен переслать ему этот файл
— тогда бот получит свой file_id для этого файла и сможет распоряжаться им.
caption=str(. ) — wat?!
Агент пересылает файлы только боту, добавляя комментарий в caption-у меня это:
- chat_id конечного пользователя
- длительность трека
- object_id в базе данных, к которому нужно привязать file_id, чтобы повторно не загружать файл(индексация, оптимизация и все такое)
Пример вызова в коде бота
На диске в path_file_mp3 уже сохранен файл для загрузки, вызываем подпрограмму и ждем ее завершения.
Читайте также: