Размер картинок для Телеграм бота

Когда пользователь отправляет картинки боту, то на PHP скрипт приходит массив превью этих картинок. Последним элементом массива является оригинальная картинка.

Максимальный допустимы размер файла изображения – 20 МБ.

Получение и сохранение графических файлов

Если мы отправим боту картинку (в мессенджере), то получим от Telegram следующий запрос:

Array
(
[update_id] => 699174148
[message] => Array
(
[message_id] => 192
[from] => Array
(
[id] => 1526361849
[is_bot] =>
[first_name] => FirstName
[last_name] => LastName
[username] => UserName
[language_code] => uk
)

[chat] => Array
(
[id] => 1526361849
[first_name] => FirstName
[last_name] => LastName
[username] => UserName
[type] => private
)

[date] => 1670943133
[photo] => Array
(
[0] => Array
(

Как загрузить видео любого размера в TELEGRAM-БОТа и без потери формата видео/ Конструктор SAMBOT.RU


[file_id] => AgACAgIAAxkBAAPAY5iRncFiTaQqFAGQRMV27WCzqbQAAq_FMRvPkMlI5UK0Qv021REBAAMCAANzAAMsBA
[file_unique_id] => AQADr8UxG8-QyUh4
[file_size] => 505
[width] => 90
[height] => 64
)

[1] => Array
(
[file_id] => AgACAgIAAxkBAAPAY5iRncFiTaQqFAGQRMV27WCzqbQAAq_FMRvPkMlI5UK0Qv021REBAAMCAANtAAMsBA
[file_unique_id] => AQADr8UxG8-QyUhy
[file_size] => 2654
[width] => 320
[height] => 226
)

[2] => Array
(
[file_id] => AgACAgIAAxkBAAPAY5iRncFiTaQqFAGQRMV27WCzqbQAAq_FMRvPkMlI5UK0Qv021REBAAMCAAN4AAMsBA
[file_unique_id] => AQADr8UxG8-QyUh9
[file_size] => 11414
[width] => 800
[height] => 566
)

[3] => Array
(
[file_id] => AgACAgIAAxkBAAPAY5iRncFiTaQqFAGQRMV27WCzqbQAAq_FMRvPkMlI5UK0Qv021REBAAMCAAN5AAMsBA
[file_unique_id] => AQADr8UxG8-QyUh-
[file_size] => 16763
[width] => 1280
[height] => 906
)

Напомню, этот запрос мы можем увидеть в файле message.txt после отправки фото.

Здесь нас интересует file_id, в котором указано ID изображения.

Теперь мы можем получить путь к файлу изображения и скачать его. Для этого можно ввести в адресной строке браузера ссылку со следующей конструкцией:

https://api.telegram.org/bot/getFile?file_id=

  • – это токен бота.
  • – ID файла который нужно скачать.

Например, чтобы скачать картинку которую я ранее отправил боту в мессенджере, нужно в адресной строке браузера вписать следующее:

Еще по теме:  Можно ли узнать о нахождении человека в Телеграмме

https://api.telegram.org/bot5741786015:AAGTuEwCBGHmcJP9kO-OzV_xKIduBkbAK6Y/getFile?file_id= AgACAgIAAxkBAAPAY5iRncFiTaQqFAGQRMV27WCzqbQAAq_FMRvPkMlI5UK0Qv021REBAAMCAAN5AAMsBA

В ответе вы получите:

Здесь, в file_path указан адрес картинки.

Чтобы скачать эту картинку мы можем сформировать следующую ссылку:

https://api.telegram.org/file/bot

  • – токен бота.
  • – путь к файлу изображения, который мы получили в результате предыдущего запроса (https://api.telegram.org/bot/getFile?file_id=)

Пример ссылки, перейдя по которой мы скачаем картинку, которая была отправлена боту в мессенджере:

[Создать бот] Иконки и картинки для ботов Телеграм, Фейсбук


https://api.telegram.org/file/bot5741786015:AAGTuEwCBGHmcJP9kO-OzV_xKIduBkbAK6Y/photos/file_0.jpg

Получение и сохранение картинки на сервере

Получение картинки с помощью PHP и её сохранение на сервере можно реализовать следующим образом:

//відповідь на збереження картинки if (!empty($data[‘message’][‘photo’])) < $photo = array_pop($data[‘message’][‘photo’]); $res = sendTelegram( ‘getFile’, array( ‘file_id’ =>$photo[‘file_id’] ) ); $res = json_decode($res, true); if ($res[‘ok’]) < $src = ‘https://api.telegram.org/file/bot’ . TOKEN . ‘/’ . $res[‘result’][‘file_path’]; $dest = __DIR__ . ‘/’ . time() . ‘-‘ . basename($src); if (copy($src, $dest)) < sendTelegram( ‘sendMessage’, array( ‘chat_id’ =>$data[‘message’][‘chat’][‘id’], ‘text’ => ‘Картинка збережена на сервері’ ) ); > > exit(); > ?>

Отправка картинок Telegram боту

Для отправки файлов изображений Telegram боту используют метод sendPhoto.

// Константа токен define(‘TOKEN’, ‘5741786015:AAGTuEwCBGHmcJP9kO-OzV_xKIduBkbAK6Y’); // Функція виклику методів API function sendTelegram($method, $response) < $ch = curl_init(‘https://api.telegram.org/bot’ . TOKEN . ‘/’ . $method); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $response); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); $res = curl_exec($ch); curl_close($ch); return $res; >// Відповідь на текстове повідомлення // Отримуємо текст, який відправив користувач Телеграм боту в месенджері if (!empty($data[‘message’][‘text’])) < $text = $data[‘message’][‘text’]; // Відправили фото в Telegram бот, якщо користувач ввів команду /sendimg if (mb_stripos($text, ‘/sendimg’) !== false) < sendTelegram( ‘sendPhoto’, array( ‘chat_id’ =>$data[‘message’][‘chat’][‘id’], ‘photo’ => curl_file_create(__DIR__ . ‘/foto-ua.jpg’) ) ); exit(); > > ?>

В данном примере, если пользователь отправит нашему Телеграм боту команду /sendimg, то в ответном сообщении от бота, он получит картинку foto-ua.jpg, которая находится на сервере в папке с нашим скриптом.

Код PHP с примером получения и отправки фото

// Константа токен define(‘TOKEN’, ‘5741786015:AAGTuEwCBGHmcJP9kO-OzV_xKIduBkbAK6Y’); // Функція виклику методів API function sendTelegram($method, $response) < $ch = curl_init(‘https://api.telegram.org/bot’ . TOKEN . ‘/’ . $method); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $response); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); $res = curl_exec($ch); curl_close($ch); return $res; >// Відповідь якщо користувач прислав фото в месенджері, а ми його зберегли на сервері if (!empty($data[‘message’][‘photo’])) < $photo = array_pop($data[‘message’][‘photo’]); $res = sendTelegram( ‘getFile’, array( ‘file_id’ =>$photo[‘file_id’] ) ); $res = json_decode($res, true); if ($res[‘ok’]) < $src = ‘https://api.telegram.org/file/bot’ . TOKEN . ‘/’ . $res[‘result’][‘file_path’]; $dest = __DIR__ . ‘/’ . time() . ‘-‘ . basename($src); if (copy($src, $dest)) < sendTelegram( ‘sendMessage’, array( ‘chat_id’ =>$data[‘message’][‘chat’][‘id’], ‘text’ => ‘Картинка збережена на сервері’ ) ); > > exit(); > // Відповідь на текстове повідомлення // Отримуємо текст, який відправив користувач Телеграм боту в месенджері if (!empty($data[‘message’][‘text’])) < $text = $data[‘message’][‘text’]; // Відправили фото в Telegram бот, якщо користувач ввів команду /sendimg if (mb_stripos($text, ‘/sendimg’) !== false) < sendTelegram( ‘sendPhoto’, array( ‘chat_id’ =>$data[‘message’][‘chat’][‘id’], ‘photo’ => curl_file_create(__DIR__ . ‘/foto-ua.jpg’) ) ); exit(); > > ?>

Еще по теме:  Как сделать чтобы Телеграмм не заполнял память на Андроиде

Вас может заинтересовать

  • Telegram бот на PHP: Отправка сообщений в Telegram-канал
  • Создание Telegram бота на PHP: Создание меню для Телеграм бота. Урок 7
  • Создание Telegram бота на PHP: Кнопки в телеграм боте. Урок 6
  • Создание Telegram бота на PHP: Загрузка и скачивание видео. Урок 5
  • Создание Telegram бота на PHP: Отправка и сохранение файлов. Урок 4
  • Создание Telegram бота на PHP: Отправка и получение сообщений. Урок 2
  • Создание Telegram бота на PHP: Регистрация бота и создание чата. Урок 1
  • Создание Telegram бота на PHP: Подготовка к разработке бота. Вступление

Источник: d-nik.site

Добавить изображения и другие вложения в чат-бота

Максимальное число вложений в рассылке — 10 картинок или GIF.

Сумма ширины и высоты любого из изображений не должна превышать 10 000 px. Минимальный размер — 2 px.

Например, если и высота и ширина картинки — 400 px, их сумма будет 400+400 = 800 px., значит, изображение подходит.

Использование вложений снижает максимальное количество символов текста до 1024. Если дополнительно добавить кнопки, вложенных картинок можно будет вставить не более одной. Ограничения связаны с особенностями Telegram.

Как добавить вложения в сценарий чат-бота (в чат-карту)

Перейдите к редактированию вашего бота. Для этого выберите нужного бота в разделе «Чат-боты» или создайте нового.

Нажмите на вашего бота.

Добавить вложения можно в блоках:

  • «Сообщение».
  • «Меню».
  • «Сбор контактов».

Добавить вложения можно в блоки «Сообщение», «Меню», «Сбор контактов».

Чтобы добавить вложение, нажмите в настройках блоков на значок скрепки справа.

Нажмите на значок скрепки для добавления вложения.

Также можно перетащить файл в область текста сообщения и дождаться загрузки.

Перетащите файл в область сообщения.

Чтобы поменять картинки местами, зажмите и перетащите картинку в нужное место.

Для удаления картинки нажмите на крестик в правой верхней части картинки.

перетащите или удалите картинки

Картинки добавлены. В чат-карте это будет выглядеть так.

Пример отображения вложенных картинок в чат-карте.

Как добавить вложения в рассылку

Для создания рассылки перейдите в раздел «Чат-боты — Рассылки».

Еще по теме:  Как автоматически подтягивать новости в Телеграмм канал

Перейдите в раздел «Чат-боты — Рассылки».

Нажмите справа «Создать рассылку».

Нажмите «Создать рассылку».

Чтобы добавить вложение в поле сообщения, нажмите справа на значок скрепки.

 Нажмите на значок скрепки для добавления вложения.

Также можно просто перетащить картинку или гифку в поле контента рассылки и подождать загрузки.

Перетащите файл в поле сообщения.

Для удаления отдельного изображения наведите курсор на файл и нажмите на крестик.

Нажмите на крестик для удаления отдельного вложения.

Для удаления всех картинок нажмите справа на значок удаления.

Нажмите на крестик справа для удаления вложенных файлов.

При необходимости картинки можно поменять местами. Для этого перетащите картинки в подходящее место.

Перетащите файл в нужное место.

Как добавить вложение в окне разговора с оператором

Для перехода в окно связи с оператором откройте раздел «Чат-боты» и нажмите «Онлайн-чаты».

Перейдите в раздел «Чат-боты — Онлайн-чаты».

Чтобы добавить вложение, нажмите справа внизу на значок скрепки.

Для добавления вложения нажмите на значок скрепки.

Также можно перетащить нужный файл в область общения.

Перетащите файл в область сообщения.

Для удаления отдельных картинок наведите курсор на картинку и нажмите на крестик.

Нажмите на крестик для удаления отдельного вложения.

Чтобы удалить все изображения, нажмите справа на значок удаления.

Нажмите на крестик справа для удаления вложенных файлов.

Картинки можно менять местами.

Перетащите файл в нужное место.

Так вложения будут выглядеть в полученном сообщении в Telegram.

Источник: www.unisender.com

Image Resize

Life is an adventure—enjoy the ride and the world through the eyes of the National Geographic photographers.

Online

Fox NewsFox News

America’s #1 cable news network, delivering you breaking news, insightful analysis, and must-see videos on Telegram.

Online

M MSN

MSN Bot —
All about FCBarcelona ❤️

✔️ Schedule.
✔️ Full match results.
✔️ Images.
✔️ News.
✔️ And More.

Online

BotoStore — catalog of voice and chatbots, AI https://botostore.com/c/imageresizebot/» target=»_blank»]botostore.com[/mask_link]

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