← Вернуться к списку тем

Цитирование в Телеграм бот 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
     ]);
}
ничего не работает(((

Ответы


  • Грачик Абдулошвили [09.02.2020 в 15:44 → Грачик Абдулошвили]
    вот так все заработало-

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