Как отправить файл через Telegram bot

Я пытаюсь отправить PDF-файл, используя URL-адрес файла и используя метод sendDocument, проблема в том, что я не могу получить доступ к файлу напрямую из-за сервера, на котором он хранится. Я попытался использовать ответ, предоставленный в этом сообщении: readFileSync из URL-адреса для СМИ Twitter — node.js

EDIT: Код, который я использую для получения PDF-файла, выглядит точно так же, как код в ответе на сообщение, которое я предоставил:

function getImage(url, callback) < https.get(url, res =>< // Initialise an array const bufs = []; // Add the data to the buffer collection res.on(‘data’, function (chunk) < bufs.push(chunk) >); // This signifies the end of a request res.on(‘end’, function () < // We can join all of the ‘chunks’ of the image together const data = Buffer.concat(bufs); // Then we can call our callback. callback(null, data); >); >) // Inform the callback of the error. .on(‘error’, callback); >

Чтобы отправить файл, я использую что-то вроде этого:

Отправляем файлы через Telegram Bot [JavaScript, Node.js]


getImage(url, function(err, data) < if(err)< throw new Error(err); >bot.sendDocument( msg.chat.id, data, ); >)

Источник: question-it.com

Как отправить файл через Telegram Bot

Мне нужно отправить TXT-файл с помощью TelegramBot API .

и есть проблема:

user11298060 02 апр ’19 в 08:22 2019-04-02 08:22
2019-04-02 08:22

3 ответа

Чтобы завершить ответ Донни, я хотел бы добавить пример отправки .txt файл в качестве документа.

Похоже, вы используете OS X в качестве операционной системы, которая имеет curl Утилита предустановлена.

Откройте терминал и сделайте запрос вот так:

user2315573 13 май ’19 в 20:45 2019-05-13 20:45
2019-05-13 20:45

Еще по теме:  Бот который меняет голос в Телеграмме

Из официальной документации Telegram

Отправка файлов Существует три способа отправки файлов (фотографии, наклейки, аудио, мультимедиа и т. Д.):

Если файл уже хранится где-то на серверах Telegram, вам не нужно его повторно загружать: каждый объект файла имеет поле file_id, просто передайте этот file_id в качестве параметра вместо загрузки. Для файлов, отправляемых таким способом, ограничений нет.

Предоставьте Telegram URL-адрес HTTP для отправляемого файла. Telegram загрузит и отправит файл. Максимальный размер 5 МБ для фотографий и 20 МБ для других типов контента. Разместите файл, используя multipart/form-data обычным способом, который файлы загружаются через браузер. Максимальный размер 10 МБ для фотографий, 50 МБ для других файлов.

Отправка по file_id

Невозможно изменить тип файла при повторной отправке по file_id. Т.е. видео не может быть отправлено как фотография, фото не может быть отправлено как документ и т. Д. Эскизы невозможно повторно отправить. Повторная отправка фотографии по file_id отправит все ее размеры. file_id уникален для каждого отдельного бота и не может быть передан от одного бота другому.

Отправка по URL

При отправке по URL целевой файл должен иметь правильный тип MIME (например, audio/mpeg для sendAudio и т. Д.). В sendDocument отправка по URL в настоящее время будет работать только для файлов gif, pdf и zip. Чтобы использовать sendVoice, файл должен иметь тип audio/ogg и иметь размер не более 1 МБ. Голосовые заметки объемом 1–20 МБ будут отправлены в виде файлов. Другие конфигурации могут работать, но мы не можем гарантировать, что они будут работать.

Это то, что вам нужно от вашего вопроса:

Как отправить документ в чат-боте. Как отправить файл в чат-боте.Чат бот для бизнеса. FlowXo

Еще по теме:  Как улучшить качество голосовых сообщений в Телеграмме на Андроид

Разместите файл, используя multipart/form-data обычным способом, который файлы загружаются через браузер. Максимальный размер 10 МБ для фотографий, 50 МБ для других файлов

user6586730 02 апр ’19 в 08:31 2019-04-02 08:31
2019-04-02 08:31

Вы должны использовать метод POST вместо GET. Например, я использую https://github.com/php-curl-class/php-curl-class .

$url = ‘https://api.telegram.org/bot’.$botId.’/sendDocument’; $curl = new Curl(); $curl->post($url, [ «chat_id» => $chatId, «document» => new CURLFile($file_path) ]);

Источник: stackru.com

Как отправить файл через Telegram Bot

Мне нужно отправить текстовый файл с помощью TelegramBot API.

и есть проблема:

02.04.2019 10:22

Оператор pass в Python — это простая концепция, которую могут быстро освоить даже новички без опыта программирования.

Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции — это способ манипулировать массивами и играть с массивами данных. Благодаря.

Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний.

Все о массиве Dependency и его связи с useEffect.

Toor — Travel Booking Angular Template один из лучших Travel https://reddeveloper.ru/questions/kak-otpravit-fail-cherez-telegram-bot-A84N7″ target=»_blank»]reddeveloper.ru[/mask_link]

Рейтинг
( Пока оценок нет )
Загрузка ...