Я пытаюсь отправить 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]