PHP telegram电报机器人 消息回声机器人

1、申请bot,获取token,设置webhook:

https://api.telegram.org/bot<token>/setwebhook?url=https://www.youdocument.com/bot/bot.php

复制连接到浏览器中,显示以下json表示设置成功

{"ok":true,"result":true,"description":"Webhook is set"}

微信截图_20240522115115.jpg

2、设置获取信息的监听脚本

<?php

function writeLog($log, $file = 'out')
{
    #生产环境写消息队列
    $of = fopen("{$file}-" . date("Y-m-d-H") . ".txt", 'a+');
    fwrite($of, $log . '<br>--------------end--------------' . date("Y-m-d H:i:s") . "\r\n");
    fclose($of);
}

function sendMessage($chatId, $message)
{
    $url = $GLOBALS[website] . "/sendMessage?chat_id=" . $chatId . "&text=" . urlencode($message);
    writeLog($url);
    url_get_contents($url);
}
function url_get_contents($Url)
{
    if (!function_exists('curl_init')) {
        die('CURL is not installed!');
    }
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $Url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $output = curl_exec($ch);
    curl_close($ch);
    return $output;
}


$botToken = 'token';
$website = "https://api.telegram.org/bot" . $botToken;
$request = file_get_contents('php://input');
$request = json_decode($request, true);
if (!$request) {
    // Some Error output (request is not valid JSON)
} elseif (!isset($request['update_id']) || !isset($request['message'])) {
    // Some Error output (request has not message)
} else {
    $chatId = $request["message"]["chat"]["id"];
    $message = $request["message"]["text"];
    writeLog($message);
    sendMessage($chatId,$message);
}

?>
把文件保存为bot.php服务器上,演示效果如下

把文件保存为bot.php服务器上,演示效果如下

微信截图_20240522120019.jpg

微信截图_20240522124259.jpg

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值