постинг в Телеграм на PHP текста html и изображения к нему. все в одном

12
lutskboy
На сайте с 22.11.2013
Offline
179
#11
Genius Ideaing #:
подпись (caption) ограничена 100 символами.

вот пример https://skr.sh/sPByTp9hxkg

я делал плагин для дле.  sendPhoto method. меня и 1000 устраивает. и ты так не сделаешь чтоб было больше

делай 2 метода. фото и текст. но ето уже не то

D
На сайте с 05.02.2022
Offline
40
#12
Нет, никак такого не сделать по апи. Сам сталкивался. Или картинка, или пост, вместе никак. 

Правда, я сильно не искал, но помню не мог найти методов объединить
Genius Ideaing
На сайте с 12.02.2024
Offline
33
#13
dzthd #:
Нет, никак такого не сделать по апи. Сам сталкивался. Или картинка, или пост, вместе никак. 

Правда, я сильно не искал, но помню не мог найти методов объединить

вот жесть!

а yaGPT 3й версии...

уверяет, что это можно сделать...

правда, он готового решения не дает...

какой то класс на PHP используется...

ну, нет. так нет. я уже смирился.

сделал пока по отдельности.

сначала развернутый пост текстовый с html разметкой

потом следующий пост с фото, где в подписи немного дублирую простым текстом...  о чем   изображение.. и ссылку на веб-страницу.  с подробной инфой, из поста выше что делаю..

хорошо что в caption к картинке можно гиперссылку вставлять.. точнее URL... а Телеграм делает ее гиперссылкой..

ну. пусть будут такие костыли...

Качественный хостинг с саппортом: https://clck.ru/3DKmVu / Есть Идеи! Ищу хороших людей для практической реализации этих идей! Мой Телеграм: https://clck.ru/396JFF
E
На сайте с 10.02.2024
Offline
9
#14
Genius Ideaing #:

в поле caption добавляется только простой текст. без html оформления.

и он ограничен 100 символами. не пойдет это.

нужен полноценный пост в телеграм текста с html разметкой, допустимой Телеграм (как то <a>,  <b>, и т.д.) и чтобы этот пост еще имел и картинку в верхней части...

кто умеет?

В описании этого метода API (sendPhoto) следующие ограничения:

caption String  Optional        Photo caption (may also be used when resending photos by file_id), 0-1024 characters after entities parsing

т.е. текстовое описание картинки от 0 до 1024 символов.

HTML также разрешен, если добавить  'parse_mode' => 'HTML',

Примерно такой полный код должен быть:

<?php

$token = "ваш_токен_бота";
$chat_id = "ID_чата";

// Отправляем изображение

$url = "https://api.telegram.org/bot" . $token . "/sendPhoto";

$post_fields = array(
    'chat_id' => $chat_id,
    'photo' => new CURLFile("путь_к_изображению"),
    'caption' => "Подпись к изображению",
    'parse_mode' => 'HTML',
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Content-Type:multipart/form-data"]);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);

echo $response;

Вот описание всех параметров, которые можете передать дополнительно:

https://core.telegram.org/bots/api#sendphoto

Telegram Bot API
  • core.telegram.org
The Bot API is an HTTP-based interface created for developers keen on building bots for Telegram. To learn how to create and set up a bot, please consult our Introduction to Bots and Bot FAQ . Recent changes March 31, 2024 Added the class BusinessConnection and updates about the connection or disconnection of the bot to a business account...
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий