我如何在 Telegram 机器人中使用 reply_to_message_id?

How can i use the reply_to_message_id in Telegram bot?

我正在制作一个个人小型 PHP Telegram Bot。但是有一个问题我想做一个功能来帮助我通过回复他发送的消息来回复用户。就像当用户在 Bot 中发送消息时,它会将消息转发给 me.I 想要通过回复他发送的消息来回复该用户。 我在 Telegram Bot API 的帮助下尝试过,但没有成功。

这是有效的forwardMessage函数

//forward msg
function forwardMessage($adminid,$chatId, $message_id){
$url = $GLOBALS["website"]."/forwardMessage 
chat_id=".$adminid."&from_chat_id=".$chatId."&message_id=".$message_id."&parse_mode=HTML";
file_get_contents($url);      
}

我试图在 API 的帮助下创建一个 sendReply 函数,但它不起作用

//send reply
function sendReply($userId,$message, $reply_to_message_id){
$url = $GLOBALS["website"]."/sendMessage? 
chat_id=".$userId."&text=".$message."&reply_to_message_id=".$reply_to_message_id."&parse_mode=HTML";
file_get_contents($url);      
}

根据你的问题,我猜你想制作一个像 Livegram Bot 这样的系统。这是代码。如果您需要进一步的帮助,请在 Telegram @NinjaNaveen 上私信我 :)

 $admin = "xxxx" //Admin ID
    $from_id = $update->message->from->id; //User ID
    $text = $update->message->text; //Message sent by Admin
    $replytomessage = $update->message->reply_to_message //A Reply to a Message 
    $replytomessageUSERID = $update->message->reply_to_message->from->id; //User ID of the replied to message user
    $replytomessageID = $update->message->reply_to_message->message_id; //Replied to Message ID
    
    
    //////////////
    
    if (isset($replytomessage) && $from_id == $admin){ //If A Reply exists and the ID is Admin ID
    
    sendMessage($replytomessageUSERID, $text, $message_id);
    
    }

看来你的代码在声明值时有一些错误,但你可以试试这个功能:

function reply_to_message_id($chatId, $message, $message_id){
$url = $GLOBALS[website]."/sendMessage?chat_id=".$chatId."&text=".$message."&reply_to_message_id=".$message_id."&parse_mode=HTML&disable_web_page_preview=1";
file_get_contents($url);      
}