gpt4 book ai didi

php - 如何将大文件从 URL 发送到 Telegram 机器人?

转载 作者:可可西里 更新时间:2023-11-01 01:14:27 29 4
gpt4 key购买 nike

我有一些大文件(MP4Zip 格式),我想通过 Telegram 机器人将它们发送到我的聊天室,我使用了以下代码:

file_get_contents('https://api.telegram.org/bot[[app:token]]/sendDocument?chat_id=24523586&document='.$fileAddress);

但它只能发送小于 50MB 的小文件!但我知道对于通过 file_id 发送的文档没有文件大小限制。可以看到this page
现在如何为我的文件制作file_id?我的文件上传到我的服务器上,我正在使用 PHP。

最佳答案

Telegram bot API 只能通过 url 参数发送小于 20 MB 的文件,你应该查找 Sending Files部分。

如果您想发送 20-50 MB 的文件,您应该下载并重新上传到 Telegram bot API 服务器。
你可以引用这个简单的代码

$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.telegram.org/bot131210513:AXXXXXX/sendDocument?caption=Hello+World&chat_id=24523586',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: multipart/form-data'
],
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => [
'document' => curl_file_create('/etc/hosts', 'plain/text', 'Hosts-file.txt')
]
]);
$data = curl_exec($curl);
curl_close($curl);

关于php - 如何将大文件从 URL 发送到 Telegram 机器人?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43256917/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com