使用 Telegram Bot 从 URL 发送照片 - php

问题描述 投票:0回答:1

对不起,我英文写得不好。 当我向 telegram 发送链接时,telegram 会自动显示该链接。 例如,当我发送此消息时: http://bing.com/az/hprichbg/rb/LaurelMoss_EN-AU9551903343_1366x768.jpg 在电报中你可以看到图片。 该图片链接将过期。 我如何无法将图片链接发送到电报,并使电报抓取它并将其保存在其服务器上。然后显示没有链接的图像? 而且我无法在我的服务器上获取图像。 (我的服务器是周) 我使用此类发送电报链接:

<?php
include("Telegram.php");

$telegram = new Telegram('my_token');


$content = array('chat_id' => '@my_Channel', 'text' => 'http://bing.com/az/hprichbg/rb/LaurelMoss_EN-AU9551903343_1366x768.jpg');
$telegram->sendMessage($content);
?>
php telegram-bot
1个回答
4
投票

将照片上传到机器人 API 的唯一方法是将图像的内容发送到那里。这就是为什么无论如何你都必须将图像下载到你的服务器。但您可以在 API 请求完成后立即将其删除。或者甚至根本不保存图像:

$telegram->sendPhoto(['chat_id' => '@my_Channel', '照片' => file_get_contents('URL')]);

这是您使用的库中的示例https://github.com/Eleirbag89/TelegramBotPHP/:

// Load a local file to upload. If is already on Telegram's Servers just pass the resource id
$img = curl_file_create('test.png','image/png');
$content = array('chat_id' => $chat_id, 'photo' => $img );
$telegram->sendPhoto($content);

`

© www.soinside.com 2019 - 2024. All rights reserved.