电报机器人是否有群发消息限制?
Is there a bulk messaging limit in telegram bots?
我正在向我的所有 bot 订阅者发送消息,当订阅者达到大约 400 时,我的 bot 不会向除了少数人之外的所有人发送消息。我的代码在 php 中并且我使用了 sleep() 函数。
我对其进行了测试,发现在发送消息时,如果消息未在 1 分钟内发送,发送过程将停止,而且我知道每秒发送 30 条消息有限制,但不是这个。
elseif ($text == '/send' && $chatID == 353575758){
$sql = $c->query("SELECT * FROM corona ORDER BY id");
$row = $sql->num_rows;
$counter = 0;
$sent = 0;
while($exe = $sql->fetch_array()) {
if($counter < 30) {
$counter++;
$sent ++;
}
else {
$sent++;
sleep(1);
$counter = 1;
$bot->sendMessage([
'chat_id' => 353575758,
'text' => $sent,
'parse_mode' => 'HTML',
]);
}
}
$bot->sendMessage([
'chat_id' => 353575758,
'text' => "Completed - sent for ".$sent." Users",
]);
}
我想,问题出在PHP的执行时间限制。默认情况下,脚本运行 30 秒,但可以增加它。
ini_set('max_execution_time', '600'); // Set execution time limit of 600 seconds
ini_set('max_execution_time', '0'); // Remove execution time limit
我正在向我的所有 bot 订阅者发送消息,当订阅者达到大约 400 时,我的 bot 不会向除了少数人之外的所有人发送消息。我的代码在 php 中并且我使用了 sleep() 函数。
我对其进行了测试,发现在发送消息时,如果消息未在 1 分钟内发送,发送过程将停止,而且我知道每秒发送 30 条消息有限制,但不是这个。
elseif ($text == '/send' && $chatID == 353575758){
$sql = $c->query("SELECT * FROM corona ORDER BY id");
$row = $sql->num_rows;
$counter = 0;
$sent = 0;
while($exe = $sql->fetch_array()) {
if($counter < 30) {
$counter++;
$sent ++;
}
else {
$sent++;
sleep(1);
$counter = 1;
$bot->sendMessage([
'chat_id' => 353575758,
'text' => $sent,
'parse_mode' => 'HTML',
]);
}
}
$bot->sendMessage([
'chat_id' => 353575758,
'text' => "Completed - sent for ".$sent." Users",
]);
}
我想,问题出在PHP的执行时间限制。默认情况下,脚本运行 30 秒,但可以增加它。
ini_set('max_execution_time', '600'); // Set execution time limit of 600 seconds
ini_set('max_execution_time', '0'); // Remove execution time limit