Я хотел отправить документ через API бота Telegram, и мой документ хранится локально. Я пытался:
https://api.telegram.org/botToken/sendDocument?chat_id=-5278798https://question-it.com/questions/12374034/kak-otpravit-dokument-cherez-telegram-bot-api» target=»_blank»]question-it.com[/mask_link]
Отправка файла в сообщение в Telegram
В новой записи я расскажу как настроить отправку файлов в сообщении, в Telegram. Я уже рассказывал как отправлять простые текстовые сообщения из формы в Telegram, теперь давайте добавим к ним ещё и файлы.
Если у вас не получается настроить отправку письма, вы можете получить у меня готовую форму — https://prog-time.ru/telegram_integration/
В данной записи я пропущу этап создания бота и сразу начну со скрипта для отправки.
В этот раз мы будем использовать функцию для отправки запроса и функцию для сбора отправляемых данных слитую в одну!
Отправка сообщений и файлов в Telegram
Функция sendFileTelegram имеет 1 параметр — это данные файла из массива $_FILES. В неё мы записываем токен бота и id группы
/* ОТПРАВКА ФАЙЛА В ТЕЛЕГРАММ */ function sendFileTelegram($fileTempName) < /*токен который выдаётся при регистрации бота */ $token = «163436023214:AAFA1kUayC4Y2D123sTlBjPhlxY-9kR5wmyzk»; /*идентификатор группы*/ $chat_id = «-5574344497»; $urlSite = «https://api.telegram.org/bot/sendDocument»; $document = new CURLFile(realpath($fileTempName)); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $urlSite); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, [«chat_id» => $chat_id, «document» => $document]); curl_setopt($ch, CURLOPT_HTTPHEADER, [«Content-Type:multipart/form-data»]); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $out = curl_exec($ch); curl_close($ch); > sendFileTelegram($_FILES[«fileImg»][«tmp_name»]);
Для получения информации для отправки нужно создать форму, в которой прописать поле input типа file. После этого, в обработчике получаем данные из поля. Если несколько файлов, то можно сделать несколько запросов через цикл
foreach($_FILES as $file)
На этом всё!
Больше интересных статей в нашей группе — https://vk.com/progtime
Вы так же можете разместить свой вопрос на нашем форуме, где другие программисты смогут вам помочь в решение вашей задачи — https://vk.com/prog_time
Так же прокачивайте свои навыки на нашем канале — https://www.youtube.com/c/ProgTime
Наши планы
- Написание материала для курса по разработке ботов на Telegram
- Разработка универсального парсера на PHP
Поддержите мой сайт!
Каждый переведённый донат, мотивирует на создание новых записей и уроков на YouTube
Источник: prog-time.ru