Как отправить фото на канал телеграммы с ботом telegram?

Я могу отправить фотографию в чат с помощью идентификатора чата, используя этот код:

<?php
$bot_url    = "https://api.telegram.org/bot<token-bot>/";
$ch = curl_init($bot_url.'SendPhoto');
$cfile = new CURLFile(realpath('file.png'),'image/png','photo.png');
$data = array(
'chat_id' => '118186395',
'photo' => $cfile ,
'caption' => 'testing'
);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
echo curl_exec($ch);
?>

Но если я изменю chat_id Значение идентификатора моего канала, я получаю пустой ответ от телеграммы, и фотография не отправляется.

1

Решение

Ваш канал должен быть публичным и chat_id должен быть в формате @channelusername,

Источник

0

Другие решения

Я использую этот код, но не могу отправить фотографию на канал:

<?php
$bot_url    = "https://api.telegram.org/bot<token-bot>/";
$ch = curl_init($bot_url.'SendPhoto');
$cfile = new CURLFile(realpath('file.png'),'image/png','photo.png');
$data = array(
'chat_id' => '@p30qom',
'photo' => $cfile ,
'caption' => 'testing'
);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
echo curl_exec($ch);
?>

Вы можете проверить этот код и приведенный выше код?

0