如何使用PHP每分钟将通知发送到电报机器人?

时间:2019-06-08 05:20:05

标签: php telegram telegram-bot

这种情况如下,我想每分钟在Telegram频道上发送消息或通知(没有用户发送的命令)。

碰巧,我每次输入URL即可发送消息,并且消息已发送,但是我希望每分钟自动发送一次(不输入URL)。我不知道该怎么做,谢谢。

<?php $botToken="<<BOT-TOKEN>>" ; $website="https://api.telegram.org/bot" .$botToken; $chatId="337957895" ; //**===>
  
    

注意:此chatId必须是一个人的chat_id,而不是另一个机器人chatId !!! ** $ params = ['chat_id'=> $ chatId,'text'=>'这是我的消息!!!' ,]; $ ch = curl_init($ website。'/ sendMessage'); curl_setopt($ ch,CURLOPT_HEADER,false); curl_setopt($ ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ ch,CURLOPT_POST,1); curl_setopt($ ch,CURLOPT_POSTFIELDS,($ params)); curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,false); $ result = curl_exec($ ch); curl_close($ ch); ?>

  

我必须仍然输入URL才能发送邮件... https://bot.unpixelmas.com/bot.php

2 个答案:

答案 0 :(得分:1)

如果我们说你要输入的网址是<YOUR CUSTOM URL>,那么你可以制作一个PHP文件并使用如下代码:

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => '<YOUR CUSTOM URL>',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
));

$response = curl_exec($curl);

curl_close($curl);

?>

然后使用 crontab -e 命令您可以打开 cronjob 文件并将您的 PHP 文件添加为记录:

* * * * *  <PHP bin path> <your PHP source file path>

答案 1 :(得分:0)

如果URL始终相同,则应使用cronjob并将其设置为每分钟打开该URL。