Цитирование в Телеграм бот PHP

← К списку тем

у меня телеграм бот реагирует на слова в чате-

    function processMessage($message) {
  // process incoming message
  $message_id = $message['message_id'];
  $chat_id = $message['chat']['id'];
  if (isset($message['text'])) {
    // incoming text message
    $text = $message['text'];
if (preg_match("/bБилетыb/ui", $text)){
apiRequest("sendMessage", array('chat_id' => $chat_id, "text" => 'Билеты есть на числа 1,2,3'));
    }
НО я хочу чтобы он отвечал не просто в чат, а именно цитированием (reply), изменил вод на вот такой-

    function processMessage($message) {
  // process incoming message
  $message_id = $message['message_id'];
  $chat_id = $message['chat']['id'];
  if (isset($message['text'])) {
    // incoming text message
    $text = $message['text'];
$update = json_decode(file_get_contents('php://input'));

if($update->message->text == 'мир'){
     bot('sendMessage',[
       'chat_id'=>$update->message->chat->id,
       'text'=>'Привет мир!',
       'reply_to_message_id' => $update->message->message_id
     ]);
}
ничего не работает(((
Грачик Абдулошвили 08.02.2020 в 23:21

Авторизуйтесь через Telegram, чтобы ответить.
Откройте бот @SiteAuthBot, нажмите кнопку Старт/Start. Следуйте инструкциям бота.


Ответы

  • вот так все заработало-

    if($update->message->text == 'мир'){
         apiRequest('sendMessage', [
           'chat_id'=>$update->message->chat->id,
           'text'=>urlencode('Привет мир!'),
           'reply_to_message_id' => $update->message->message_id
         ]);
    }
    Грачик Абдулошвили 09.02.2020 в 15:44
    • Грачик? уточни пжл!
      artem Sh 29.07.2020 в 11:28
      • Скорее всего его метод отправки сообщения использует GET - поэтому он применил функцию urlencode() для передачи текстовой части, так как не кодированная строка имеет пробелы и другие спецсимволы.
        iMakeBots 05.08.2020 в 12:50