php - 如何在 Telegram 机器人中使用 reply_to_message_id?
问题描述
我正在制作一个个人的小型 PHP Telegram Bot。但是有一个问题我想创建一个函数来帮助我通过回复他发送的消息来回复用户。就像当用户在 Bot 中发送消息时,它会将消息转发给我。我想通过回复他发送的消息来回复此用户。我在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);
}
推荐阅读
- r - 根据索引条件分配值矩阵
- selenium - “Chrome 无法启动:异常退出”
- python - Tkinter 的子窗口下存在无法解除父窗口?(Python 3.6.6,Windows 7 旗舰版)
- android - 查询获取 Json 的 vimeo 文件问题
- php - php与scilab的连接(FuzzyToolbox)
- matlab - 如何用元胞数组中的字符串替换 Matrix 值?
- python - Why the ValueError Exception is raised?
- java - 带实例的 CDI 条件 Bean
- python - 使用 CherryPy 和 gunicorn 安装多个应用程序
- flutter - 如何在 Flutter 中显示一段代码,保持所有缩进和换行符不变?