使用以下代码截图将内联查询发送到电报中的聊天(或频道或组),作为对另一个聊天中的"共享"按钮的回答 - 它似乎工作得很好......
我的内联机器人会创建一条消息并将其放入目标聊天中。
问题是:我没有收到消息 ID 或类似的返回,这允许我再次访问此消息以便能够修改它。
(目标是在多个频道之间同步内容,即使频道中没有机器人并且内容已通过"共享"内联按钮共享)。
即下面样本中的$res是 $res = {"ok":true,"result":true}
任何想法,能做什么?!
谢谢!
$botID = 'botabcdefghij1234567890';
$url = "https://api.telegram.org/$botID/answerInlineQuery";
$results = array(
array(
"type" => "article",
"id" => $iid,
"title" => $title,
"description" => $desc,
"reply_markup" => $reply, // some buttons here
"input_message_content" => array(
"message_text" => "$txt", // synchronized text
"parse_mode" => "HTML"
)
)
);
$post = array("inline_query_id" => $iid, "results" => json_encode($results));
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$res = curl_exec($ch);
curl_close($ch);
您可以在一个内联查询中发送多个答案,因此请在@BotFather中启用/setinlinefeedback
以接收消息 ID。
它将返回chosen_inline_result更新,然后使用inline_message_id
修改消息。