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

TG机器人7个月前开发教程186

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服务器上,演示效果如下


微信截图_20240522120019.jpg

微信截图_20240522124259.jpg

标签: 机器人

相关文章

telegram自动回复机器人怎么搭建

telegram自动回复机器人怎么搭建

要搭建一个Telegram自动回复机器人,您可以按照以下步骤进行操作:1.创建Telegram Bot:首先,您需要在Telegram上创建一个Bot。打开Telegram应用或使用网页版,搜索并与B...

使用PHP创建telegram聊天机器人

使用PHP创建telegram聊天机器人

前言我使用的是ThinkPHP 框架,找了一个组件直接使用的。不过,如果自己写原生的对接,其实也很简单,本文我假设我的机器人名字是 abc_bot推荐阅读 https://core.telegram....

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。