Задача следующая: Отправляем в телеграм канал, используя API, файл – например картинку, и после мы хотим ее скачать через браузер.
Решения этой задачи состоит из трех этапов.
1) Отправляем картинку в канал:
1 2 3 |
https://api.telegram.org/bot<token_bot>/sendPhoto?chat_id=<chat_id>&photo=https://site.ru/picture.jpg |
В ответ мы получим json ответ, где нас интересует file_id вида AgACAgQAAx0ESJQaLQACUEVfHs3AdexB_VKv3E-G3D-KAaMHJAAChKsxG9e99FDRZVqzpL9a3S0i5SJdAAMBAAMCAAN4A
2) Теперь нам нужно получить file_path. Для этого отправим следующий запрос:
1 2 3 |
https://api.telegram.org/bot<token_bot>/getFile?file_id=<file_id> |
Здесь нужно учесть, что бот во всех запросах должен быть один и тот же. Нельзя для отправки картинки использовать один бот, а для того, чтобы потом получить url, другой, <file_id> берем из предыдущего запроса.
Будет возвращен json ответ, где нас интересует ключ file_path, в моем примере file_path содержал – photos/file_0.jpg
3) Скачиваем картинку. Отправляем следующий запрос:
1 2 3 |
https://api.telegram.org/file/bot<token_bot>/photos/file_0.jpg |